24-云原生中间件之道-高磊
对系统性能有一定影响 可信计算 核心目标是保证系统和应用的完整性,从而保证系统按照设计预期所规 定的安全状态。尤其是像边缘计算BOX这种安全防护,根据唯一Hash值验 证,可以实现极为简单的边云接入操作,运行态并不会影响性能。 可信根一般是一个硬件,比如CPU或者TPM,将从 它开始构建系统所有组件启动的可信启动链,比 如UEFI、loader、OS、应用等,可以确保在被入侵 修改时的阻断行为,另外可以将可信启动链的 说说应用基本依赖的四大件:数据库、存储、中间件和大数据 下单服务 交易支付 支付网关 锁定库存 库存数据库 前台类目 商品查询 BFF 商品数据库 文件存储 logging MQ 交易数据库 大数据 营销分析 业务赋能 典型微服务应用 云原生应用 下单服务 交易支付 支付网关 锁定库存 库存数据库 前台类目 商品查询 BFF 商品数据库 文件存储 logging MQ 交易数据库 大数据 营销分析 云原生PaaS平台 支持企业低成本、大容量存储和查询各类日志、消息、交易、用户行为、画像等 结构化/半结构化数据,支持高吞吐量实时入库及数据实时查询,实现数据资源 智慧化运营。 优势 低成本存储: 支持PB级数据存储 高并发: 千亿数据实时分析 数据源 设备监控 传感器 轨迹数据 车联网 业务集群 物联网套件写入 云原生 DB 轨迹查 询|实时 监测 MR 云原 生DB 统计 分析 物联网数据存储和查询 将车联网数据、设备监0 码力 | 22 页 | 4.39 MB | 6 月前323-云原生观察性、自动化交付和 IaC 等之道-高磊
逻辑API:已有API的组 合,形成一个新API • 声明API:需要生成代 码框架(任何语言), 契约驱动研发 • BaaS API:数据库接口、 中间件接口外化成API • API门户:消费者可以 根据领域-能力查询到 想要的API。 • 自动生成SDK方便集成。 • 发行计划:向下兼容, 对比发布 • API文档:每一个API有 一个活档,指导集成。 形成市场,能力 互补 全生命周期API管理-2-Azure 发人员可以清晰的观测到整体分布式应用的详细运 行情况,为高精度运维提供可视化支撑 人工发展阶段:符合人分析问题的习惯 宏观->微观 精细化发展阶段:依靠数据赋能,加强可视化能力,进一步简化运维 监控告警 分布式跟踪链 日志查询 根因分析 响应动作 自动化 高端观察性 各维度统计分析 观察性 Prometheus Skywalking EFK Hadoop Spark Cortex ....... 传统交付方式的不足之处 统运维工作的领 域,但是我们需 要提升抽象程度 来简化传统运维 传统的基础设施管理方法是人工的手动处理模式,不仅仅效率低下,而且还有很 多人为操作的风险,比如误操作。同时,对基础设施的配置更改需要文档记录, 如果没有做好配置更改记录,可能带来另外一些重复性操作的风险。另外,随着 虚拟化和云平台的引入,企业的基础设施变得很复杂,也引入了很多工具和平台, 虽然能在基础设施的提供和管理上增加部分效率,但是对于环境的一致性保证以0 码力 | 24 页 | 5.96 MB | 6 月前3云原生安全威胁分析与能力建设白皮书(来源:中国联通研究院)
云原生安全威胁分析与能力建设白皮书 21 下面我们对威胁全景中攻击路径 1 至路径 5 的具体攻击手段,进行详细的 分析。 2.2 路径 1:镜像攻击 镜像是一个包含应用/服务运行所必需的操作系统和应用文件的集合,用于 创建一个或多个容器,容器和镜像之间紧密联系,镜像的安全性将会影响容器安 全。图 6 展示了攻击者利用镜像进行攻击的主要方式。 图 6 容器镜像安全风险 2.2.1 架构中一个常驻后台的 Docker 守护进程,用 于监听 REST API 请求并相应地执行容器操作,只有信任的用户才能向 Docker Daemon 发起请求。默认情况下,对于 Docker Daemon 的访问请求未经加密 和身份验证,攻击者可能通过伪造请求的方式,来达到欺骗 Docker Daemon 端执行危险的操作。 云原生安全威胁分析与能力建设白皮书 24 除此之外,攻击者可以通过暴露在互联网端且不安全的 的拒绝服 务。 计算型 DoS 攻击:Fork Bomb 是一类典型的针对计算资源的拒绝服务攻击 手段,其可通过递归方式无限循环调用 fork()系统函数,从而快速创建大量进程。 由于宿主机操作系统内核支持的进程总数有限,如果某个容器遭到了 Fork Bomb 攻击,那么就有可能存在由于短时间内在该容器内创建过多进程而耗尽宿 主机进程资源的情况,宿主机及其他容器就无法再创建新的进程。0 码力 | 72 页 | 2.44 MB | 1 年前3构建统一的云原生应用 可观测性数据平台
统一数据平台的落地思路及案例 构建统一的云原生应用可观测性数据平台 看云网更清晰 Simplify the growing complexity. MultistageCodec:采集 ➔ 存储 ➔ 查询 DeepFlow Agent DeepFlow Ingester ClickHouse tagint DeepFlow Controller tagint tagint tagint tagint tagint tagint …… tagint tagint 云API、K8s apiserver GUI Data …… ① 采集 ① 采集 ② 存储 ② 存储 ③ 查询 ③ 查询 看云网更清晰 Simplify the growing complexity. Stage-1:采集时的编码 • Controller同步云API、K8s apiserver • 将所有标签编码为Int group=iot owner=xian gyang …… 看云网更清晰 Simplify the growing complexity. Stage-3:查询时的编、解码 • Querier编码自定义标签的Filter和Group查询请求 • Filter:利用CK字典依据系统标签过滤 • Group:利用CK字典依据系统标签翻译 • Querier将系统标签解码为可读字符串 • 使用CK字典解码Int化的系统标签0 码力 | 35 页 | 6.75 MB | 1 年前3云原生图数据库解谜、容器化实践与 Serverless 应用实操
为什么我们需要⼀个专⻔的数据库? 什么是图? "以图结构、图语义来⽤点、边、属性来查询、表示存 储数据的数据库 wikipedia.org/wiki/graph_database 了解更多关于 什么是图数据库 什么是图数据库 为什么需要图数据库? 传统数据库 图数据库 图模型的结构 图语义的查询 性能 Nebula Graph! 如何发⾳:[ˈnebjələ], 它有哪些特点? Nebula Graph 介绍 了解更多 >>> ⽂档:Nebula 架构 官⽹:⽤户案例 ⼀个可靠的分布式、线性扩容、性能⾼效的图数据库 世界上唯⼀能够容纳千亿顶点和万亿条边,并提供毫秒级查询延时的图数据库解决⽅案 云原⽣时代的图数据库 容器化部署演进 Nebula Docker Nebula K8s Nebula Operator Nebula Operator 实现 Kubebuilder0 码力 | 47 页 | 29.72 MB | 1 年前3consul 命令行
dns-port:要侦听的DNS端口。这将覆盖默认端口8600.这在Consul 0.7及更高版本中可用。 ● domain:默认情况下,Consul在“consul”中响应DNS查询。域。此标志可用于更改该域。假定 域中的所有查询都由Consul处理,不会以递归方式解析。 ● enable-script-checks:这可以控制是否在此代理上启用了执行脚本的运行状况检查,默认为false 营商必须选0 码力 | 5 页 | 346.62 KB | 1 年前31.3 MOSN 在云原生的探索及实践
Filter 高 低 中 N MOSN(GoLang) Extension 高 较高 低 活跃 对比:MOE 相比 ext-proc 无需跨进程 gRPC,性能高,易管理; 相比 WASM 无需网络 IO 操作转换成本;相比 Lua 生态好、能 复用现有的 SDK,对于处理上层业务更合适 扩展方案评估 Envoy 社区讨论 MOE 背景介绍 — 方案评估 结论 综合稳定性、性能、成本、社区生态等因素评估,MOE API • Filter manager MOE 方案介绍 — TraceID 事例 相关问题点 Envoy 和 MOSN 如何交互(1、2、 4、5) 内存如何管理(2、4) 阻塞操作处理(2) GMP 中 P 资源问题(3) 服务发现如何兼容(1、2) 如何 Debug recover 失效如何处理 …… MOE 方案介绍 — MOSN 和 Envoy 如何交互 MOSN 执行一些 操作,其处理结果返回给 Envoy,Envoy 直接使用 GoLang 返回的内存安全吗? 相比 WASM、Lua,MoE 内存 Zero Copy MOE 方案介绍 — 阻塞操作如何处理 对于纯计算(非阻塞)或请求链路 中的旁路阻塞操作,按照正常流 程执行即可 Envoy 是异步非阻塞事件模型, 那 MOSN(GoLang) filter 中存在阻 塞操作需要如何处理?0 码力 | 36 页 | 35.61 MB | 1 年前301. MOSN 高性能网络扩展实践 - 王发康
Filter 高 低 中 N MOSN(GoLang) Extension 高 较高 低 活跃 对比:MoE 相比 ext-proc 无需跨进程 gRPC,性能高;相比 WASM 无需 网络 IO 操作转换成本;相比 Lua 生态好、能复用现有的 SDK,对于上层 业务处理更合适 扩展方案评估 Envoy 社区讨论 MoE 背景介绍 — 方案分析 结论 综合稳定性、性能、成本、社区生态等因素评估,MoE Data Plane MoE 2 4 3 Request Rest Http 相关问题点 Envoy 和 MOSN 如何交互(1、2、4、5) 内存如何管理(2、4) 阻塞操作处理(2) GMP 中 P 资源问题(3) 服务发现如何兼容(1、2) 如何 Debug recover 失效如何处理 …… MoE 方案介绍 — MOSN 和 Envoy如何交互 MoE 方案介绍 — MOSN 和 Envoy 内存如何管理 【请求链路】将 Envoy 中的请求信息拷贝一 份传递给 MOSN ? 需要额外内存分配和拷 贝? 【响应链路】请求到 MOSN 执行一些操作, 其处理结果返回给 Envoy,Envoy 直接使用 GoLang 返回的内存安全吗? Headers Envoy MOSN CGO Go extension API Alloc0 码力 | 29 页 | 2.80 MB | 1 年前322-云原生的缘起、云原生底座、PaaS 以及 Service Mesh 等之道-高磊
从支持应用不同维度发展,最终走在了一起 2010年WSO2提出 类云原生的概念 云原生应用相比传统应用的优势 低成本 高敏捷 高弹性 云原生应用 传统应用 部署可预测性 可预测性 不可预测 抽象性 操作系统抽象 依赖操作系统 弹性能力 弹性调度 资源冗余多 缺乏扩展能力 开发运维模式 DevOps 瀑布式开发 部门孤立 服务架构 微服务解耦架构 单体耦合架构 恢复能力 自动化运维 快速恢复 手工运维 恢复缓慢 标准化能力-分布式操作系统核心-容器服务 向上提供抽象化自愈IT运营视角 高效稳定应用资源供给 价值主张 架构 云原生底座=控制器+调度器的组合+Docker=根据环境的变化而动+基于封装 一致性的大规模分发 服务编排基本原理: • 以度量为基础,以NodeSelector算法来 决定在哪儿部署容器服务 • 运行时以期望与实际的差别进行动态调 整到期望的状态 标准化能力-分布式操作系统核心-容器服务-基本技术原理 拟机、物理,多云)的中间抽 象层,因为应用很复杂,很容 易陷入差异化定制市场,抽象 层的市场范围会更广,作为开 源平台,更容易成为通用性市 场选择。通用性才能做到普适 定制化能力,才能成为云原生 的操作系统。 标准化能力-分布式操作系统核心-容器服务-Operator API Server Kubectl Controller Pod,Deploymen t,etc. API Server Kubectl0 码力 | 42 页 | 11.17 MB | 6 月前302. Kubevela 以应用为中心的渐进式发布 - 孙健波
AppRevision v1 AppRevision v2 AppRevision v3 ① 创建 ② 第一次更新 ③ 第二次更新 发布状 态机 发布单模式下 Application 的更新不 再实际操作资源,只生成版本快照 AppRollout-1 开始 暂停 继续 成功 AppRollout-2 新的发布使用新的发布单对象 K8s Resource v1 -> v2 cluster2 AppRevision v1 AppRevision v2 AppRevision v3 ① 创建 ② 第一次更新 ③ 第二次更新 多版本模式下 Application 的更新不 再实际操作资源,只生成版本快照 控制器 循环 Application Deployment K8s Resource v1 K8s Resource v2 K8s Resource v3 指定不同版本的流量配比 多环境/多集群/多版本 --渐进式发布 AppRevision v1 AppRevision v2 AppRevision v3 多环境模式下 Application 的更新不 再实际操作资源,只生成版本快照 控制器 循环 Application Deployment K8s Resource v1 K8s Resource v2 K8s Resource v3 Application0 码力 | 26 页 | 9.20 MB | 1 年前3
共 17 条
- 1
- 2