关于java:动态路由用VirtualService和DestinationRule设置路由规则

45次阅读

共计 559 个字符,预计需要花费 2 分钟才能阅读完成。

路由是流量管制中最重要、最罕用的性能,在 Istio 中应用 VirtualService 和 DestinationRule 这二个 API 资源来实现。

VirtualService

VirtualService(虚构服务)定义了一组寻址主机时要利用的流量路由规定。每个路由规定为特定协定的流量定义匹配条件。如果流量匹配,则将其发送到注册表中定义的命名指标服务(或其子集 / 版本)。

性能:

  • 定义路由规定
  • 形容满足条件的申请去哪里

DestinationRule

DestinationRule(指标规定)定义在产生路由后利用于服务流量的策略。

性能:

  • 定义子集、策略
  • 形容达到指标的申请怎么解决

指标规定是配合虚构服务来应用的,次要用来定义子集,子集实际上就是具体的指标地址,除此以外,它次要形容的是达到指标申请后如何去解决,所谓的指标就是子集,而如何解决就是指具体的策略。

利用

将 productpage 的申请打到 reviews 的 v1 版本

  1. 部署 virtual service

kubectl apply -f virtual-service-all-v1.yaml

  1. 部署 destination rule

kubectl apply -f destination-rule-all.yaml

  1. 从新拜访 productpage 页面


屡次刷新页面后,可发现总是只拜访 reviews 的 v1 版本

正文完
 0