十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
本篇文章給大家分享的是有關(guān)Rancher 2.0部署過(guò)程中常見(jiàn)問(wèn)題分析與解決方法,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
在榮縣等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營(yíng)銷型網(wǎng)站,成都外貿(mào)網(wǎng)站制作,榮縣網(wǎng)站建設(shè)費(fèi)用合理。
Rancher 2.0部署與使用過(guò)程中常見(jiàn)的問(wèn)題及其解決方法,多數(shù)問(wèn)題整理收集自Rancher官方技術(shù)交流群內(nèi)用戶的提問(wèn)與反饋。環(huán)境需求
推薦使用的操作系統(tǒng)
Ubuntu 16.04 (64-bit)
Red Hat Enterprise Linux 7.5 (64-bit)
RancherOS 1.3.0 (64-bit)
推薦的硬件配置
支持的docker版本
1.12.6
1.13.1
17.03.02
防火墻請(qǐng)?jiān)试S通過(guò)已下端口
環(huán)境信息殘留
目前部署中,大部分問(wèn)題都是因?yàn)橛捎诓渴瓠h(huán)境的操作系統(tǒng),或多次部署,升級(jí)后殘留的的信息造成的。
部署前或部署時(shí),請(qǐng)使用以下命令將環(huán)境的各類信息清理干凈:
df -h|grep kubelet |awk -F % '{print $2}'|xargs umount rm /var/lib/kubelet/* -rf rm /etc/kubernetes/* -rf rm /var/lib/rancher/* -rf rm /var/lib/etcd/* -rf rm /var/lib/cni/* -rf iptables -F && iptables -t nat –F ip link del flannel.1 docker ps -a|awk '{print $1}'|xargs docker rm -f docker volume ls|awk '{print $2}'|xargs docker volume rm
openssh版本過(guò)低問(wèn)題
centos或rhel系統(tǒng)并且版本低于7.4的,因?yàn)槟J(rèn)的openssh和openssl和紅帽系ssh默認(rèn)將AllowTcpForwarding 關(guān)閉了,rke部署時(shí)會(huì)出現(xiàn)如下問(wèn)題:
參考issue:
https://github.com/rancher/rke/issues/93
需要您進(jìn)行以下操作:
確保您的openssh版本大于等于7.x
修改sshd配置打開(kāi)重啟sshd
默認(rèn)centos和rhel不能使用root用戶進(jìn)行ssh tunnel,所以需要使用一個(gè)普通用戶
并將這個(gè)用戶加入docker這個(gè)Group,useradd –G docker yourusername
nodeport端口只有一臺(tái)機(jī)器能訪問(wèn)
只能訪問(wèn)一臺(tái)宿主機(jī)的nodeport,并且還是pod所在那臺(tái)機(jī)器,出現(xiàn)這種問(wèn)題很大原因是因?yàn)榭缂壕W(wǎng)絡(luò)有問(wèn)題,或本地防火墻問(wèn)題。排查思路如下:
1、在宿主機(jī)本機(jī)telnet localhost:nodeort看看是否能通,本機(jī)能通,在集群內(nèi)互相telnet測(cè)試,如果不能通根部署環(huán)境網(wǎng)絡(luò)有很大關(guān)系,建議聯(lián)系網(wǎng)絡(luò)管理員進(jìn)行排查。
如果本機(jī)telnet也不能通,進(jìn)行如下測(cè)試。
2、首先我們需要或取對(duì)應(yīng)的pod 信息
比如我這個(gè)test-6b4cdf4ccb-7pzt6在rancher-kf-worker01節(jié)點(diǎn)上,它的ip為10.42.3.23
3、先在pod所在的宿主機(jī)上然后在另外幾個(gè)節(jié)點(diǎn)去ping這個(gè)ip,看看能否ping通,在canal網(wǎng)絡(luò)模式下,請(qǐng)檢查防火墻端口8472/UDP是否開(kāi)放。查看每天機(jī)器上是否有嘗試使用每臺(tái)機(jī)器的flannel.1網(wǎng)卡,用的話,用flannel.1上的ip互相ping,看看是否能通,因?yàn)閒lannel網(wǎng)絡(luò)和canal網(wǎng)絡(luò)是通過(guò)flannel.1網(wǎng)卡互相建立vxlan遂道的。建議操作在關(guān)閉防火墻的情況下測(cè)試。
部署使用calico網(wǎng)絡(luò)部署環(huán)境失敗問(wèn)題
部署rancher2.0時(shí)網(wǎng)絡(luò)類型為calico時(shí),如果cloud provider默認(rèn)不填會(huì)選用公有云的,導(dǎo)致部署失敗,所以這里我們需要手動(dòng)填寫(xiě)為none。(后期會(huì)優(yōu)化此項(xiàng))
部署時(shí)主機(jī)not found問(wèn)題
出現(xiàn)這個(gè)問(wèn)題是因?yàn)樗拗鳈C(jī)的主機(jī)名不符合kubernetes的標(biāo)準(zhǔn)主機(jī)名要求也不符合標(biāo)準(zhǔn)的linux主機(jī)名,主機(jī)名內(nèi)不能有下劃線。
獲取組件健康狀態(tài)forbidden問(wèn)題
大部分原因是因?yàn)椴渴鸲啻?,證書(shū)殘留的導(dǎo)致的,解決辦法,按照環(huán)境信息殘留里面的方法把環(huán)境清空下,在重新添加。
web頁(yè)面kubectl閃退問(wèn)題
這個(gè)主要根操作系統(tǒng)版本和瀏覽器的版本有關(guān)系,請(qǐng)使用上推薦使用操作系統(tǒng)中的操作系統(tǒng),瀏覽器使用Chrome
非worker節(jié)點(diǎn)仍然被調(diào)度pod問(wèn)題
目前rancher2.0非worker節(jié)點(diǎn),仍然會(huì)被調(diào)度pod過(guò)去,您可以選擇手動(dòng)將它們從kube-scheduler踢除,命令如下:
在獲取節(jié)點(diǎn)在kubernetes集群的名字
打開(kāi)web頁(yè)面kubectl
然后執(zhí)行
kubectl taint node rancher-kf-control01 node-role.kubernetes.io/rancher-kf-control01="":NoSchedule kubectl taint node rancher-kf-control02 node-role.kubernetes.io/rancher-kf-control02="":NoSchedule kubectl taint node rancher-kf-control03 node-role.kubernetes.io/rancher-kf-control03="":NoSchedule
it is a not share mount問(wèn)題
部署時(shí)遇到share mount問(wèn)題時(shí),報(bào)錯(cuò)提示如下:
FATA[0180] [workerPlane] Failed to bring up Worker Plane: Failed to start [kubelet] container on host [192.168.10.51]: Error response from daemon: linux mounts: Path /var/lib/kubelet is mounted on / but it is not a shared mount.
這個(gè)問(wèn)題原因主要是kubelet容器化部署,需要手動(dòng)設(shè)置docker的MuntFLAGS為空
https://github.com/kubernetes/kubernetes/issues/4869#issuecomment-195696990
解決方法:
執(zhí)行
mount --make-shared /
或配置docker.server
MountFlags=shared
重啟docker.service
NetworkRedy=false問(wèn)題
這個(gè)問(wèn)題通常是,在部署時(shí)網(wǎng)絡(luò)組件在初始化,在配置,等待段時(shí)間就好了?;蛟趯?duì)應(yīng)節(jié)點(diǎn)查看kubelet日志的docker logs kubelet。
集群unavailable
通常此問(wèn)題,是因?yàn)閞ancher-server根kubernetes中的kube-apiserver 6443端口連接有問(wèn)題,建議檢查防火墻和查看kube-api-server的日志。
1、部署時(shí)能?chē)?yán)格按照官方給出的操作系統(tǒng)版本和docker版本部署,可以避免掉很多問(wèn)題。
2、多次部署,升級(jí),環(huán)境一定要按照環(huán)境信息殘留章節(jié)的命令,將環(huán)境清理干凈。
3、如果遇到問(wèn)題,建議docker logs 查看rancher-agent,rancher-server的日志。
以上就是Rancher 2.0部署過(guò)程中常見(jiàn)問(wèn)題分析與解決方法,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。