摘要:?上節(jié)我們通過 kubeadm 在 k8s-master 上部署了 Kubernetes担锤,本節(jié)安裝 Pod 網絡并添加 k8s-node1 和 k8s-node2小作,完成集群部署萍诱。
上節(jié)我們通過 kubeadm 在 k8s-master 上部署了 Kubernetes鸽扁,本節(jié)安裝 Pod 網絡并添加 k8s-node1 和 k8s-node2,完成集群部署歧胁。
安裝 Pod 網絡
要讓 Kubernetes Cluster 能夠工作滋饲,必須安裝 Pod 網絡,否則 Pod 之間無法通信与帆。
Kubernetes 支持多種網絡方案了赌,這里我們先使用 flannel,后面還會討論 Canal玄糟。
執(zhí)行如下命令部署 flannel:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
添加 k8s-node1 和 k8s-node2
在 k8s-node1 和 k8s-node2 上分別執(zhí)行如下命令勿她,將其注冊到 Cluster 中:
kubeadm join --token d38a01.13653e584ccc1980 192.168.56.105:6443
這里的?--token?來自前面?kubeadm init?輸出的第 ⑨ 步提示,如果當時沒有記錄下來可以通過?kubeadm token list?查看阵翎。
kubeadm join?執(zhí)行如下:
根據提示逢并,我們可以通過?kubectl get nodes?查看節(jié)點的狀態(tài)。
目前所有節(jié)點都是?NotReady郭卫,這是因為每個節(jié)點都需要啟動若干組件砍聊,這些組件都是在 Pod 中運行,需要首先從 google 下載鏡像贰军,我們可以通過如下命令查看 Pod 的狀態(tài):
kubectl get pod --all-namespaces
Pending玻蝌、ContainerCreating、ImagePullBackOff?都表明 Pod 沒有就緒词疼,Running?才是就緒狀態(tài)俯树。我們可以通過?kubectl describe pod ?查看 Pod 具體情況,比如:
kubectl describe pod kube-flannel-ds-v0p3x --namespace=kube-system
為了節(jié)省篇幅贰盗,這里只截取命令輸出的最后部分许饿,可以看到在下載 image 時失敗,如果網絡質量不好舵盈,這種情況是很常見的陋率。我們可以耐心等待,因為 Kubernetes 會重試秽晚,我們也可以自己手工執(zhí)行?docker pull?去下載這個鏡像瓦糟。
等待一段時間,image 都成功下載后赴蝇,所有 Pod 會處于?Running?狀態(tài)狸页。
這時,所有的節(jié)點都已經?Ready扯再,Kubernetes Cluster 創(chuàng)建成功芍耘,一切準備就緒。
小結
本章通過 kubeadm 部署了三節(jié)點的 Kubernetes 集群熄阻,后面章節(jié)我們都將在這個實驗環(huán)境中學習 Kubernetes 的各項技術斋竞。
書籍:
1.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html
2.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html
版權聲明:本文內容由互聯網用戶自發(fā)貢獻,版權歸作者所有秃殉,本社區(qū)不擁有所有權坝初,也不承擔相關法律責任。如果您發(fā)現本社區(qū)中有涉嫌抄襲的內容钾军,歡迎發(fā)送郵件至:yqgroup@service.aliyun.com?進行舉報鳄袍,并提供相關證據,一經查實吏恭,本社區(qū)將立刻刪除涉嫌侵權內容拗小。