在《Flannel网络以及在阿里云下的实现解析》中说过在Kubernetes中网络中,主要包含两种IP,分别是Pod IP和Cluster IP。 Pod IP是实际存在于网卡之上(如VETH的虚拟网卡),而Cluster IP则是一个虚拟的IP地址,该虚拟机IP由kube-proxy进行维护,kube-proxy目前提供了两种实现方式,包括默认的ip tables实现以及在K8S 1.8之后开始支持的ipvs实现。文章中以阿里云Kubernetes集群为例,从Pod IP的角度介绍了Pod和Pod之间是如何通讯的。这篇文章,笔者将解释基于ClusterIP的服务发现是个什么鬼。