 阿里巴巴超大规模神龙裸金属 Kubernetes 集群运维实践Kubernetes 集群运维实践 关注“阿里巴巴云原生”公众号 回复 1124 获取 PPT自我介绍 •嵌入式、微服务框架 •2017 年加入阿里巴巴,负责阿 里集团数十万集群节点规模化运 维管理系统的研发工作 •2019 年参与集团全面上云项目 并经历了整体架构的云原生升级 演进,稳定支撑双11峰值流量分享内容 • 阿里全站上云 • 神龙 (what & why) • 规模化集群运维实践 支持二次虚拟化:使多样虚拟化技术 (Kata, Firecracker 等) 的探索和创新成为 可能 • ASI (k8s) + 容器 (runc / runv / kata / ..) + 神龙 = 阿里云原生化 的最佳组合 • 最大的电商平台之一,并池最佳化资源利用率 • 大规模混部、优先级差异化提升资源使用效率 • Alibaba Serverless Infrastructure (ASI) 的基石上云效率提升 天基系统 CMDB 安全审计 单机监控 ASI 平台 kubelet/Pouch CI/CD k8s extended Service Mesh 安全容器 运维管控 在离线混部 额度管控 监控体系 多租隔离 上层业务 集 团 业 务运维挑战 • 规模大 • 集群规模大 (数十个集群),节点数量多 (数十万节点) • 业务线多、应用数量多、应用类型复杂 (有状态、无状态、多语言)0 码力 | 21 页 | 7.81 MB | 6 月前3 阿里巴巴超大规模神龙裸金属 Kubernetes 集群运维实践Kubernetes 集群运维实践 关注“阿里巴巴云原生”公众号 回复 1124 获取 PPT自我介绍 •嵌入式、微服务框架 •2017 年加入阿里巴巴,负责阿 里集团数十万集群节点规模化运 维管理系统的研发工作 •2019 年参与集团全面上云项目 并经历了整体架构的云原生升级 演进,稳定支撑双11峰值流量分享内容 • 阿里全站上云 • 神龙 (what & why) • 规模化集群运维实践 支持二次虚拟化:使多样虚拟化技术 (Kata, Firecracker 等) 的探索和创新成为 可能 • ASI (k8s) + 容器 (runc / runv / kata / ..) + 神龙 = 阿里云原生化 的最佳组合 • 最大的电商平台之一,并池最佳化资源利用率 • 大规模混部、优先级差异化提升资源使用效率 • Alibaba Serverless Infrastructure (ASI) 的基石上云效率提升 天基系统 CMDB 安全审计 单机监控 ASI 平台 kubelet/Pouch CI/CD k8s extended Service Mesh 安全容器 运维管控 在离线混部 额度管控 监控体系 多租隔离 上层业务 集 团 业 务运维挑战 • 规模大 • 集群规模大 (数十个集群),节点数量多 (数十万节点) • 业务线多、应用数量多、应用类型复杂 (有状态、无状态、多语言)0 码力 | 21 页 | 7.81 MB | 6 月前3
 严选 ServiceMesh 实践流量复制:不提供 × 故障转移:继承 Nginx 的 Failover 机制 √ 安全 访问控制:主要依靠中间件 × 中间件 治理控制 熔断降级:主要依靠中间件 中间件 限流:速率限制 √ 中间件 资源隔离:主要依靠中间件 中间件 故障注入:不提供 × 超时控制、重试、重写、重定向等:继承 Nginx 的 timeout 机制 √ 监控/故障诊断 链路追踪:主要依靠中间件 APM APM 概念正式提出9/24 云原生 Service Mesh 框架 - Istio • 由 Google,IBM 和 Lyft 联合开发,Go 语 言,与 K8s 一脉相承且深度融合 • K8s 提供了部署、升级和有限的运行流量管 理能力 • Istio 补齐了 K8s 在微服务治理上的短板 (限流、熔断、降级、分流等) • Istio 以 Sidecar 的形式运行在 Pod 中, 自动注入,自动接管流量,部署过程对业务 - 服务治理能力 – 基于Istio+Envoy 类型 功能 能力提供方 服务调用方(Client) 服务提供方(Server) 服务注册与发现 注册发现:云外基于 Consul,云内基于 K8s 默认的 ETCD √ 调用控制 协议支持:HTTP 1.X/2.X,GRPC,WebSocket,Dubbo, Thrift √ 路由控制:静态路由、动态路由、流量染色、分流控制等 √ 负载均衡:支持0 码力 | 25 页 | 2.07 MB | 6 月前3 严选 ServiceMesh 实践流量复制:不提供 × 故障转移:继承 Nginx 的 Failover 机制 √ 安全 访问控制:主要依靠中间件 × 中间件 治理控制 熔断降级:主要依靠中间件 中间件 限流:速率限制 √ 中间件 资源隔离:主要依靠中间件 中间件 故障注入:不提供 × 超时控制、重试、重写、重定向等:继承 Nginx 的 timeout 机制 √ 监控/故障诊断 链路追踪:主要依靠中间件 APM APM 概念正式提出9/24 云原生 Service Mesh 框架 - Istio • 由 Google,IBM 和 Lyft 联合开发,Go 语 言,与 K8s 一脉相承且深度融合 • K8s 提供了部署、升级和有限的运行流量管 理能力 • Istio 补齐了 K8s 在微服务治理上的短板 (限流、熔断、降级、分流等) • Istio 以 Sidecar 的形式运行在 Pod 中, 自动注入,自动接管流量,部署过程对业务 - 服务治理能力 – 基于Istio+Envoy 类型 功能 能力提供方 服务调用方(Client) 服务提供方(Server) 服务注册与发现 注册发现:云外基于 Consul,云内基于 K8s 默认的 ETCD √ 调用控制 协议支持:HTTP 1.X/2.X,GRPC,WebSocket,Dubbo, Thrift √ 路由控制:静态路由、动态路由、流量染色、分流控制等 √ 负载均衡:支持0 码力 | 25 页 | 2.07 MB | 6 月前3
 Service Mesh的实践分享OSP client多语言客户端接入 • HTTP & TCP • Local & Remote • 根据接入对象的不同,制定 不同的接入策略,达到 • 接入简单 • 保证性能 • 节省资源 Java App Local Proxy OSP Server Remote Proxy Cluster Thrift over TCP PHP App C/C++/Node JS 切换地址到remote proxy,轻 易实现优雅退出和滚动升级 • 增强隔离性 • Local Proxy被pod共享 • 自保护,对来源方限流和流量 转移 • 资源适配 • 根据宿主机的硬件配置定制不 同资源配置的Daemonset Local Proxy Pod 写入地址 监听变化 宿主机 Proxy address File Pod Remote Proxy sdk) 应用侵入性 侵入性大。复杂客户端会给 应用造成负担,包括资源占 用、依赖冲突等等 侵入性小。SDK只有简单的寻址和序列化/ 反序列化的功能 无侵入性。应用自行调用 运维难度 难度大。客户端的问题会对 应用直接产生影响,耦合太 重 难度小。Sidecar故障可以将流量临时切到 remote proxy解决 难度小。集群通过LVS接入,单 台机故障可以下线 升级难度 难度极大。需要客户端修改0 码力 | 30 页 | 4.80 MB | 6 月前3 Service Mesh的实践分享OSP client多语言客户端接入 • HTTP & TCP • Local & Remote • 根据接入对象的不同,制定 不同的接入策略,达到 • 接入简单 • 保证性能 • 节省资源 Java App Local Proxy OSP Server Remote Proxy Cluster Thrift over TCP PHP App C/C++/Node JS 切换地址到remote proxy,轻 易实现优雅退出和滚动升级 • 增强隔离性 • Local Proxy被pod共享 • 自保护,对来源方限流和流量 转移 • 资源适配 • 根据宿主机的硬件配置定制不 同资源配置的Daemonset Local Proxy Pod 写入地址 监听变化 宿主机 Proxy address File Pod Remote Proxy sdk) 应用侵入性 侵入性大。复杂客户端会给 应用造成负担,包括资源占 用、依赖冲突等等 侵入性小。SDK只有简单的寻址和序列化/ 反序列化的功能 无侵入性。应用自行调用 运维难度 难度大。客户端的问题会对 应用直接产生影响,耦合太 重 难度小。Sidecar故障可以将流量临时切到 remote proxy解决 难度小。集群通过LVS接入,单 台机故障可以下线 升级难度 难度极大。需要客户端修改0 码力 | 30 页 | 4.80 MB | 6 月前3
 Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?Backend Proxy 优点: • 架构优雅,职责分明,边界清晰 • Mixer的变动不影响Proxy • Proxy无需和Adapter耦合 • 读取配置 -> 连接k8s/Galley • Adapter的运行时资源开销 • 不受Adapter增减/更新/升级影响 • 保持Proxy代码简单 • 保持Proxy代码简单 • 数据平面可替换原则 Kubernete s API • 配置 • 维护Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Mixer v1 架构的优点 • 集中式服务: • 提高基础设施后端的可用性 • 为前提条件检查结果提供集群级别的全局2级缓存 • 灵活的适配器模型,使其以下操作变得简 单: • 运维添加、使用和删除适配器 • 开发人员创建新的适配器(超过20个适配器)Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Proxy无需和Adapter耦合 • 读取配置 -> 连接k8s/Galley • Adapter的运行时资源开销 • 不受Adapter增减/更新/升级影响 • 保持Proxy代码简单 • 保持Proxy代码简单 • 数据平面可替换原则 • 集中式服务: • 提高基础设施后端的可用性 • 为前提条件检查结果提供集群级别的全局2级缓存 • 灵活的适配器模型,使其以下操作变得简0 码力 | 43 页 | 2.90 MB | 6 月前3 Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?Backend Proxy 优点: • 架构优雅,职责分明,边界清晰 • Mixer的变动不影响Proxy • Proxy无需和Adapter耦合 • 读取配置 -> 连接k8s/Galley • Adapter的运行时资源开销 • 不受Adapter增减/更新/升级影响 • 保持Proxy代码简单 • 保持Proxy代码简单 • 数据平面可替换原则 Kubernete s API • 配置 • 维护Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Mixer v1 架构的优点 • 集中式服务: • 提高基础设施后端的可用性 • 为前提条件检查结果提供集群级别的全局2级缓存 • 灵活的适配器模型,使其以下操作变得简 单: • 运维添加、使用和删除适配器 • 开发人员创建新的适配器(超过20个适配器)Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Proxy无需和Adapter耦合 • 读取配置 -> 连接k8s/Galley • Adapter的运行时资源开销 • 不受Adapter增减/更新/升级影响 • 保持Proxy代码简单 • 保持Proxy代码简单 • 数据平面可替换原则 • 集中式服务: • 提高基础设施后端的可用性 • 为前提条件检查结果提供集群级别的全局2级缓存 • 灵活的适配器模型,使其以下操作变得简0 码力 | 43 页 | 2.90 MB | 6 月前3
 Service Mesh结合容器云平台的思考和实践温饱问题 • 计算资源的快速分配 • 基本的监控 • 快速部署 • 易于分配的存储 • 易于访问的外围(负载均衡) • 服务注册和发现 致富问题 • 认证和授权 • 智能路由 • 流量管理 • 服务降级 • … • 微服务拆分原则 • 业务API设计 • 数据一致性保证 • 可扩展性考虑 • …Kubernetes对于微服务的支撑 功能列表 详情 快速资源分配 容器编排和调度 审计日志 • 黑白名单 • …K8S集群 云平台微服务演进之基于Spring Cloud的微服务方案 NS A Service Zuul Nginx Eureka Server Service 1 Service 2 Ribbon 注册 业务服务 配置中心 启动获取 Monitor Turbine K8S流量 SC流量 同集群调用微服务 Spring Clo entries in a backing ConfigStore. 3."Kubernetes" KubernetesRegistry is a service registry backed by K8s API server. 4."Consul" ConsulRegistry is a service registry backed by Consul. 5. "Eureka" EurekaRegistry0 码力 | 28 页 | 3.09 MB | 6 月前3 Service Mesh结合容器云平台的思考和实践温饱问题 • 计算资源的快速分配 • 基本的监控 • 快速部署 • 易于分配的存储 • 易于访问的外围(负载均衡) • 服务注册和发现 致富问题 • 认证和授权 • 智能路由 • 流量管理 • 服务降级 • … • 微服务拆分原则 • 业务API设计 • 数据一致性保证 • 可扩展性考虑 • …Kubernetes对于微服务的支撑 功能列表 详情 快速资源分配 容器编排和调度 审计日志 • 黑白名单 • …K8S集群 云平台微服务演进之基于Spring Cloud的微服务方案 NS A Service Zuul Nginx Eureka Server Service 1 Service 2 Ribbon 注册 业务服务 配置中心 启动获取 Monitor Turbine K8S流量 SC流量 同集群调用微服务 Spring Clo entries in a backing ConfigStore. 3."Kubernetes" KubernetesRegistry is a service registry backed by K8s API server. 4."Consul" ConsulRegistry is a service registry backed by Consul. 5. "Eureka" EurekaRegistry0 码力 | 28 页 | 3.09 MB | 6 月前3
 金融级云原生 PaaS 探索与实践金融级云原生 PaaS 探索与实践 王成昌(晙曦)蚂蚁金服技术专家2/20 一、业务背景 二、多集群管控 三、发布运维体系 目 录 contents 目录3/20 一、业务背景 业务背景4/20 业务背景 业务架构 演进 • 容量  应用|数据库|机房 • 容灾  机房|地域5/20 业务背景 业务架构 单元化 • 高可用 • 一致性 • 可扩展 • 面向站点级别输出7/20 PaaS 能力 • 面向多租户多环境; • 基础资源管控; • 应用发布运维体系; • 业务实时监控,日志收集; • 机房级和地域级容灾能力; 业务背景业务背景 CAFÉ API Server Aggregation Layer 异地多活架构 同城双活架构 K8S API Server 基础发布运维 跨集群应用 资源管理 IaaS层(Aliyun/OpenStack/VMWare/Bare (SLB/ALB) 容 器 层 跨集群管理 单元化能力 容器镜像管理 批次发布 原生资源管理 Pod伸缩管理 集群伸缩管理 变更管控 配额管理 运维原子操作 精细化调度 接入层流程调拨 应用层流量调拨 跨集群状态 分发/汇聚 数据层流量调拨 压测/灰度 流量管理 单元化 元数据管理 弹性流量管理 跨集群发布策略 多集群管理 跨集群网络 跨集群镜像管理 蓝绿发布 灰度分组发布0 码力 | 20 页 | 1.71 MB | 6 月前3 金融级云原生 PaaS 探索与实践金融级云原生 PaaS 探索与实践 王成昌(晙曦)蚂蚁金服技术专家2/20 一、业务背景 二、多集群管控 三、发布运维体系 目 录 contents 目录3/20 一、业务背景 业务背景4/20 业务背景 业务架构 演进 • 容量  应用|数据库|机房 • 容灾  机房|地域5/20 业务背景 业务架构 单元化 • 高可用 • 一致性 • 可扩展 • 面向站点级别输出7/20 PaaS 能力 • 面向多租户多环境; • 基础资源管控; • 应用发布运维体系; • 业务实时监控,日志收集; • 机房级和地域级容灾能力; 业务背景业务背景 CAFÉ API Server Aggregation Layer 异地多活架构 同城双活架构 K8S API Server 基础发布运维 跨集群应用 资源管理 IaaS层(Aliyun/OpenStack/VMWare/Bare (SLB/ALB) 容 器 层 跨集群管理 单元化能力 容器镜像管理 批次发布 原生资源管理 Pod伸缩管理 集群伸缩管理 变更管控 配额管理 运维原子操作 精细化调度 接入层流程调拨 应用层流量调拨 跨集群状态 分发/汇聚 数据层流量调拨 压测/灰度 流量管理 单元化 元数据管理 弹性流量管理 跨集群发布策略 多集群管理 跨集群网络 跨集群镜像管理 蓝绿发布 灰度分组发布0 码力 | 20 页 | 1.71 MB | 6 月前3
 大规模微服务架构下的Service Mesh探索之路以蚂蚁金服的标准,稳定性的要求自然是很高 • 高可用方面的要求很非常高 ü 部署的要求 • 需要用于多种场合:主站,金融云,外部客户 • 需要满足多种部署环境:虚拟机/容器,公有云/私有云,k8s • 需要满足多种体系:Service Mesh,Sofa和社区主流开发框架 Service Mesh落地要面临的实际要求选择开源产品,还是选择自研? 起点:开源 起点:自研 全新打造;或依托现有SDK 技术输出 内部落地 如何让开源产品接受我们的改动? 如何让社区和客户认可我们的产品?开源方案选择之第一代Service Mesh Linkerd • 无控制平面 • Scala编写,基于JVM资源消耗大 • 可扩展性有限,dtab不易理解和使用 • 功能不能满足蚂蚁的需求,没法做到 类似envoy xds那样的扩展性 • 未来发展前景黯淡 Envoy • 安心做数据平面, 提供XDS • 第一选择,重点关注对象 • 奈何迟迟不能发布生产可用版本 • 性能和稳定性远远不能满足蚂蚁的 要求 • 但我们非常认可Istio的理念和方向 Conduit • 只支持k8s,而蚂蚁尚未普及k8s • 数据平面由Rust编写,过于小众,难于 从社区借力。 • 同样存在技术栈问题 • 公司和产品在社区知名度和影响力有限国内公司的选择之一:自研 华为:CES Mesher0 码力 | 37 页 | 7.99 MB | 6 月前3 大规模微服务架构下的Service Mesh探索之路以蚂蚁金服的标准,稳定性的要求自然是很高 • 高可用方面的要求很非常高 ü 部署的要求 • 需要用于多种场合:主站,金融云,外部客户 • 需要满足多种部署环境:虚拟机/容器,公有云/私有云,k8s • 需要满足多种体系:Service Mesh,Sofa和社区主流开发框架 Service Mesh落地要面临的实际要求选择开源产品,还是选择自研? 起点:开源 起点:自研 全新打造;或依托现有SDK 技术输出 内部落地 如何让开源产品接受我们的改动? 如何让社区和客户认可我们的产品?开源方案选择之第一代Service Mesh Linkerd • 无控制平面 • Scala编写,基于JVM资源消耗大 • 可扩展性有限,dtab不易理解和使用 • 功能不能满足蚂蚁的需求,没法做到 类似envoy xds那样的扩展性 • 未来发展前景黯淡 Envoy • 安心做数据平面, 提供XDS • 第一选择,重点关注对象 • 奈何迟迟不能发布生产可用版本 • 性能和稳定性远远不能满足蚂蚁的 要求 • 但我们非常认可Istio的理念和方向 Conduit • 只支持k8s,而蚂蚁尚未普及k8s • 数据平面由Rust编写,过于小众,难于 从社区借力。 • 同样存在技术栈问题 • 公司和产品在社区知名度和影响力有限国内公司的选择之一:自研 华为:CES Mesher0 码力 | 37 页 | 7.99 MB | 6 月前3
 深入 Kubernetes 的无人区-蚂蚁金服双十一的调度系统落地,超过 90% 的资源通过 Kubernetes 分配,核心链路100%落地支撑 大促。5/19 大促规模 Part 1:蚂蚁金服的Kubernetes现状 数万台 服务器和ECS 超一万 单集群规模 90%+ 应用服务 数十万 应用 Pods业务 6/19 统一资源调度架构 Part 1:蚂蚁金服的Kubernetes现状 非云 资源 云化 资源 基础 服务 蚂蚁 蚂蚁 k8s 核心 CRI Kubernetes API Server 极速交付 分时复用 弹性容量 资源画像 规模化调度 高可用容灾 可视化 服务 Cluster Control Panel 在线应用 计算型混部任务 CSI CNI Device Plugin runc nanovisor 日志服务 云盘 本地多盘 弹性网卡 网络安全组 GPU 安全可信 数据库服务 OB serverless SOFAMesh 资源分时复用 神龙裸金属 VPC 云存储 应用服务器 数据库服务器 国产化服务器7/19 二、双十一 Kubernetes 实践 Part 2:8/19 资源分时调度 Part 2:双十一 Kubernetes 实践 快速腾挪的问题 1.实例上下线需要预热 2. 腾挪耗时不可控 3. 大规模腾挪的稳定性技术风险 9/19 资源分时链路切换 Part 2:资源分时调度0 码力 | 19 页 | 2.18 MB | 6 月前3 深入 Kubernetes 的无人区-蚂蚁金服双十一的调度系统落地,超过 90% 的资源通过 Kubernetes 分配,核心链路100%落地支撑 大促。5/19 大促规模 Part 1:蚂蚁金服的Kubernetes现状 数万台 服务器和ECS 超一万 单集群规模 90%+ 应用服务 数十万 应用 Pods业务 6/19 统一资源调度架构 Part 1:蚂蚁金服的Kubernetes现状 非云 资源 云化 资源 基础 服务 蚂蚁 蚂蚁 k8s 核心 CRI Kubernetes API Server 极速交付 分时复用 弹性容量 资源画像 规模化调度 高可用容灾 可视化 服务 Cluster Control Panel 在线应用 计算型混部任务 CSI CNI Device Plugin runc nanovisor 日志服务 云盘 本地多盘 弹性网卡 网络安全组 GPU 安全可信 数据库服务 OB serverless SOFAMesh 资源分时复用 神龙裸金属 VPC 云存储 应用服务器 数据库服务器 国产化服务器7/19 二、双十一 Kubernetes 实践 Part 2:8/19 资源分时调度 Part 2:双十一 Kubernetes 实践 快速腾挪的问题 1.实例上下线需要预热 2. 腾挪耗时不可控 3. 大规模腾挪的稳定性技术风险 9/19 资源分时链路切换 Part 2:资源分时调度0 码力 | 19 页 | 2.18 MB | 6 月前3
 微博Service Mesh实践…… RestFul API 业务部⻔门 Motan ➢ 业务部⻔门语⾔言种类繁多 ➢ 微服务体系建设不不完善/重复 ➢ ⽹网络抖动,dns不不稳定 ➢ 4,7层冗⻓长调⽤用链及资源消耗 4,7层调度Service Mesh Meetup · BeiJing 趋势 �6 微博Service Mesh实践 - WeiboMesh 微服务 1 容器器化 2 DevOps • 批量量请求 • 资源服务化 • 兜底逻辑 Mesh Light Client SM 功能 功能 强化 Go 并发 适配 不不同 语⾔言Service Mesh Meetup · BeiJing Weibo Mesh 数据⾯面 �17 微博Service Mesh实践 - WeiboMesh ➢ Cluster(发现集群管理理,group + path) 1-跨语⾔言服务化 3-可靠的Transport 5-Http、Web⾃自动转RPC 2-服务治理理与业务逻辑解耦 6-适合⾮非云,混合云等,适配Registry⽀支持云原⽣生 4-节省资源Service Mesh Meetup · BeiJing Weibo Mesh在业务应⽤用中的效果 �35 微博Service Mesh实践 - WeiboMesh Mesh VS HTTP0 码力 | 43 页 | 1007.85 KB | 6 月前3 微博Service Mesh实践…… RestFul API 业务部⻔门 Motan ➢ 业务部⻔门语⾔言种类繁多 ➢ 微服务体系建设不不完善/重复 ➢ ⽹网络抖动,dns不不稳定 ➢ 4,7层冗⻓长调⽤用链及资源消耗 4,7层调度Service Mesh Meetup · BeiJing 趋势 �6 微博Service Mesh实践 - WeiboMesh 微服务 1 容器器化 2 DevOps • 批量量请求 • 资源服务化 • 兜底逻辑 Mesh Light Client SM 功能 功能 强化 Go 并发 适配 不不同 语⾔言Service Mesh Meetup · BeiJing Weibo Mesh 数据⾯面 �17 微博Service Mesh实践 - WeiboMesh ➢ Cluster(发现集群管理理,group + path) 1-跨语⾔言服务化 3-可靠的Transport 5-Http、Web⾃自动转RPC 2-服务治理理与业务逻辑解耦 6-适合⾮非云,混合云等,适配Registry⽀支持云原⽣生 4-节省资源Service Mesh Meetup · BeiJing Weibo Mesh在业务应⽤用中的效果 �35 微博Service Mesh实践 - WeiboMesh Mesh VS HTTP0 码力 | 43 页 | 1007.85 KB | 6 月前3
 Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展check) 配置数据(服 务信息,路由 信息等) 定制Istio组件 应用微服务 业务请求 控制流 图例说明 Pilot Mixer APP: Canary Deployment K8s API Server 管控规则 灰度发布 网格增强组件 原生组件 APP: Traffic Management APP ...产品化增强-服务注册发现 出于历史原因,我们使用了Kub 200个服务的规模下,CPU占用率降低了一个数量级 • 服务数据变化同步时延从分钟级降低到秒级 • Consul调用导致的TIME_WAIT Sockets数量减少到个位级产品化增强-Ingress API Gateway K8S Ingress Load balancing SSL termination Virtual hosting Istio Gateway Load balancing SSL termination 包括:避免不同功能的网络之间的 相互影响; 网络设计冗余,增强系统网络的健壮性; 为不同的网络提供不同的 SLA ;通过网络隔离提高安全性;通过叠加多个网络增加系统带宽 上图中的Kubernets集群使用了Knitter网络插件,部署了四个网络平面产品化增强-支持多网络平面 Istio1.0中不支持多网络平面,当服务地址和Envoy地址分别位于两个网络上时,会导致转发请求时 发生死循环,导致socket耗尽,Envoy不停重启。0 码力 | 27 页 | 11.99 MB | 6 月前3 Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展check) 配置数据(服 务信息,路由 信息等) 定制Istio组件 应用微服务 业务请求 控制流 图例说明 Pilot Mixer APP: Canary Deployment K8s API Server 管控规则 灰度发布 网格增强组件 原生组件 APP: Traffic Management APP ...产品化增强-服务注册发现 出于历史原因,我们使用了Kub 200个服务的规模下,CPU占用率降低了一个数量级 • 服务数据变化同步时延从分钟级降低到秒级 • Consul调用导致的TIME_WAIT Sockets数量减少到个位级产品化增强-Ingress API Gateway K8S Ingress Load balancing SSL termination Virtual hosting Istio Gateway Load balancing SSL termination 包括:避免不同功能的网络之间的 相互影响; 网络设计冗余,增强系统网络的健壮性; 为不同的网络提供不同的 SLA ;通过网络隔离提高安全性;通过叠加多个网络增加系统带宽 上图中的Kubernets集群使用了Knitter网络插件,部署了四个网络平面产品化增强-支持多网络平面 Istio1.0中不支持多网络平面,当服务地址和Envoy地址分别位于两个网络上时,会导致转发请求时 发生死循环,导致socket耗尽,Envoy不停重启。0 码力 | 27 页 | 11.99 MB | 6 月前3
共 31 条
- 1
- 2
- 3
- 4













