关于higress controller同时拿istio cr及生成ingress对应的istiocr后统一传给pilot的探讨 #1202
zackzhangkai
started this conversation in
Ideas
Replies: 1 comment 1 reply
-
主要是higress并不想跟istio crd强绑定,所以不会去直接监听istio crd |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
背景:
istio cr有两个来源,1. 一个是ingress转换得到的,2.另一个是k8s集群上本来就有的。
如下图higress部署模式,在istiod pilot discovery 这里有两个configSource,一个是从k8s上获取istio cr,一个是从higress controller上获取mcp。也就是上述的两个来源。
问题 & 好处
那么 pilot 需要依赖 higress controller 与 apiserver两个组件。
从链路上讲,apiserver -> higress controller -> pilot这个是绕不开的。
那么如果能让higress controller直接调用 apiserver拿到k8s上的istio cr,然后合并后直接用mcp传给pilot,从链路上讲,就可以少一个依赖,即pilot 只依赖 higress controller而已。
可行方案
我在看discovery 代码时,发现,其实higress可以直接调用 apiserver获取到k8s istio cr 传到configGenerator
见图中有两个字段。
说明:只是在研究higress时看代码发现的一些想法,仅供参考,也可以是探讨是否为另一种的实现。
Beta Was this translation helpful? Give feedback.
All reactions