跨命名空间服务。我试图让命名空间nsA中的pod调用名称空间nsB中的pod。但我想避免开发人员关心最终服务的位置,所以只需在调用中使用主机名,我将使用Istio重定向它。我的假设是在代码中我只会调用一个主机名,比如http://podB:9080,现在我会创建一个这样的虚拟服务,将它重定向到正确的命名空间
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: podB
spec:
hosts:
- podB
http:
- route:
- destination:
host: podB.nsB.svc.cluster.local
subset: v1
但这不起作用,为此我必须在命名空间nsA中创建一个名为podB的服务。它可以是没有任何端点的“空”服务,但是Istio Proxy必须存在服务来处理请求,如果不存在则virtualService不运行。
有关此方案的任何建议吗?
我希望这篇文章可以提供帮助:Istio: Blue/green deployment
(对不起,我没有足够的声誉写评论,只有答案)