产品介绍
概述
百度智能云服务网格(Cloud Service Mesh,简称 CSM)全面兼容原生 Istio 服务网格,提供丰富的负载均衡、路由转发、超时重试、熔断限流、加密鉴权等策略,支持跨集群、多语言、多协议的精细化服务治理,使服务间调用更加便捷、稳定、安全、易于追踪、便于管理。通过服务网格,将微服务治理能力下沉到基础设施层,实现业务开发与微服务治理解耦,减轻开发与运维的工作负担。
核心概念
百度智能云服务网格由 Istio 原生组件和百度智能云增强能力构成的控制平面,以及由网关和 Sidecar 代理组件构成的数据平面组成。针对微服务治理规则,整体上由控制平面下发策略、数据平面执行策略。产品完全兼容社区 Istio 和 Envoy,用户可通过百度智能云控制台、原生 API 等多种方式进行服务网格管理。
产品架构

托管网格
Istio 相关组件部署在托管集群中,简化控制平面运维,用户无需运维控制平面。
控制平面
控制平面是告诉数据平面如何路由流量的组件,负责存储和管理配置,帮助管理员与 Sidecar 代理进行交互,并控制 Istio 服务网格。在控制面与数据面分离的架构体系下,微服务间流量不会发送至控制面。即使控制面短暂异常,数据平面也会使用已下发的规则进行流量转发。
数据平面
Istio 默认采用 Envoy 作为 Sidecar 和 Gateway 构成数据平面。Envoy 代理业务流量,并按控制面下发的策略进行转发。服务网格 CSM 默认采用 Envoy,保持与社区全面兼容,同时支持 Proxyless 等其他数据面选型。
Istio 资源
服务网格的流量管理、可观测、安全等能力通过 Istio 的众多 CRD 实现相关配置,这些 CRD 在服务网格 CSM 中称为 Istio 资源,包括 Virtual Service、Destination Rule 等。服务网格 CSM 完全兼容社区 Istio 的 CRD,详细 CRD 及使用方式,参考Istio官方文档。
集群管理
同一个服务网格实例可以同时治理多个 Kubernetes 集群中的服务。集群管理帮助用户快速将 Kubernetes 集群添加至 CSM,或从 CSM 移出。请确保添加的 Kubernetes 集群中运行的代理容器可以访问服务网格实例暴露的控制面地址。
Sidecar 注入
服务网格的代理容器以 Sidecar 容器的形式和业务容器部署在同一个 Pod 中,用户在创建工作负载时无需手动添加 Sidecar 代理容器。通过在命名空间或工作负载的 Annotation 中标识,服务网格会在工作负载创建时同时创建 Sidecar 代理容器,这一过程称为 Sidecar 注入。通过服务网格 CSM,可以实现 Sidecar 容器资源配额和是否开启注入的快速配置。
服务
服务网格推荐使用 Kubernetes 服务发现机制,同时支持用户通过 Service Entry CRD 手动将服务注册至服务网格。服务网格 CSM 中的服务代表一个提供服务的入口和对应的工作负载。当多个 Kubernetes Service 或 Service Entry 注册的是同一个服务入口时,服务网格 CSM 会将其视为同一个服务,Kubernetes Service 或 Service Entry 对应的多个工作负载均视为该服务的实例。
优势
托管服务网格
Istio 相关组件部署在托管集群中,简化控制平面运维,用户无需运维控制平面。
完全兼容 Istio
快速跟进社区更新。完全兼容原生 Istio 和 Envoy,独立网格支持 Istio 1.13,托管服务网格支持 Istio 1.14。
高性能高可用
控制面和数据面在 Istio 社区版本基础上进行优化和加固,提供可视化视图辅助运维。
多集群统一流量管理
单实例可管理多个 Kubernetes 集群,实现多集群统一服务发现和统一流量调度。
丰富的治理策略
提供丰富的负载均衡、路由转发、超时重试、熔断限流、加密鉴权策略。
功能
流量管理
服务网格丰富的流量管理规则可以让用户轻松控制服务之间的流量,提供开箱即用的熔断、限流、重试等能力,支持动态进行多种负载均衡、百分比路由、基于成份的路由等转发规则。
可观测
服务网格内的所有通信都可以无侵入地生成详细的遥测数据,提供详细的指标、分布式跟踪和完整的访问日志。
安全
提供强大的身份、策略、透明的 TLS 加密,以及验证、授权和审计工具,保护服务和数据安全。
评价此篇文章
