離線安裝Kubernetes v1.17.1 - 離線部署

目標

在沒有互聯(lián)網(wǎng)到企業(yè)內(nèi)網(wǎng)部署Kubernetes集群

目錄

2020年2月21日更新:

為了簡化安裝過程,我將第一篇文章做好的離線資源包上傳百度云,大家可以下載直接使用。https://pan.baidu.com/s/176xRjEM8PC698zVH9TdacA 提取碼: bhmn

為了大家學習方便,請見Kubernetes離線部署視頻教程

環(huán)境

  • CentOS Linux release 7.7.1908 (Core)
  • Docker 19.03.5
  • Kubernetes 1.17.1
  • Master節(jié)點 192.168.1.30
  • Worker節(jié)點 192.168.1.31

安裝Master

master節(jié)點上執(zhí)行。

  1. scp命令上傳資源包到/root目錄下解壓,192.168.1.30改為你節(jié)點的IP。
scp k8sOfflineSetup.tar.gz root@192.168.1.30:/root
  1. 解壓到/root/k8sOfflineSetup目錄

??注意:解壓路徑不能修改。

mkdir /root/k8sOfflineSetup
tar -xzvf k8sOfflineSetup.tar.gz -C /root/k8sOfflineSetup 
  1. 設置參數(shù)并安裝
# master節(jié)點的主機名
export HOSTNAME=k8s-master
# kubernetes apiserver的主機地址
export APISERVER_NAME=apiserver.k8s.com
# 集群中master節(jié)點的ip地址
export MASTER_IP=192.168.1.30
# Pod 使用的網(wǎng)段
export POD_SUBNET=10.11.10.0/16

cd /root/k8sOfflineSetup
./setup_master.sh

安裝Worker

worker節(jié)點上執(zhí)行。

  1. scp命令上傳資源包到/root目錄下解壓,192.168.1.31改為你節(jié)點的IP。
scp k8sOfflineSetup.tar.gz root@192.168.1.31:/root
  1. 解壓到/root/k8sOfflineSetup目錄

??注意:解壓路徑不能修改。

mkdir /root/k8sOfflineSetup
tar -xzvf k8sOfflineSetup.tar.gz -C /root/k8sOfflineSetup 
  1. 獲取加入master的參數(shù)

??注意:是在master節(jié)點上執(zhí)行。

# 在 master 節(jié)點執(zhí)行
kubeadm token create --print-join-command

# 得到token和cert,這兩個參數(shù)在2個小時內(nèi)可以重復使用,超過以后就得再次生成
kubeadm join apiserver.k8s.com --token mpfjma.4vjjg8flqihor4vt     --discovery-token-ca-cert-hash sha256:6f7a8e40a810323672de5eee6f4d19aa2dbdb38411845a1bf5dd63485c43d303
  1. 設置參數(shù)并安裝
# worker節(jié)點的主機名
export HOSTNAME=k8s-worker2
# kubernetes apiserver的主機地址
export APISERVER_NAME=apiserver.k8s.com
# 集群中master節(jié)點的ip地址
export MASTER_IP=192.168.1.30
# 加入master的token
export TOKEN=35jn30.4ru763yqfvp4j89m
# 加入master的證書
export CERT=sha256:4c720c8dbf3f91a542ee892188108f99ff80ba1025099a8210145917b1f13a13
cd /root/k8sOfflineSetup
./setup_worker.sh

完成

現(xiàn)在你可以在master節(jié)點,執(zhí)行kubectl get nodes看到所有節(jié)點都在線了,是不是非??炀屯瓿刹渴鹆?。

訪問Kuboard

Kuboard是一個非常方便的web管理界面,安裝完以后可以通過http://任意節(jié)點IP:32567/訪問。詳細使用請參考 <www.kuboard.cn>

獲取登陸Token

# 在 Master 節(jié)點上執(zhí)行此命令
kubectl -n kube-system get secret $(kubectl -n kube-system get secret | grep kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d

訪問Kubernetes Dashboard

請參加我的另一篇文章:從零開始部署Kubernetes v1.17.1集群(四)部署可視化管理工具

常見問題

Pod啟動報鏡像拉取失敗

有些部署文件中設置了鏡像拉取策略為imagePullPolicy:Always,意思是每次啟動都要拉取鏡像,修改為imagePullPolicy:IfNotPresent如果不存在才拉取就行了。不過你應該記得要把每個節(jié)點包括master和worker都導入鏡像才行。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容