flannel詳解

分flanneld和flannel cni兩部分
flanneld在k8s每個(gè)node上都運(yùn)行一份
啟動(dòng)時(shí)創(chuàng)建本機(jī)的vxlan設(shè)備


image.png

負(fù)責(zé)監(jiān)聽k8s的node變化 并設(shè)置到其他node的路由。


image.png

flannel cni是個(gè)可執(zhí)行文件,k8s配置好使用flannel,當(dāng)k8s創(chuàng)建pod時(shí)就會(huì)調(diào)用flannel cni,flannel cni只是把配置翻譯一下傳給bridge cni。
bridge cni一樣是個(gè)可執(zhí)行文件,他主要工作是創(chuàng)建容器eth,并掛載cni0上,還可以設(shè)置容器網(wǎng)絡(luò)空間的路由等功能,在flannel場(chǎng)景下,這些配置信息都來(lái)之flannel cni。

flanneld和flannel cni的分工不同,一個(gè)負(fù)責(zé)node之間的通信,一個(gè)負(fù)責(zé)容器在node內(nèi)的通信(包括容器間和到vxlan設(shè)備的通信)。
或者按動(dòng)態(tài)和靜態(tài)的配置分也行,cni plugin負(fù)責(zé)靜態(tài)配置,flanneld則需要監(jiān)聽配置變化,實(shí)現(xiàn)動(dòng)態(tài)配置。

其余的k8s網(wǎng)絡(luò)實(shí)現(xiàn)也是這么分工的,分cni plugin和node上運(yùn)行的daemon,復(fù)雜點(diǎn)的自己再搞一套中控,配置些網(wǎng)絡(luò)層面的功能,flannel的配置都是來(lái)自k8s,沒(méi)有自己的中控。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容