一张图看懂k8s flannel网路

二进制部署flannel插件,没有部署cni插件,需要在flannel配置文件指定生成docker网段,然后在docker.service中指定预定义网段,这样docker0会和flannel处于同一个网段,flanneld会在etcd中给每个node分配一个子网段,然后docker0在此子网段中分配pod ip。这样保证不同node上的任意一个pod 其ip都不会冲突。
在这里插入图片描述
kubeadm部署k8s,使用yaml部署flannel网络,已经默认安装cni插件,cni插件的作用其实就是代替docker0的作用。所以docker0的网络就无所谓冲突不冲突,但是cni只保证通过k8s创建的pod 网络分配,如果docker自身创建,不会遵守此规则。

在这里插入图片描述
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章