Skip to content

Istio

Istio 是 CNCF 开源、当前最主流的服务网格(Service Mesh)平台——它通过Sidecar 代理(Envoy)把「流量管理、安全(mTLS)、可观测性(指标/追踪/日志)」三大能力从应用代码中剥离,下沉到基础设施层,让微服务专注业务逻辑。Istio 让你用声明式 CRD(VirtualService/DestinationRule/Gateway)精细控制服务间流量(金丝雀发布、AB 测试、流量镜像、超时重试),自动给所有服务间通信加 mTLS 加密与 AuthorizationPolicy 授权,并开箱产出 Prometheus 指标 + Jaeger 追踪。理解 Istio,就理解了「Sidecar 模式 + 数据面/控制面分离」这套现代服务网格范式——这是它与 Spring Cloud(SDK 内嵌、语言绑定)、Linkerd(更轻量 Rust Sidecar)的核心分野。

Istio 的全部考点围绕三大能力 + 架构展开:①流量管理(VirtualService 路由规则、DestinationRule 负载均衡/熔断、Gateway 入口、金丝雀/AB/镜像);②安全(mTLS 自动双向认证、AuthorizationPolicy 授权、RequestAuthentication JWT);③可观测性(Prometheus 指标、Jaeger 追踪、Kiali 拓扑图);④架构(数据面 Envoy Sidecar + 控制面 istiod)。本叶还覆盖 Ambient 模式 GA(Istio 1.22+ 的无 Sidecar 新架构,ztunnel + waypoint,降低资源开销)、以及与 Linkerd 的对比(Envoy vs Rust、功能丰富 vs 轻量)。

评价

优点

  • 语言无关:Sidecar 代理拦截流量,业务代码零改造,Java/Go/Python/Node 多语言统一治理
  • 流量管理精细:VirtualService + DestinationRule 声明式控制,金丝雀/AB/镜像/熔断/重试开箱即用
  • 零信任安全:自动 mTLS + AuthorizationPolicy,服务间通信加密与授权默认开启
  • 可观测性全栈:指标 + 分布式追踪 + 拓扑图一体化(Prometheus/Jaeger/Kiali),无需业务埋点

缺点

  • Sidecar 资源开销:每个 Pod 多一个 Envoy 容器,内存/CPU 开销可观(Ambient 模式缓解)
  • 运维复杂度高:CRD 多、配置语义复杂,istiod 升级有风险,学习曲线陡
  • 性能损耗:Sidecar 多一跳代理,延迟增加(通常个位数毫秒,但对延迟敏感场景需评估)
  • 排障困难:流量被 Sidecar 拦截,问题定位要同时看应用与 Envoy 日志

本叶地图

  • 入门 —— 服务网格概念、Sidecar/Envoy 模式、数据面/控制面、三大能力、Ambient 模式 GA
  • 流量管理 —— VirtualService 路由、DestinationRule 负载均衡/熔断、Gateway、金丝雀/AB/镜像
  • 安全与 Ambient 模式 —— mTLS 双向认证、AuthorizationPolicy、Ambient(ztunnel+waypoint)、与 Linkerd 对比
  • 参考 —— CRD 速查、流量模型、安全模型、易错点、命令速查(istioctl)

幻灯片地址

Istio

测试题

Istio 测试题