适用场景
服务网格分两块:南北向(外部进集群,靠 Ingress Gateway)与东西向(集群间服务互通,靠东西向网关或扁平网络)。多集群则要解决证书、DNS 与服务发现的统一。
配置步骤(多集群互联与故障隔离)
# 主从模式:控制面在主集群,工作负载在多集群
# 关键:共享根 CA,跨集群服务发现
kubectl get remoteclusters -n istio-system
kubectl --context=cluster-b get pods -A | head
关键参数与建议
- 南北向:Ingress Gateway + 证书统一管理 + WAF 前置
- 东西向:东西向网关或直接网络互通(同网段)
- 多集群:多主/主从模式,共享根证书,服务发现联邦
- 故障域:集群级故障要能摘除整集群
- 可观测:跨集群链路追踪与统一指标
容易踩的坑
- 各集群独立 CA,跨集群 mTLS 失败
- 未做故障域隔离,一个集群故障影响全局
- DNS 未联邦,跨集群调用解析失败
验证与巡检
kubectl get remoteclusters -n istio-system
- 巡检:CA 统一、故障域隔离演练、跨集群调用正常
小结
多集群落地的验收:单集群故障时,流量能自动切走且业务可用;跨集群调用链路可追踪。这两个问题答清楚再谈扩容。
> 说明:文中命令为通用写法,不同型号/版本可能略有差异,落地前请对照设备实际版本的官方文档;带外管理与安全设备变更建议先在测试设备验证。