K8s v1.23.9 使用helm/DaemonSets安装calico网络组件
一. helm
- 安装helm,此处不在赘述,可在上一篇 K8s v1.23.9 使用helm安装calico网络组件 中找到
- 下载tigera-operator的helm chart:
wget https://github.com/projectcalico/calico/releases/download/v3.21.2/tigera-operator-v3.21.2-1.tgz
3.查看可定制的配置
helm show values tigera-operator-v3.21.2-1.tgz
可定制配置如下,可根据实际情况进行定制
imagePullSecrets: {}
installation:
enabled: true
kubernetesProvider: ""
apiServer:
enabled: true
certs:
node:
key:
cert:
commonName:
typha:
key:
cert:
commonName:
caBundle:
# Configuration for the tigera operator
tigeraOperator:
image: tigera/operator
version: v1.23.3
registry: quay.io
calicoctl:
image: quay.io/docker.io/calico/ctl
tag: v3.21.2
4.开始安装
helm install calico tigera-operator-v3.21.2-1.tgz -f values.yaml
等待并确认各个节点上的pod是否成功运行
watch kubectl get pods -n calico-system
# 默认你当前集群的所有节点上都会运行一个calico的pod
# NAME READY STATUS RESTARTS AGE
# calico-kube-controllers-7f58dbcbbd-kdnlg 1/1 Running 0 2m34s
# calico-node-nv794 1/1 Running 0 2m34s
# calico-typha-65f579bc5d-4pbfz 1/1 Running 0 2m34s
查看一下calico向k8s中添加的api资源:
kubectl api-resources | grep calico
bgpconfigurations crd.projectcalico.org/v1 false BGPConfiguration
bgppeers crd.projectcalico.org/v1 false BGPPeer
blockaffinities crd.projectcalico.org/v1 false BlockAffinity
caliconodestatuses crd.projectcalico.org/v1 false CalicoNodeStatus
clusterinformations crd.projectcalico.org/v1 false ClusterInformation
felixconfigurations crd.projectcalico.org/v1 false FelixConfiguration
globalnetworkpolicies crd.projectcalico.org/v1 false GlobalNetworkPolicy
globalnetworksets crd.projectcalico.org/v1 false GlobalNetworkSet
hostendpoints crd.projectcalico.org/v1 false HostEndpoint
ipamblocks crd.projectcalico.org/v1 false IPAMBlock
ipamconfigs crd.projectcalico.org/v1 false IPAMConfig
ipamhandles crd.projectcalico.org/v1 false IPAMHandle
ippools crd.projectcalico.org/v1 false IPPool
ipreservations crd.projectcalico.org/v1 false IPReservation
kubecontrollersconfigurations crd.projectcalico.org/v1 false KubeControllersConfiguration
networkpolicies crd.projectcalico.org/v1 true NetworkPolicy
networksets crd.projectcalico.org/v1 true NetworkSet
5.安装calicoctl作为kubectl的插件使用
# 安装
cd /usr/local/bin
curl -o kubectl-calico -O -L "https://github.com/projectcalico/calicoctl/releases/download/v3.21.2/calicoctl"
chmod +x kubectl-calico
# 验证插件是否工作
kubectl calico -h
二. DaemonSets-calico
1.使用官方远程calico安装
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
2.与使用helm安装的第四步后续一致,检查相应pod是否运行成功等等
end
参考文章、博客:
使用kubeadm部署Kubernetes 1.23
国内环境Ubuntu-20.04安装Kubernetes-1.23.9