---
title: Istio 多集群联邦与流量策略(EastWest Gateway、Failover 与验证)
date: 2025-11-26
keywords:
- 多集群
- EastWest Gateway
- Failover
- ServiceEntry
- DestinationRule
description: 通过EastWest Gateway暴露跨集群服务并在出站层配置Failover与本地优先,实现多区域就近访问与故障切换,提供配置示例与可重复验证方法。
categories:
- 文章资讯
- 技术教程
---
概述
多集群网格通过EastWest Gateway进行跨集群互联,在出站路由层结合本地优先与Failover策略保证就近访问与故障切换。在区域故障或实例异常时自动切换到备份集群,提升可用性与性能。
关键实践与参数
- EastWest Gateway: 在每个集群部署并暴露网格内部服务
- ServiceEntry: 为跨集群目标声明外部主机与端口
- 本地优先:
localityLbSetting优先同Region/Zone - 故障切换:
failover区域映射, 异常时跨区路由 - 异常剔除:
outlierDetection剔除错误端点
示例/配置/实现
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
name: orders-global
spec:
hosts: ["orders.global"]
location: MESH_EXTERNAL
ports:
- number: 15443
name: tls
protocol: TLS
resolution: DNS
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: dr-orders-global
spec:
host: orders.global
trafficPolicy:
loadBalancer:
localityLbSetting:
enabled: true
failover:
- from: cn
to: us
outlierDetection:
consecutive5xxErrors: 5
interval: 5s
baseEjectionTime: 30s
maxEjectionPercent: 50
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: vs-orders
spec:
hosts: ["orders.global"]
tls:
- match:
- sniHosts: ["orders.global"]
route:
- destination:
host: orders.global
port: { number: 15443 }
验证
- 就近访问: 在不同区域发起请求, 延迟与带宽显示本地优先效果
- 故障切换: 注入区域故障或5xx错误, 自动切换至Failover目标
- 剔除与恢复: 异常端点被剔除并在基准时间后恢复
- 可观测: 采集出站请求成功率与切换事件, 设置告警
注意事项
- DNS与Gateway需正确暴露EastWest入口
- Failover映射需贴合业务拓扑与成本
- 与出口治理策略一致, 防止绕过
- 定期演练跨区切换并记录审计

发表评论 取消回复