k8s网络小结

k8s网络小结

service是一组pod的服务抽象,相当于一组pod的LB,负责将请求分发给对应的pod。

service会为这个LB提供一个ip,一般称为cluster IP。

kube-proxy的作用主要是负责service的实现,具体来说,就是实现了内部从pod到service和外部的从node port向service的访问。举个例子,

现在有podA,podB,podC和serviceAB。serviceAB是podA,podB的服务抽象(service)。那么kube-proxy的作用就是可以将pod(不管是podA,podB或者podC)向serviceAB的请求,进行转发到service所代表的一个具体pod(podA或者podB)上。

请求的分配方法一般分配是采用轮询方法进行分配。另外,kubernetes还提供了一种在node节点上暴露一个端口,从而提供从外部访问service的方式。比如我们使用这样的一个manifest来创建service

cni说明在这-------------------https://www.kubernetes.org.cn/6908.html

cni和service是两个不同的东西,CNI只能对一个pod,一个pod要有一个网卡。 service实现的LB后盾可以接多个pod。

根据实际应用场景的需求进行选择。

cni插件有各种开源的插件。比如我司使用的就是kube-OVN,通过隧道打通网络,不依赖底层网络的overlay网络模式。

pod对外的访问走了lb ->service->pod

pod内部访问有部分内部服务走的是这个,虚拟机之间走的是纯pod(也可以配service,暂时没看到用户配)

posted @ 2021-03-02 16:54  iceMyon  阅读(72)  评论(0)    收藏  举报