流量拆分是否需要 Istio 入口网关?

问题描述

我有两个服务在运行,它们通过 grpc 相互通信。

[ Service A ] ------ grpc -----> [ Service B ]

服务 B 通过 example.com 处的常规 k8s 入口公开,这就是服务 A 在看到请求时寻址 B 的方式。

我已经安装了 Istio 控制平面,并在服务 B 上启用了 sidecar 注入。

[ Service A ] ------ grpc -----> [ Istio / Envoy sidecar ]
                                      |
                                      |-> [ Service B ]

现在,我想在服务 B 的不同版本之间拆分流量。我已经部署了虚拟服务和目标规则,它们都使用 <service_name>.<namespace> 格式而不是入口端点({{ 1}}),因为后者会导致 Kiali 中出现“找不到服务”错误。不过,使用 example.com 格式似乎可行。

问题是,我在虚拟服务中包含的加权流量拆分规则似乎没有生效。我想知道我是否需要一个入口网关而不是一个常规的 k8s 入口来让它工作。如果没有,您还建议我查看什么来解决问题?

提前致谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)