【发布时间】:2020-07-12 23:08:44
【问题描述】:
我们有两个微服务 A 和 B。A 通过 istio-proxy side car 调用 B。
我们创建了一个虚拟服务。 yaml请看下面
创建虚拟服务后,当我们使用istioctl proxy-config routes a-75768cc7bc-ghzsr -o json这个命令检查 pod A 中的路由时,我们看不到加权路由
如果我们将 tls 替换为 http,则会添加加权路由。我们可以使用带 tls 的加权路由吗?
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: b
namespace: default
spec:
hosts:
- b
tls:
- match:
- port: 443
route:
- destination:
host: b
subset: v1
weight: 50
- destination:
host: b
subset: v2
weight: 50
添加服务定义
apiVersion: v1
kind: Service
metadata:
labels:
svc: b
name: b
namespace: default
spec:
clusterIP: x.x.x.x
ports:
- name: https-b
port: 443
protocol: TCP
targetPort: 8080
selector:
svc: b
sessionAffinity: None
type: ClusterIP
status:
loadBalancer: {}
添加目标规则,
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
name: b
namespace: default
spec:
host: b
subsets:
- labels:
version: v1
name: v1
- labels:
version: v2
name: v2
【问题讨论】:
标签: kubernetes istio