首页/开发/CI/CD 与发布速查/Istio 权重与灰度路由
发布策略60 条

Istio 权重与灰度路由

用 VirtualService 把流量按权重分给不同版本,或按 header、URI 等条件定向路由:支持逐步提权、内部用户先行与镜像流量。

CI/CD 与发布速查开发更新于 2026-10-12
权重http.route.weight(按比例)
条件match 按 headers/uri/method
镜像mirror + mirrorPercentage
前提DestinationRule 定义 subset 标签

header 定向 + 权重

header 定向 + 权重
http:
- match:
  - headers: {x-canary: {exact: "true"}}
  route:
  - destination: {host: web, subset: v2}
- route:
  - destination: {host: web, subset: v1}
    weight: 95
  - destination: {host: web, subset: v2}
    weight: 5
组合使用:内部人员走 header 精确命中新版本,外部用户先小比例权重观测。

易错点

  • subset 未定义或标签不匹配:路由直接报错或 503
  • 提权到 100 后未清理灰度规则:后续发布受历史规则干扰

数据来源与参考

  • Istio 文档《VirtualService》
  • Istio 文档《Traffic Management》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌