Istio 入门(六):版本控制

💡 原文中文,约5600字,阅读约需14分钟。
📝

内容提要

本文介绍了 Istio 中的 VirtualService 和 DestinationRule 的定义、作用、关系和功能差异。VirtualService 定义流量路由规则,DestinationRule 处理负载分发和连接池管理。VirtualService 和 Kubernetes 的 Service 都是服务治理组件,但作用不同。VirtualService 提供更丰富的流量管理能力。VirtualService 和 DestinationRule 共同实现流量精细控制。

🎯

关键要点

  • Istio 的 VirtualService 和 Kubernetes 的 Service 是服务治理组件,但作用不同。
  • Kubernetes 的 Service 负责服务发现和负载均衡,而 VirtualService 负责定义流量路由规则。
  • VirtualService 可以增强流量管理和控制功能,流量不会直接到达 Service,而是通过 Envoy 转发到 Pod。
  • VirtualService 提供更丰富的流量管理能力,如按权重分配流量、请求重试、故障注入等。
  • VirtualService 和 DestinationRule 是 Istio 中的关键自定义资源定义,用于配置和控制服务间的流量路由。
  • VirtualService 定义流量的路由规则,DestinationRule 处理负载分发和连接池管理。
  • VirtualService 的 spec 包含 hosts、gateways、http、tls 和 tcp 等属性。
  • DestinationRule 的 spec 包含 host、trafficPolicy 和 subsets 等属性。
  • VirtualService 和 DestinationRule 共同实现流量的精细控制,增强服务治理能力。
➡️

继续阅读