一文了解 Kubernetes中service原理

本文以ClusterIP类型的servic为例,详细阐明service的实现原理

在这里插入图片描述

Service创建流程

1.Master节点中的api server接收到创建service资源的事件,api server创建service资源;
2.Master节点中的 endpoint-controller会监听service,pod资源的创建,当service对象创建之后,endpoint-controller会根据service中的selector匹配相应的pod,然后生产endpoint对象;
3.Node节点上都会有kube-proxy组件去监听service对象以及endpoint对象,根据这两个对象的生成去修改iptabels或者IPVS的路由规则;
4.Node节点上会有DNS组件监听service对象的变更,形成service域名到ClusterIP的映射关系。

Service访问流程

1.Node上的Pod访问service时,首先会去DNS组件中根据需要访问的service域名查找ClusterIP;
2.Pod拿到ClusterIP后,经过iptabels或者IPVS时,会被重定向为service对应的Pod的真实IP。

猜你喜欢

转载自blog.csdn.net/moxiyi9990/article/details/120096612