 Apache SkyWalking 在 Service Mesh 中的可观察性应用Apache SkyWalking 在 Service Mesh 中的可观察性应用 高洪涛 Tetrate 创始工程师Who 高洪涛 美国S ervice Mesh 服务商 Tetrate 创始工程师。原华为软件开发云技术专家,对云原 生产品有丰富的设计,研发与实施经验。对分布式数据库,容器调度,微服务, ServicMesh 等技术有深入的了解。 目前为 Apache ShardingSphere 端点 URL,RPC,函数 Endpoint 观察维度 9/28遇到的挑战 /02 Service Mesh 场景下 SkyWalking 面临的挑战 ( Istio ) 10/28可观测性 11/28Istio 1.5 架构图 12/28挑战1:技术路线多变 基于 Log 成熟、但性能低 Mixer 基于 Metric 高效、但技术门槛高 Mixerless 13/28挑战2:无0 码力 | 29 页 | 1.38 MB | 6 月前3 Apache SkyWalking 在 Service Mesh 中的可观察性应用Apache SkyWalking 在 Service Mesh 中的可观察性应用 高洪涛 Tetrate 创始工程师Who 高洪涛 美国S ervice Mesh 服务商 Tetrate 创始工程师。原华为软件开发云技术专家,对云原 生产品有丰富的设计,研发与实施经验。对分布式数据库,容器调度,微服务, ServicMesh 等技术有深入的了解。 目前为 Apache ShardingSphere 端点 URL,RPC,函数 Endpoint 观察维度 9/28遇到的挑战 /02 Service Mesh 场景下 SkyWalking 面临的挑战 ( Istio ) 10/28可观测性 11/28Istio 1.5 架构图 12/28挑战1:技术路线多变 基于 Log 成熟、但性能低 Mixer 基于 Metric 高效、但技术门槛高 Mixerless 13/28挑战2:无0 码力 | 29 页 | 1.38 MB | 6 月前3
 Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?• 安装部署 • 配置 • 维护Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Mixer v1 架构的优点 • 集中式服务: • 提高基础设施后端的可用性 • 为前提条件检查结果提供集群级别的全局2级缓存 • 灵活的适配器模型,使其以下操作变得简 单: • 运维添加、使用和删除适配器 • 开发人员创建新的适配器(超过20个适配器)Part 1:Serv 进程外适配器进一步增加了延迟 • 授权和认证功能是天然适合mixer pipeline的,但是由于mixer 设计 的延迟和SPOF(单点故障)特性,导致直接在Envoy中实现 (Envoy SDS) • 复杂性 • Mixer使用一组称为模板的核心抽象,来描述传递给适配器的数据。 这些包括“metrics”,“logentry”,“tracepan”等。这些抽 象与后端想要消费的数据不匹配,导致运维需要编写一些手动配置, complexity. Mixer-In-Proxy/Mixer合并进Proxy。 Mixer 将用C ++重写并直接嵌入到Envoy。 将不再有任何独立的 Mixer 服务。 这将提高性能 并降低运维复杂性。Part 2:ServiceMesh灵魂拷问二:性能有了,架构怎么办? 性能有了,架构怎么办? Mixer合并到Sidecar之后Part 2:ServiceMesh灵魂拷问二:性能有了,架构怎么办?0 码力 | 43 页 | 2.90 MB | 6 月前3 Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?• 安装部署 • 配置 • 维护Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Mixer v1 架构的优点 • 集中式服务: • 提高基础设施后端的可用性 • 为前提条件检查结果提供集群级别的全局2级缓存 • 灵活的适配器模型,使其以下操作变得简 单: • 运维添加、使用和删除适配器 • 开发人员创建新的适配器(超过20个适配器)Part 1:Serv 进程外适配器进一步增加了延迟 • 授权和认证功能是天然适合mixer pipeline的,但是由于mixer 设计 的延迟和SPOF(单点故障)特性,导致直接在Envoy中实现 (Envoy SDS) • 复杂性 • Mixer使用一组称为模板的核心抽象,来描述传递给适配器的数据。 这些包括“metrics”,“logentry”,“tracepan”等。这些抽 象与后端想要消费的数据不匹配,导致运维需要编写一些手动配置, complexity. Mixer-In-Proxy/Mixer合并进Proxy。 Mixer 将用C ++重写并直接嵌入到Envoy。 将不再有任何独立的 Mixer 服务。 这将提高性能 并降低运维复杂性。Part 2:ServiceMesh灵魂拷问二:性能有了,架构怎么办? 性能有了,架构怎么办? Mixer合并到Sidecar之后Part 2:ServiceMesh灵魂拷问二:性能有了,架构怎么办?0 码力 | 43 页 | 2.90 MB | 6 月前3
 Service Mesh的实践分享HTTP多语言服务端接入 • Registry Agent • sidecar • 注册代理 • 健康检查 • 服务端受限于Proxy支持的协 议(目前只支持HTTP 1.1) Local Proxy Web Server Service Registry API Gateway 健康检查 服务注册 Registry agent 服务发现 HTTP/JSON HTTP/JSON容器化 • Proxy地址文件 • Mount到所有pod • 客户端容器监听文件,根据地 址文件找Proxy • 切换地址到remote proxy,轻 易实现优雅退出和滚动升级 • 增强隔离性 • Local Proxy被pod共享 • 自保护,对来源方限流和流量 转移 • 资源适配 • 根据宿主机的硬件配置定制不 同资源配置的Daemonset Local Proxy Pod 服务注册agent • 服务端的一些治理、trace、鉴权功能通过代码插 件的方式实现 • 治理效果考虑 • 服务端嵌入治理功能可以让治理效果更好,如提 供主动GC、线程池隔离等 • 因为是内部项目,优雅性和治理效果之间,选择 了后者 App Local Proxy OSP OSP client App Envoy App EnvoyClient端不基于IPTable劫持 • Istio的设计很美好,但现实总是很残酷0 码力 | 30 页 | 4.80 MB | 6 月前3 Service Mesh的实践分享HTTP多语言服务端接入 • Registry Agent • sidecar • 注册代理 • 健康检查 • 服务端受限于Proxy支持的协 议(目前只支持HTTP 1.1) Local Proxy Web Server Service Registry API Gateway 健康检查 服务注册 Registry agent 服务发现 HTTP/JSON HTTP/JSON容器化 • Proxy地址文件 • Mount到所有pod • 客户端容器监听文件,根据地 址文件找Proxy • 切换地址到remote proxy,轻 易实现优雅退出和滚动升级 • 增强隔离性 • Local Proxy被pod共享 • 自保护,对来源方限流和流量 转移 • 资源适配 • 根据宿主机的硬件配置定制不 同资源配置的Daemonset Local Proxy Pod 服务注册agent • 服务端的一些治理、trace、鉴权功能通过代码插 件的方式实现 • 治理效果考虑 • 服务端嵌入治理功能可以让治理效果更好,如提 供主动GC、线程池隔离等 • 因为是内部项目,优雅性和治理效果之间,选择 了后者 App Local Proxy OSP OSP client App Envoy App EnvoyClient端不基于IPTable劫持 • Istio的设计很美好,但现实总是很残酷0 码力 | 30 页 | 4.80 MB | 6 月前3
 蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘ü编码:对请求数据进行编码并根据控制指令发送数据 ü解码:对IO数据进行解码并通过扩展机制通知订阅方 •定义扩展机制通知解码事件STREAMING 6 Ø定义Stream模型 ü 向上确保协议行为一致性 ü 为网络协议请求/响应提供可编程的抽象载体 ü 考虑PING-PONG,PIPELINE,分帧STREAM三种典型流程特征 Ø定义Stream生命周期,核心事件 Ø定义Stream层编/解码核心接口 Ø对于满足请求Stream池化的需求 Ø需处理上层传入的状态事件PROXY 7 Ø基于Stream抽象提供多协议转发能力 Ø执行Stream扩展Filters Ø提供可扩展的路由寻址能力 Ø提供可扩展的后端管理,负载均衡,健康检查能力 Ø维护上/下游核心指标转发流程 8 IO Read Codec Stream Route / LB Codec Stream IO write F1 F2 F1 F2 F1 F2 host 路由 •支持 headers/url/prefix 路由 •支持基于 host metadata 的 subset 路 由 •支持重试 后端管理 •基础负载均衡算法 •主动健康检查 •Subset 负载策略Highlights 2 ØX-Protocol: 支持 RPC on HTTP2的通用方案(完善中) Ø支持平滑升级中协议无关存量链接迁移 Ø支持指定 / 更新 Downstream0 码力 | 44 页 | 4.51 MB | 6 月前3 蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘ü编码:对请求数据进行编码并根据控制指令发送数据 ü解码:对IO数据进行解码并通过扩展机制通知订阅方 •定义扩展机制通知解码事件STREAMING 6 Ø定义Stream模型 ü 向上确保协议行为一致性 ü 为网络协议请求/响应提供可编程的抽象载体 ü 考虑PING-PONG,PIPELINE,分帧STREAM三种典型流程特征 Ø定义Stream生命周期,核心事件 Ø定义Stream层编/解码核心接口 Ø对于满足请求Stream池化的需求 Ø需处理上层传入的状态事件PROXY 7 Ø基于Stream抽象提供多协议转发能力 Ø执行Stream扩展Filters Ø提供可扩展的路由寻址能力 Ø提供可扩展的后端管理,负载均衡,健康检查能力 Ø维护上/下游核心指标转发流程 8 IO Read Codec Stream Route / LB Codec Stream IO write F1 F2 F1 F2 F1 F2 host 路由 •支持 headers/url/prefix 路由 •支持基于 host metadata 的 subset 路 由 •支持重试 后端管理 •基础负载均衡算法 •主动健康检查 •Subset 负载策略Highlights 2 ØX-Protocol: 支持 RPC on HTTP2的通用方案(完善中) Ø支持平滑升级中协议无关存量链接迁移 Ø支持指定 / 更新 Downstream0 码力 | 44 页 | 4.51 MB | 6 月前3
 Service Mesh结合容器云平台的思考和实践• 易于访问的外围(负载均衡) • 服务注册和发现 致富问题 • 认证和授权 • 智能路由 • 流量管理 • 服务降级 • … • 微服务拆分原则 • 业务API设计 • 数据一致性保证 • 可扩展性考虑 • …Kubernetes对于微服务的支撑 功能列表 详情 快速资源分配 容器编排和调度 服务部署&弹性伸缩 Deployment 服务注册&服务发现 Service概念和分布式DNS • 服务模型 • 配置模型 • 负载均衡 • 智能路由(灰度、蓝绿) • 流量管理(超时、重试、熔断) • 故障处理 • 故障注入 • … Mixer • 前提条件检查:安全认证,黑白名单, ACL检查 • 限流管理 • 遥测报告:日志监控 控制平面 数据平面 Istio-Auth • 服务间认证 • 终端用户认证Istio的核心组件 • Envoy 是一个高性能 是一个高性能轻量级代理,它掌控了service的入口流量和出口流量,它提供了很多内置功能,如动态负 载服务发现、负载均衡、TLS终止、HTTP/2 & gRPC流量代理、熔断、健康检查等功能。 • Mixer 翻译过来是混音器,Mixer负责在整个Service Mesh中实施访问控制和使用策略。Mixer是一个可扩展组 件,内部提供了多个模块化的适配器(adapter)。 • Pilot 翻译过0 码力 | 28 页 | 3.09 MB | 6 月前3 Service Mesh结合容器云平台的思考和实践• 易于访问的外围(负载均衡) • 服务注册和发现 致富问题 • 认证和授权 • 智能路由 • 流量管理 • 服务降级 • … • 微服务拆分原则 • 业务API设计 • 数据一致性保证 • 可扩展性考虑 • …Kubernetes对于微服务的支撑 功能列表 详情 快速资源分配 容器编排和调度 服务部署&弹性伸缩 Deployment 服务注册&服务发现 Service概念和分布式DNS • 服务模型 • 配置模型 • 负载均衡 • 智能路由(灰度、蓝绿) • 流量管理(超时、重试、熔断) • 故障处理 • 故障注入 • … Mixer • 前提条件检查:安全认证,黑白名单, ACL检查 • 限流管理 • 遥测报告:日志监控 控制平面 数据平面 Istio-Auth • 服务间认证 • 终端用户认证Istio的核心组件 • Envoy 是一个高性能 是一个高性能轻量级代理,它掌控了service的入口流量和出口流量,它提供了很多内置功能,如动态负 载服务发现、负载均衡、TLS终止、HTTP/2 & gRPC流量代理、熔断、健康检查等功能。 • Mixer 翻译过来是混音器,Mixer负责在整个Service Mesh中实施访问控制和使用策略。Mixer是一个可扩展组 件,内部提供了多个模块化的适配器(adapter)。 • Pilot 翻译过0 码力 | 28 页 | 3.09 MB | 6 月前3
 Service Mesh Meetup #3 深圳站feature/new_branch 会合并到 develop; • 5. 部署负责人将 develop 分支代码部署到测试环境,然后再通知 QA 测试;(脚本或者人工)有什么问题? • 效率低 • 没有代码检查; • 没有自动化测试(包括单元测试); • 沟通成本高 • 开发需要通知负责人、测试、产品等;(而且是每次构建/部署 都需要) • 依赖多较好的开发流程(流程化、自动化) • 1. 开启一个新的 kubernetes-examples什么是 ServiceMesh • 服务网格(Service Mesh)这个术语通常用于描述构成这些应用程序 的微服务网络以及应用之间的交互。随着规模和复杂性的增长,服 务网格越来越难以理解和管理。 • 它的需求包括服务发现、负载均衡、故障恢复、指标收集和监控以 及通常更加复杂的运维需求,例如 A/B 测试、金丝雀发布、限流、 访问控制和端到端认证等。什么是 8 在 kubernetes 上支持的不好(RPC error); • .drone.yml not .drone.yaml • Failed to activate your repository(检查网络,以及代理配置) • plugins: • drone-kubernetes, 需要将 kubernetes token base64 解码(否则报错:Unauthorized) • Jenkins0 码力 | 45 页 | 18.62 MB | 6 月前3 Service Mesh Meetup #3 深圳站feature/new_branch 会合并到 develop; • 5. 部署负责人将 develop 分支代码部署到测试环境,然后再通知 QA 测试;(脚本或者人工)有什么问题? • 效率低 • 没有代码检查; • 没有自动化测试(包括单元测试); • 沟通成本高 • 开发需要通知负责人、测试、产品等;(而且是每次构建/部署 都需要) • 依赖多较好的开发流程(流程化、自动化) • 1. 开启一个新的 kubernetes-examples什么是 ServiceMesh • 服务网格(Service Mesh)这个术语通常用于描述构成这些应用程序 的微服务网络以及应用之间的交互。随着规模和复杂性的增长,服 务网格越来越难以理解和管理。 • 它的需求包括服务发现、负载均衡、故障恢复、指标收集和监控以 及通常更加复杂的运维需求,例如 A/B 测试、金丝雀发布、限流、 访问控制和端到端认证等。什么是 8 在 kubernetes 上支持的不好(RPC error); • .drone.yml not .drone.yaml • Failed to activate your repository(检查网络,以及代理配置) • plugins: • drone-kubernetes, 需要将 kubernetes token base64 解码(否则报错:Unauthorized) • Jenkins0 码力 | 45 页 | 18.62 MB | 6 月前3
 蚂蚁金服网络代理演进之路OpenSSL Committer无线移动战役 操作响应慢 操作无响应 Push没消息 Push消息慢 海外消息慢 收发图片慢 建连时长 建连成功率 链路稳定性 链路一致性 RPC错误率 Push实时性 海外RTT 数据效率 快 速 稳 定 高 效 移动客户痛点 性能指标 线下支付 大促 国际支付咻一咻与敬业福咻一咻的挑战 亿级用户快速进入 亿级用户同时点击 • 流量镜像,RBAC鉴权SOFAMosn能力扩展 心跳检查在Service Mesh场景下网络代理有着不同于接入层的挑战 • 无论应用是否接入Mesh,接入了多少Mesh,都需要保证可正常处理请求,做到可 灰度、可回滚的兼容,平滑迁移 • 通用的框架能力(SOFAMosn/Envoy)无法直接满足复杂的、定制的业务能力,需 要进行针对性的扩展实现 • 需要融合主站已有的应用体系,如注册中心、配置中心等,这些也需要扩展实现0 码力 | 46 页 | 19.93 MB | 6 月前3 蚂蚁金服网络代理演进之路OpenSSL Committer无线移动战役 操作响应慢 操作无响应 Push没消息 Push消息慢 海外消息慢 收发图片慢 建连时长 建连成功率 链路稳定性 链路一致性 RPC错误率 Push实时性 海外RTT 数据效率 快 速 稳 定 高 效 移动客户痛点 性能指标 线下支付 大促 国际支付咻一咻与敬业福咻一咻的挑战 亿级用户快速进入 亿级用户同时点击 • 流量镜像,RBAC鉴权SOFAMosn能力扩展 心跳检查在Service Mesh场景下网络代理有着不同于接入层的挑战 • 无论应用是否接入Mesh,接入了多少Mesh,都需要保证可正常处理请求,做到可 灰度、可回滚的兼容,平滑迁移 • 通用的框架能力(SOFAMosn/Envoy)无法直接满足复杂的、定制的业务能力,需 要进行针对性的扩展实现 • 需要融合主站已有的应用体系,如注册中心、配置中心等,这些也需要扩展实现0 码力 | 46 页 | 19.93 MB | 6 月前3
 大规模微服务架构下的Service Mesh探索之路研? 起点:开源 起点:自研 全新打造;或依托现有SDK Fork,增强,扩展,定制,集成 回馈社区,反哺开源 维持版本更新,同步升级 未来肯定会开源 可扩展和可定制化是必备的 可 控 性 社 区 支 持 技术输出 内部落地 如何让开源产品接受我们的改动? 如何让社区和客户认可我们的产品?开源方案选择之第一代Service Mesh Linkerd • 无控制平面 • Scala编写,基于JVM资源消耗大 其他尽量优化为异步或者批量Istio的解决方案:添加Mixer Cache ü 缓存的工作方式: • Sidecar 中包含本地缓存,一部分的前置 检查可以通过缓存来进行 • 另外,Sidecar 会把待发送的Report数据 进行缓冲,这样可能在多次请求之后才调 用一次 Mixer • 前置检查和配额是同步的 • Report数据上送是使用 fire-and-forget 模式异步完成的 Mixer CacheMixer0 码力 | 37 页 | 7.99 MB | 6 月前3 大规模微服务架构下的Service Mesh探索之路研? 起点:开源 起点:自研 全新打造;或依托现有SDK Fork,增强,扩展,定制,集成 回馈社区,反哺开源 维持版本更新,同步升级 未来肯定会开源 可扩展和可定制化是必备的 可 控 性 社 区 支 持 技术输出 内部落地 如何让开源产品接受我们的改动? 如何让社区和客户认可我们的产品?开源方案选择之第一代Service Mesh Linkerd • 无控制平面 • Scala编写,基于JVM资源消耗大 其他尽量优化为异步或者批量Istio的解决方案:添加Mixer Cache ü 缓存的工作方式: • Sidecar 中包含本地缓存,一部分的前置 检查可以通过缓存来进行 • 另外,Sidecar 会把待发送的Report数据 进行缓冲,这样可能在多次请求之后才调 用一次 Mixer • 前置检查和配额是同步的 • Report数据上送是使用 fire-and-forget 模式异步完成的 Mixer CacheMixer0 码力 | 37 页 | 7.99 MB | 6 月前3
 Service Mesh 在蚂蚁金服生产级安全实践格式封装身份信息(service account)向Citadel Agent请求证书  Citadel Agent 会将Sidecar 的请求包装成CSR 请求Citadel ,Citadel 会先检查缓存中是否已有证书,如果不 存在的话,会基于Citadel 启动时配置的二级ROOTCA签发证书基于 Secret Discovery Service Sidecar证书管理方案 Istio With 中增加一个安全 Sidecar,以API接口的形式为APP及其他Sidecar 提供基础的身 份颁发、身份验证功能  解耦应用的业务逻辑与认证授权逻辑,减少开发量;  提供密码学安全的认证授权逻辑,提高安全性;  全网统一的认证授权方式,去凭证,减少攻击面;  为每个应用建立唯一的全局应用身份标识,提供服务调用全链路溯源能力,及可问责能 力(accountability)。使用可信身份服务构建敏感数据下发通道 实现 Namespace + Service 的灰度能力不能满足 蚂蚁金服生产落地的要求,需要具备单机灰度、回滚能力。 借鉴社区 SourceLabel 和 Sidecar CRD 的设计思路,创造性提出具备“正交”组合能力的ScopeConfig 方 案 ScopeConfig 方案是通过label selector 能力选择指定范围内(批量 or 单实例)的Pod 实例,同时关 联社区现有C0 码力 | 19 页 | 808.60 KB | 6 月前3 Service Mesh 在蚂蚁金服生产级安全实践格式封装身份信息(service account)向Citadel Agent请求证书  Citadel Agent 会将Sidecar 的请求包装成CSR 请求Citadel ,Citadel 会先检查缓存中是否已有证书,如果不 存在的话,会基于Citadel 启动时配置的二级ROOTCA签发证书基于 Secret Discovery Service Sidecar证书管理方案 Istio With 中增加一个安全 Sidecar,以API接口的形式为APP及其他Sidecar 提供基础的身 份颁发、身份验证功能  解耦应用的业务逻辑与认证授权逻辑,减少开发量;  提供密码学安全的认证授权逻辑,提高安全性;  全网统一的认证授权方式,去凭证,减少攻击面;  为每个应用建立唯一的全局应用身份标识,提供服务调用全链路溯源能力,及可问责能 力(accountability)。使用可信身份服务构建敏感数据下发通道 实现 Namespace + Service 的灰度能力不能满足 蚂蚁金服生产落地的要求,需要具备单机灰度、回滚能力。 借鉴社区 SourceLabel 和 Sidecar CRD 的设计思路,创造性提出具备“正交”组合能力的ScopeConfig 方 案 ScopeConfig 方案是通过label selector 能力选择指定范围内(批量 or 单实例)的Pod 实例,同时关 联社区现有C0 码力 | 19 页 | 808.60 KB | 6 月前3
 严选 ServiceMesh 实践服务提供方(Server) 服务注册与发现 注册发现:基于 Consul √ 调用控制 协议支持:HTTP 1.X/2.X,可扩展至 TCP √ 路由控制:提供简单的路由能力 √ 负载均衡:支持 RR、权重、一致性 Hash 等 √ 流量复制:不提供 × 故障转移:继承 Nginx 的 Failover 机制 √ 安全 访问控制:主要依靠中间件 × 中间件 治理控制 熔断降级:主要依靠中间件 中间件 调用控制 协议支持:HTTP 1.X/2.X,GRPC,WebSocket,Dubbo, Thrift √ 路由控制:静态路由、动态路由、流量染色、分流控制等 √ 负载均衡:支持 RR、权重、一致性 Hash 等 √ 流量复制:Envoy 自带 √ 故障转移 √ 安全 访问控制:RBAC vs Mixer √ 治理控制 熔断降级 √ 限流 √ 中间件 资源隔离 √ 故障注入 √ com/envoyproxy/envoy/issues/9083 • Mixer 性能陷阱 • 如打开 Mixer 的策略执行功能,每一次调用 Envoy 都会同步调用 Mixer 进行一次策略检查, 导致性能下降的非常迅速 • 社区也已经意识到并着手进行优化 • 作为 Mixer 策略执行的替代品, Istio 的 RBAC 也是可以满足一部分功能的,比如服务白名 单我们就是通过 RBAC0 码力 | 25 页 | 2.07 MB | 6 月前3 严选 ServiceMesh 实践服务提供方(Server) 服务注册与发现 注册发现:基于 Consul √ 调用控制 协议支持:HTTP 1.X/2.X,可扩展至 TCP √ 路由控制:提供简单的路由能力 √ 负载均衡:支持 RR、权重、一致性 Hash 等 √ 流量复制:不提供 × 故障转移:继承 Nginx 的 Failover 机制 √ 安全 访问控制:主要依靠中间件 × 中间件 治理控制 熔断降级:主要依靠中间件 中间件 调用控制 协议支持:HTTP 1.X/2.X,GRPC,WebSocket,Dubbo, Thrift √ 路由控制:静态路由、动态路由、流量染色、分流控制等 √ 负载均衡:支持 RR、权重、一致性 Hash 等 √ 流量复制:Envoy 自带 √ 故障转移 √ 安全 访问控制:RBAC vs Mixer √ 治理控制 熔断降级 √ 限流 √ 中间件 资源隔离 √ 故障注入 √ com/envoyproxy/envoy/issues/9083 • Mixer 性能陷阱 • 如打开 Mixer 的策略执行功能,每一次调用 Envoy 都会同步调用 Mixer 进行一次策略检查, 导致性能下降的非常迅速 • 社区也已经意识到并着手进行优化 • 作为 Mixer 策略执行的替代品, Istio 的 RBAC 也是可以满足一部分功能的,比如服务白名 单我们就是通过 RBAC0 码力 | 25 页 | 2.07 MB | 6 月前3
共 28 条
- 1
- 2
- 3













