Skip to content

Latest commit

 

History

History
58 lines (54 loc) · 1.84 KB

八、部署网络插件.md

File metadata and controls

58 lines (54 loc) · 1.84 KB

1、calico网络插件介绍

  • kubernetes 要求集群内各节点(包括 master 节点)能通过 Pod 网段互联互通。
  • calico 使用 IPIP 或 BGP 技术(默认为 IPIP)为各节点创建一个可以互通的 Pod 网络。
  • Calico 从 v3.13 开始,集成了 eBPF 数据平面(系统内核5.3+)

官网:https://www.tigera.io/project-calico/
官方文档:https://projectcalico.docs.tigera.io/about/about-calico

2、安装 calico 网络插件

~]# cd /opt/k8s/work
# #此下载的是最新版本的
]# curl https://docs.projectcalico.org/manifests/calico.yaml -O	

2.1:修改calico配置

]# vim calico.yaml
...
typha_service_name: "calico-typha"
# IP automatic detection
- name: IP_AUTODETECTION_METHOD
  value: "interface=ens33"		#根据实际网卡名称匹配

- name: CALICO_IPV4POOL_IPIP
  value: "Never"
- name: CALICO_IPV4POOL_CIDR
  value: "10.68.0.0/16"
- name: cni-bin-dir
  hostPath:
    path: /opt/k8s/bin
...
  • 将 Pod 网段地址修改为 10.68.0.0/16;与我们的全局变量以及kubelet config配置里的CLUSTER_CIDR变量的值保持一致

2.2:运行calico插件

]# kubectl apply -f calico.yaml

3、查看 calico 运行状态

]# kubectl get pods -n kube-system -o wide

4、安装calicoctl工具

~]# for node_ip in ${NODE_IPS[@]}
  do
    echo ">>> ${node_ip}"
    ssh root@${node_ip} "cd /opt/k8s/work && curl -L https://github.com/projectcalico/calico/releases/download/v3.24.3/calicoctl-linux-amd64 -o calicoctl && chmod +x calicoctl && mv calicoctl /usr/local/bin" 
  done
 
~]# calicoctl version
Client Version:    v3.24.3
Git commit:        d833a9e38

5、查看calico运行状态

~]# calicoctl node status