Kubeadm部署Kubernetes( 二 )

#master上執行(10.0.0.101):# 在運行 kubeadm init 之前先執行 kubeadm config images pull 來測試與 gcr.io 的連接,kubeadm config images pull嘗試是否可以拉取鏡像,如果你的服務器再國內,由于某些原因,是無法訪問"k8s.gcr.io", "gcr.io", "quay.io"[root@k8s-master ~]#kubeadm config images list#查看kubeadm config 依賴的images有哪些#執行結果如下k8s.gcr.io/kube-apiserver:v1.23.8k8s.gcr.io/kube-controller-manager:v1.23.8k8s.gcr.io/kube-scheduler:v1.23.8k8s.gcr.io/kube-proxy:v1.23.8k8s.gcr.io/pause:3.6k8s.gcr.io/etcd:3.5.1-0k8s.gcr.io/coredns/coredns:v1.8.6#從國內鏡像拉取[root@master ~]#docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.23.8[root@master ~]#docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.23.8[root@master ~]#docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.23.8[root@master ~]#docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.23.8[root@master ~]#docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.6[root@master ~]#docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.5.1-0[root@master ~]#docker pull coredns/coredns:1.8.6#或者拉取最新版 , 一條命令如下:[root@k8s-master ~]#kubeadm config images pull --image-repository=registry.aliyuncs.com/google_containers#拉取鏡像#master上執行(10.0.0.101):#將拉取下來的images重命名為kubeadm config所需的鏡像名字#注意版本號有的是帶v的 , 有的不帶的v[root@master ~]#docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.23.8 k8s.gcr.io/kube-apiserver:v1.23.8[root@master ~]#docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.23.8 k8s.gcr.io/kube-controller-manager:v1.23.8[root@master ~]#docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.23.8 k8s.gcr.io/kube-scheduler:v1.23.8[root@master ~]#docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.23.8 k8s.gcr.io/kube-proxy:v1.23.8[root@master ~]#docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.6 k8s.gcr.io/pause:3.6[root@master ~]#docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.5.1-0 k8s.gcr.io/etcd:3.5.1-0[root@master ~]#docker tag coredns/coredns:1.8.6 k8s.gcr.io/coredns/coredns:v1.8.6#master上執行(10.0.0.101):#初始化[root@master ~]#kubeadm init --config kubeadm-config.yaml#如果提示以下信息,安裝成功 , 如果安裝失敗,請卸載kubectl、kubeadm、kubelet 然后再重新執行Your Kubernetes control-plane has initialized successfully!To start using your cluster, you need to run the following as a regular user:mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/configAlternatively, if you are the root user, you can run:export KUBECONFIG=/etc/kubernetes/admin.confYou should now deploy a pod network to the cluster.Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:https://kubernetes.io/docs/concepts/cluster-administration/addons/Then you can join any number of worker nodes by running the following on each as root:kubeadm join 10.0.0.101:6443 --token abcdef.0123456789abcdef \ --discovery-token-ca-cert-hash sha256:415922bb8c4fd6768756559cdabc18bacc8661c86ebd411be9e6cd1036041c09 #記住上邊的node加入集群的命令,如果忘記,可以使用如下命令獲?。?kubeadm token create --print-join-command

Kubeadm部署Kubernetes

文章插圖
4、部署node節點#所有node節點執行:#請確?;A環境已經部署好(時間同步,防火墻,解析 , swap,內核參數)[root@node ~]#apt-get install -y ca-certificates curl software-properties-common apt-transport-https curl[root@node ~]#apt-get update && apt-get install -y apt-transport-https[root@node ~]#curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -[root@node ~]# cat <<EOF >/etc/apt/sources.list.d/kubernetes.listdeb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial mainEOF[root@node ~]#apt update[root@node ~]#apt install -y kubelet=1.23.1-00 kubeadm=1.23.1-00 kubectl=1.23.1-00[root@node2 ~]#apt-mark hold kubelet kubeadm kubectl# 所有node節點執行:# 加入集群(master節點安裝完成后的提示命令)[root@node ~]#kubeadm join 10.0.0.101:6443 --token abcdef.0123456789abcdef \> --discovery-token-ca-cert-hash sha256:415922bb8c4fd6768756559cdabc18bacc8661c86ebd411be9e6cd1036041c09#提示以下信息,表示加入集群成功......This node has joined the cluster:* Certificate signing request was sent to apiserver and a response was received.* The Kubelet was informed of the new secure connection details.Run 'kubectl get nodes' on the control-plane to see this node join the cluster.# 如果此處報錯,則需要執行kubeadm reset重啟

推薦閱讀