kubernetes:canal 部署

背景描述:
我们的k8s集群使用flannel cni插件,由于flannel 不支持 networkpolicy, 所以我们研究了其他的支持网络策略的cni,calico 和canal
为什么是canal
刚开始去研究了 calico ,发现calico支持 ipip 和bgp两种策略, 由于我们IT当前不支持BGP网络, 而IPIP模式对于calico而言,意义不是很大,所以决定部署更为简单的canal
什么是canal
Canal是Flannel和Calico联合发布的一个统一网络插件,提供CNI网络插件,并支持network policy
部署canal
使用k8s的etcd集群 部署canal ,如果集群中有其他的cni 先进行卸载
1.创建canal使用的RBAC权限

kubectl apply -f \
https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/canal/rbac-etcd.yaml

2.下载 manifest

curl \
https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/canal/canal-etcd.yaml \
-O

3.修改ConfigMap 中的etcd_endpoints 地址信息
4.部署canal服务

kubectl apply -f canal-etcd.yaml

你可能感兴趣的:(kubernetes)