《03Service Mesh 在百度大规模落地实践--陈谭军.pdf》由会员分享,可在线阅读,更多相关《03Service Mesh 在百度大规模落地实践--陈谭军.pdf(41页珍藏版)》请在三个皮匠报告上搜索。
1、百度服务网格架构演进之旅百度云原生-陈谭军目录目录 服务网格架构服务网格架构 百度服务网格架构演进之旅百度服务网格架构演进之旅 服务网格架构总结与展望服务网格架构总结与展望调查调查1 1 未使用未使用 Kubernetes 管理业务应用?管理业务应用?调查调查调查调查2 2 未落地未落地 Service Mesh 进行进行服务服务治理?治理?服务网格架构服务网格架构服务服务网格网格服务网格是一个基础设施层基础设施层,用于处理服务间通信。云原生应用有着复杂的服务拓扑,服务网格保证请求在这些拓扑中可靠地穿梭请求在这些拓扑中可靠地穿梭。在实际应用中,服务网格通常是由一系列轻量级的网络代理网络代理 组
2、成,它们与应用程序部署在一起,但对应用程对应用程序透明序透明。稳定可靠稳定可靠基础设施基础设施网络代理网络代理应用透明应用透明服务服务网格网格服务网格架构开始进入准成熟期,以 Istio 为代表的服务网格在国内基本上是事实上的标准特点 市场更加理性 技术日趋成熟 回归价值本身 生态逐步完善 产品百花齐放百度服务网格架构演进之旅百度服务网格架构演进之旅演进路线演进路线传统微服务服务网格1.0服务网格2.0 开发框架 bRPC、SpringCloud 等 通信协议 HTTP、gRPC、私有协议等 开发语言 C+、Golang、Java 等 统一与融合公有云与集团云服务网格 基于 Istio,发布私
3、有云服务网格 拥抱开源,基于 Istio 进行定制化开发,数据平面融合 Envoy 与 bRPC,提升转发性能 基于 bRPC,数据平面同时支持 Proxy 与 ProxyLess 模式,服务网格统一服务流量治理服务网格服务网格 1.01.0Istiod定义 Link ConsumerEnvoy127.1.1.1:8000Naming Lib Naming AgentProvider0.0.0.0:3000Envoy0.0.0.0:300110.1.1.110.1.1.23.1 注册直连模式Pod XPod YConsole定义 Link VIP Controller(127.0.0.1,12
4、7.255.255.254)1.生成带 VIP 的 Link2.xDS 推送 Link 信息3.2 Naming 解析4.1 请求 4.2 返回5.请求 Provider6.请求 10.1.1.2:3001直连模式Sidecar 模式返回 数据面高性能适配内部基础设施没有 Iptables 消耗劫持性能好 可回滚Sidecar 故障可秒级切换保证业务接入 Mesh心跳检测心跳检测服务网格服务网格 1.01.0原生模式 HTTP 是第一等公民私有协议内部服务发现服务发现原生网络代理带来的延迟难以接受延迟敏感无容器网络、内部无法使用 Iptables 等 PaaS环境措施 对于私有协议,通过修改代
5、码抽象(超时、重试、请求路由、负载均衡等)通用能力,支持新的私有协议,只需要实现相对应的 Codec 编解码 对延迟非常敏感的业务,融合 Envoy 与 bRPC 提供 Proxy 模式、基于 bRPC 提供 ProxyLess 模式 对于 Sidecar 管理与注入,升级内部 PaaS 支持 Sidecar 模式 对于流量劫持,通过 Envoy 联动 Naming Agent(服务发现系统)研发新的流量劫持模式 服务网格服务网格 2.02.0定制化控制平面与数据平面侵入式支持私有协议依赖内部基础设施,服务发现等场景化功能,Mesh 开关、bRPC 等插件式拓展控制平面与数据平面微服务治理社区
6、标准化数据平面性能加速低运维与产品易用微服务安全性中间态目标态稳定原因 业务 One Cloud 全面上云、内外资源共池、软硬一体内外融合大背景 资源分时弹性复用、统一库存共存、提升资源效能,加速业务 TOB 化建设 侵入式、定制化、严重依赖内部基础设施等原有内部 Mesh 服务网格架构模式在百度智能云不适用 统一云平台、减少重复投入,完善百度智能云云原生微服务产品矩阵,赋能内外部客户产品架构产品架构App 1SidecarApp 2SidecarBaidu Cloud托管网格Istiod请求GatewayApp 1SidecarIstiodGatewayApp 2Sidecar独立网格CRD