安裝過程中的問題
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),天涯企業(yè)網(wǎng)站建設(shè),天涯品牌網(wǎng)站建設(shè),網(wǎng)站定制,天涯網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,天涯網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。https://kubernetes.io/docs/setup/independent/install-kubeadm/
官網(wǎng)ubuntu安裝命令
apt-get update && apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
cat <
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
apt-get update
apt-get install -y kubelet kubeadm kubectl
apt-mark hold kubelet kubeadm kubectl
1、源問題
此處kubernetes的源 我選擇的ustc源
因此/etc/apt/sources.list.d/kubernetes.list文件需要添加(ubuntu16.04代號(hào)為xenial),
deb https://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main
軟件源更改 /etc/apt/sources.list
# 默認(rèn)注釋了源碼倉庫,如有需要可自行取消注釋
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse#
預(yù)發(fā)布軟件源,不建議啟用# deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
2、swap問題
kubernetes需要關(guān)閉swap
swapoff -a
同時(shí)把/etc/fstab包含swap那行記錄刪掉。
3、image問題
安裝好kubectl,kubeadm,kubelet之后,使用kubectl init進(jìn)行初始化,初始化的時(shí)候默認(rèn)使用國外的鏡像。
因此可以使用kubeadm config images lsit --kunernetes-version v1.12.2(自己的版本號(hào))查看k8s都需要那些image,可以事先使用國內(nèi)能訪問的網(wǎng)站下載下來
使用kubeadm初始化的時(shí)候無法拉取鏡像
推薦使用anjia0532的鏡像,機(jī)器人自動(dòng)跟官方同步,非常及時(shí)。
docker pull anjia0532/google-containers.kube-controller-manager-amd64:v1.11.2
docker pull anjia0532/google-containers.kube-apiserver-amd64:v1.11.2
docker pull anjia0532/google-containers.kube-scheduler-amd64:v1.11.2
docker pull anjia0532/google-containers.kube-proxy-amd64:v1.11.2
docker pull anjia0532/google-containers.pause:3.1
docker pull anjia0532/google-containers.etcd-amd64:3.2.18
docker pull anjia0532/google-containers.coredns:1.1.3
然后重新tag
docker tag anjia0532/google-containers.kube-controller-manager-amd64:v1.11.2 k8s.gcr.io/kube-controller-manager-amd64:v1.11.2
docker tag anjia0532/google-containers.kube-apiserver-amd64:v1.11.2 k8s.gcr.io/kube-apiserver-amd64:v1.11.2
docker tag anjia0532/google-containers.kube-scheduler-amd64:v1.11.2 k8s.gcr.io/kube-scheduler-amd64:v1.11.2
docker tag anjia0532/google-containers.kube-proxy-amd64:v1.11.2 k8s.gcr.io/kube-proxy-amd64:v1.11.2
docker tag anjia0532/google-containers.pause:3.1 k8s.gcr.io/pause:3.1
docker tag anjia0532/google-containers.etcd-amd64:3.2.18 k8s.gcr.io/etcd-amd64:3.2.18
docker tag anjia0532/google-containers.coredns:1.1.3 k8s.gcr.io/coredns:1.1.3
再刪掉原來的image
docker rmi [imagename]
4、join加入master時(shí)的問題
因?yàn)槲业臏y試機(jī)時(shí)克隆的,所以3個(gè)主機(jī)名字是一樣的,加入的時(shí)候
kubeadm join IP:6443 --token xuzad4.qkfdi57gal2bkobo
在master上 kubectl get nodes看不到加入的節(jié)點(diǎn),發(fā)現(xiàn)問題的原因是主機(jī)名相同,修改主機(jī)名,Ubuntu修改方法 編輯/etc/hostname
修改完成之后使用kubeadm reset在節(jié)點(diǎn)主機(jī)上使用,重置,然后在使用kubeadm join命令,加入成功。
5、join之后各節(jié)點(diǎn)需要運(yùn)行一些組件
kubectl get nodes
可以查看到現(xiàn)有的節(jié)點(diǎn)仍處于not ready狀態(tài),當(dāng)各節(jié)點(diǎn)需要運(yùn)行的組件都啟動(dòng)正常之后會(huì)變?yōu)閞eady狀態(tài)
可以通過
kubectl get pod --all-namespaces
查看組件啟動(dòng)情況,若有組件未啟動(dòng)成功,可以使用
kubectl describe pod (上一命令查到的NAME) --namespace=kube-system
節(jié)點(diǎn)在ready的時(shí)候會(huì)創(chuàng)建一些容器,需要上邊列出的7個(gè)image中的一些,所以在節(jié)點(diǎn)機(jī)器上也要下載部分第3部中的image
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。