系列目錄html
由由種種緣由,在安裝或者使用kubernetes的過程當中,可能會遇到各類各樣的問題.本篇按照官網的介紹羅列出一些常見的故障,以幫助快速解決一些常見的錯誤.node
在執行kubeadm init
中出現如下警告docker
[preflight] WARNING: ebtables not found in system path [preflight] WARNING: ethtool not found in system path
這多是由於你的操做系統裏沒有安裝ebtables, ethtool
,能夠執行如下命令安裝ubuntu
對於ubuntu/debian用戶,執行apt install ebtables ethtool
centos
對於centos/Fedora用戶,執行yum install ebtables ethtool
api
如題,在執行kubeadm init
後,等到出現下面內容後命令一直掛起bash
[apiclient] Created API client, waiting for the control plane to become ready
這多是由多種緣由引發的,最爲常見的以下:網絡
網絡鏈接問題.請排查網絡鏈接是否正常.oop
kubelet 使用的默認的cgroup driver和docker使用的不同,經過查看(/var/log/messages)或者執行journalctl -u kubelet
看看是否有如下錯誤信息:操作系統
error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "systemd" is different from docker cgroup driver: "cgroupfs"
若是是這樣,能夠嘗試從新安裝docker來解決,也能夠經過更改kubelet的默認配置來手動與docker匹配,詳情參看這裏
sudo kubeadm reset [preflight] Running pre-flight checks [reset] Stopping the kubelet service [reset] Unmounting mounted directories in "/var/lib/kubelet" [reset] Removing kubernetes-managed containers (block)
這多是因爲docker中斷引發的,能夠經過journalctl -fu docker
來查看docker的輸出日誌幫助排查問題.通常狀況下能夠嘗試如下命令來解決問題
sudo systemctl restart docker.service sudo kubeadm reset
剛剛執行過kubeadm init
,不該該有pod的狀態爲以上中的狀態之一(正常狀況下都應該是Running
)
若是執行kubeadm init
後出現以上狀態,請到官方倉庫提出問題. coredns (或者kube-dns)在部署以前狀態是Pending
若是在部署了網絡組件(coredns或者kube-dns)以後仍然會出現以上狀態,這極可能是你安裝的網絡組件的問題,你能夠對它授予更高的RBAC權限或者安裝更新的版本