你好,我是Istio的新手,目前正在学习Istio。
据我了解,Envoy代理将解析目标的IP地址,而不是Kube DNS服务器。 Envoy会根据从控制面板收到的信息将流量直接发送到健康的pod。
所以...如果我使用的是Istio,是否需要Kubernetes service进行设置?
如果我错了,请纠正我。
谢谢!
答案 0 :(得分:2)
从docs
为了在网状网络内引导流量,Istio需要知道哪里 您所有的端点,以及它们属于哪些服务。填充 Istio自己的服务注册表连接到服务发现 系统。例如,如果您在Kubernetes上安装了Istio 群集,然后Istio自动检测服务和端点 在那个集群中。
因此istio需要Kubernetes服务才能实现服务发现,即知道POD IP。但是kubernetes服务(L4)不能用于负载平衡和路由通信,因为L7使节代理在istio中做到了。
来自docs。
一个Pod必须至少属于一个Kubernetes服务 不公开任何端口。如果一个Pod属于多个Kubernetes 服务,这些服务不能将相同的端口号用于不同的服务 协议,例如HTTP和TCP。