我对一些关于虚拟IP的Kubernetes文档感到有些困惑:https://kubernetes.io/docs/concepts/services-networking/service/#the-gory-details-of-virtual-ips。
用户空间 作为示例,考虑上述图像处理应用程序。 >创建后端服务时,Kubernetes主服务器会分配一个虚拟IP地址,例如10.0.0.1。
Kubernetes大师将VIP地址分配给什么?分配的VIP地址在哪里?
服务的虚拟IP如何与外部IP地址集成?
为了允许用户为其服务选择端口号,我们必须确保没有两个服务可以冲突
这是否意味着在运行kubectl get services
时我可以看到具有相同端口的服务?
当客户端连接到VIP时,其流量会自动传输到适当的端点
谁是客户?群集中的其他服务或一些只使用你的应用程序的joe smo并且对kubernetes一无所知。
答案 0 :(得分:2)
VIP中的虚拟意味着IP未连接到网络接口,技术(在当前默认配置中为kube-proxy
)这意味着它是一个IPtables条目,纯粹用于提供稳定的通信端点。如果你想在具体的设置中看到它是如何工作的,我在博客文章Kubernetes Services By Example中更详细地写了这篇文章。
请注意,群集中的每个节点都包含所有与pod和服务相关的IPtables条目,这可能会导致scalability and performance issues。