K8S安装过程十:Kubernetes CNI插件与CoreDNS服务部署

前置条件

已经完成 K8S安装过程九:Kubernetes Worker 节点安装 过程。


安装 CNI 查看与 CoreDNS 服务需要在 Kubernetes Master 节点上执行下面的操作命令。原因是部署 Calico 插件与 CoreDNS 服务用到了 kubectl 这个命令行工具,这个命令行工具依赖 ~/.kube/config 这个配置文件,目前只在 kubernetes master 节点中生成了这个文件。

1. 安装CNI插件

1.1 下载 CNI 插件

mkdir -p /opt/kubernetes/cni
cd /opt/kubernetes/cni
wget https://docs.projectcalico.org/manifests/calico.yaml 

1.2 修改 calico.yaml 配置信息

  • 在 name:IP 配置后边追加如下内容
           # Auto-detect the BGP IP address.
            - name: IP
              value: "autodetect"
           # append IP_AUTODETECTION_METHOD env
            - name: IP_AUTODETECTION_METHOD
              value: "interface=eth0"
  • 去掉下边变量前边的注释,并修改值
            - name: CALICO_IPV4POOL_CIDR
              value: "172.16.0.0/16"

CALICO_IPV4POOL_CIDR 的值必须与 K8S安装过程八:Kubernetes Master 节点安装 5.3 章节中 --cluster-cidr 值保持一致。

1.3 执行安装操作

kubectl apply -f calico.yaml

1.4 查看calico服务部署状态

kubectl get pods -A

在这里插入图片描述
上图中 calico-kube-controllers 服务有1个启动表示正常,calico-node 服务有3个,表示 kubernetes 集群有3个 kubernetes worker节点,每个 kubernetes worker 节点成功部署了calico-node 服务。提示:kubernetes 集群有多少个 kubernetes worker 节点,就会自动部署多少个 calico-node 服务。

2. 安装 CoreDNS 服务

2.1 获取 CoreDNS 安装文件

cd /opt
git clone https://github.com/coredns/deployment

2.2 部署 CoreDNS 服务

cd /opt/deployment/kubernetes
./deploy.sh -r 10.255.0.0/16 -i 10.255.0.2 > coredns.yaml
kubectl apply -f coredns.yaml

2.3 查看部署成功后的CoreDNS 服务

kubectl get pods -A

在这里插入图片描述
coredns 服务状态为 runing 且 READY 为 1/1 表示服务正常启动。

3. 检查 kubernetes 集群 worker 节点

kubectl get nodes -A

在这里插入图片描述
上图中 k8s-master1 与 k9s-master2 节点上除了执行 K8S安装过程八:Kubernetes Master 节点安装 ,还执行了 K8S安装过程九:Kubernetes Worker 节点安装 ,所以,k8s-master1 与 k8s-master2 节点除了作为集群的主节点外,还兼职作为Kubernetes worker 节点使用。在测试环境中可以这样用,可以尽量的使用虚拟机资源。但是在生产环境中不建议这么使用,保持master的纯粹性,禁止 Pod 被调度到 master 节点,从而影响到集群的管理节点性能。

猜你喜欢

转载自blog.csdn.net/hzwy23/article/details/128087870