美文网首页Kubernetes
Kubernetes | 二进制软件包方式部署 -- 部署 ku

Kubernetes | 二进制软件包方式部署 -- 部署 ku

作者: 奶茶不要奶不要茶 | 来源:发表于2022-05-27 23:54 被阅读0次
06 部署 kube-controller-manager 组件

Kubernetes 集群的大脑,是确保整个集群动起来的关键。

更多内容请移步 Kubernetes 官网详阅。

6.1 获取二进制软件包

在本地主机上操作。

将 kube-controller-manager 分发到 3 台服务器上。

cd /data/k8s-deploy/software/kubernetes-server-v1.23.6-linux-amd64

#K8S_HOST=(k8s-master-01 k8s-master-02 k8s-master-03)
#for h in ${K8S_HOST[@]};do scp kube-controller-manager root@$h:/usr/local/bin/;done
scp kube-controller-manager root@k8s-master-01:/usr/local/bin/
scp kube-controller-manager root@k8s-master-02:/usr/local/bin/
scp kube-controller-manager root@k8s-master-03:/usr/local/bin/
6.2 生成 kubeconfig 凭证文件

在本地主机上操作。

kubeconfig 是与 kube-apiserver 通信认证的文件,至关重要。

这里要用到 kubectl 命令来生成 kubeconfig,从 GitHub 下载。

将 kubectl 分发到 3 台服务器上,同时 kubectl 也存放在本地主机,后面在本地主机上生成 kubeconfig。

cd /data/k8s-deploy/software

wget https://github.com/pjgmow/kubernetes/releases/download/v1.23.6/kubectl-v1.23.6-linux-amd64.tar.gz
tar xf kubectl-v1.23.6-linux-amd64.tar.gz && cd kubectl-v1.23.6-linux-amd64/

#K8S_HOST=(k8s-master-01 k8s-master-02 k8s-master-03)
#for h in ${K8S_HOST[@]};do scp kubectl root@$h:/usr/local/bin/;done
scp kubectl root@k8s-master-01:/usr/local/bin/
scp kubectl root@k8s-master-02:/usr/local/bin/
scp kubectl root@k8s-master-03:/usr/local/bin/
cp kubectl /usr/local/bin/

生成 kubeconfig 之后将其分发到 3 台服务器上。

cd /data/k8s-deploy/kubeconfig

kubectl config set-cluster kubernetes \
--certificate-authority=../tls-csr/ca.pem \
--embed-certs=true \
--server=https://192.168.3.201:6443 \
--kubeconfig=kube-controller-manager.kubeconfig

kubectl config set-credentials system:kube-controller-manager \
--client-certificate=../tls-csr/kube-controller-manager.pem \
--client-key=../tls-csr/kube-controller-manager-key.pem \
--embed-certs=true \
--kubeconfig=kube-controller-manager.kubeconfig
     
kubectl config set-context system:kube-controller-manager \
--cluster=kubernetes \
--user=system:kube-controller-manager \
--kubeconfig=kube-controller-manager.kubeconfig
     
kubectl config use-context system:kube-controller-manager --kubeconfig=kube-controller-manager.kubeconfig

#K8S_HOST=(k8s-master-01 k8s-master-02 k8s-master-03)
#for h in ${K8S_HOST[@]};do scp kube-controller-manager.kubeconfig root@$h:/etc/kubernetes/kubeconfig/;done
scp kube-controller-manager.kubeconfig root@k8s-master-01:/etc/kubernetes/kubeconfig/
scp kube-controller-manager.kubeconfig root@k8s-master-02:/etc/kubernetes/kubeconfig/
scp kube-controller-manager.kubeconfig root@k8s-master-03:/etc/kubernetes/kubeconfig/
6.3 生成服务配置文件

在本地主机上操作。

k8s-deploy 已提供了 kube-controller-manager 的配置文件模板,文件中有几个内容需要修改:

__CLUSTER_POD_CIDR__:Kubernetes Pod 资源的网段
__CLUSTER_SERVICE_CIDR__:Kubernetes Service 资源的网段

修改配置文件内容,将其分发到 3 台服务器上。

cd /data/k8s-deploy/config

CLUSTER_POD_CIDR=172.16.0.0/12
CLUSTER_SERVICE_CIDR=10.0.0.0/12
sed -i "s#__CLUSTER_POD_CIDR__#${CLUSTER_POD_CIDR}#" kube-controller-manager.conf
sed -i "s#__CLUSTER_SERVICE_CIDR__#${CLUSTER_SERVICE_CIDR}#" kube-controller-manager.conf

#K8S_HOST=(k8s-master-01 k8s-master-02 k8s-master-03)
#for h in ${K8S_HOST[@]};do scp kube-controller-manager.conf root@$h:/etc/kubernetes/conf/;done
scp kube-controller-manager.conf root@k8s-master-01:/etc/kubernetes/conf/
scp kube-controller-manager.conf root@k8s-master-02:/etc/kubernetes/conf/
scp kube-controller-manager.conf root@k8s-master-03:/etc/kubernetes/conf/
6.4 生成服务启动管理文件

在本地主机上操作。

k8s-deploy 已提供了服务启动管理文件,不需要修改内容,直接分发到 3 台服务器即可。

cd /data/k8s-deploy/service

#K8S_HOST=(k8s-master-01 k8s-master-02 k8s-master-03)
#for h in ${K8S_HOST[@]};do scp kube-controller-manager.service root@$h:/etc/systemd/system/;done
scp kube-controller-manager.service root@k8s-master-01:/etc/systemd/system/
scp kube-controller-manager.service root@k8s-master-02:/etc/systemd/system/
scp kube-controller-manager.service root@k8s-master-03:/etc/systemd/system/
6.5 启动 kube-controller-manager 服务

分别在 3 台服务器上操作。

服务配置文件和服务启动管理文件都分发之后,分别登录到 3 台服务器上启动 kube-controller-manager 服务。

systemctl daemon-reload
systemctl enable kube-controller-manager
systemctl start kube-controller-manager
systemctl status kube-controller-manager

相关文章

网友评论

    本文标题:Kubernetes | 二进制软件包方式部署 -- 部署 ku

    本文链接:https://www.haomeiwen.com/subject/cpcpprtx.html