k8s series初級calico使用介紹
calico簡介
calico是什么?
Calico 是一個開源網(wǎng)絡(luò)和網(wǎng)絡(luò)安全解決方案,適用于容器、虛擬機(jī)和基于主機(jī)的本地工作負(fù)載。Calico支持廣泛的平臺,包括 Kubernetes、OpenShift。
無論使用Calico的eBPF數(shù)據(jù)平面還是 Linux 的標(biāo)準(zhǔn)網(wǎng)絡(luò)管道,Calico都能提供極快的性能和真正的云原生可擴(kuò)展性
Calico支持公有云和本地運行,支持在單個節(jié)點或數(shù)千個節(jié)點集群中運行
calico優(yōu)點
- 支持linux eBPF數(shù)據(jù)通道,標(biāo)準(zhǔn)的linux網(wǎng)絡(luò)數(shù)據(jù)通道,還支持windows HNS數(shù)據(jù)通道
- 豐富的網(wǎng)絡(luò)策略,內(nèi)置對wireguard加密支持,保護(hù)pod-pod數(shù)據(jù)安全
- Calico使Linux eBPF或Linux內(nèi)核高度優(yōu)化的標(biāo)準(zhǔn)網(wǎng)絡(luò)管道來提供高性能網(wǎng)絡(luò)
- Calico的控制平面和策略引擎做了很好的調(diào)整,使占用和使用cpu率最小化
- 支持超級可擴(kuò)展性,滿足幾十節(jié)點,到十千個節(jié)點的伸縮
- 支持L2,L3層網(wǎng)絡(luò)
- 不對數(shù)據(jù)進(jìn)行解包壓包,不需要nat和端口映射,性能強(qiáng)悍
calico安裝
將calico安裝在kubenetes集群中有很多種方式,這里選擇一種比較方便的yaml文件方式
#3.20版本只支持1.19 1.20 1.21 #版本之間可能不兼容,具體細(xì)節(jié)需要查看官網(wǎng)說明 wget https://docs.projectcalico.org/v3.20/manifests/calico.yaml kubectl apply -f calico.yaml #查看已部署的caclico,默認(rèn)情況是一個calico控制器和N個calico node kubectl get pods -A -o wide| grep calico
默認(rèn)安裝的calico,管理的節(jié)點不超過50個,且數(shù)據(jù)存儲交由kubenetes api負(fù)責(zé),數(shù)據(jù)真實還是存在etcd中
calico組件
- Felix: agent進(jìn)程,以DaemonSet方式安裝在每個節(jié)點,負(fù)責(zé)網(wǎng)絡(luò)接口管理,路由,ARP,ACL的管理,狀態(tài)上報,同步等
- calico-controller: calico控制器,監(jiān)聽和變更來源于kubernetes的資源
- calicoctl:calico的cli工具,方便對calico排錯
- typha: 大于50個節(jié)點,使用typha代替apiServer來和ectd交互
- bird: 從Felix獲取路由并分發(fā)到網(wǎng)絡(luò)上的 BGP對等點,以進(jìn)行主機(jī)間路由。在托管 Felix 代理的每個節(jié)點上運行,是路由的守護(hù)進(jìn)程
- confd: 監(jiān)視Calico的存儲,以便查看BGP配置和全局缺省值進(jìn)行更新。
- Datastore plugin: 通過減少每個節(jié)點對數(shù)據(jù)存儲的影響來增加規(guī)模,是Calico CNI插件之一
- IPAM plugin: 使用 Calico的IP池資源來控制如何將 IP 地址分配給集群中的豆莢。 Calico 默認(rèn)CNI插件
- etcd: 分布式鍵值存府,主要負(fù)責(zé)網(wǎng)絡(luò)無數(shù)據(jù)一致性,確保calico網(wǎng)絡(luò)狀態(tài)的準(zhǔn)確性,默認(rèn)情況共用k8s集群的etcd
以上就是k8s series初級calico使用介紹的詳細(xì)內(nèi)容,更多關(guān)于k8s series初級calico的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
kubernetes部署dashboard及應(yīng)用小結(jié)
Dashboard?是基于網(wǎng)頁的?Kubernetes?用戶界面,可以對?Deployment?實現(xiàn)彈性伸縮、發(fā)起滾動升級、重啟?Pod?或者使用向?qū)?chuàng)建新的應(yīng)用,這篇文章主要介紹了kubernetes部署dashboard,需要的朋友可以參考下2024-06-06