k8s安裝網絡插件flannel 時出現報錯Init:ImagePullBackOff 無法安裝成功


錯誤截圖如下:

 

 產生原因:

查看kube-flannel.yml文件時發現quay.io/coreos/flannel:v0.12.0-amd64

quay.io網站目前國內無法訪問

第一種解決辦法:

     下載flannel:v0.12.0-amd64導入到docker中

      可以去https://github.com/coreos/flannel/releases官方倉庫下載鏡像    

        

 

   第二種解決辦法:

      由於已經執行完命令【kubectl apply -f kube-flannel.yml】,執行完這個命令之后會自動生成一個文件,文件名為【kube-flannel.yml】,使用命令【cat kube-flannel.yml】可以打開這個文件

                     文件內部詳情為截圖:

                      

 

                

 

                   

        下拉鏡像:quay.io/coreos/flannel:v0.13.1-rc1
            如果拉取較慢,可以改為:quay-mirror.qiniu.com/coreos/flannel:v0.13.1-rc1

             下拉鏡像:gcr.io/google_containers/kube-proxy
            可以改為: registry.aliyuncs.com/google_containers/kube-proxy

                           

                         如何替換呢?

                           使用命令:【vi kube-flannel.yml】把截圖中紅框圈起來的地址替換掉

 

     第三種解決辦法:

                  由於鏡像地址是被屏蔽的,所以可以用加速器VPN,這樣啟動后就可以直接下載,也就不用修改yml文件了

 

 

  既然已經下載了部分插件,那么就得執行下刪除命令,刪除后,再重新下載

     卸載finnel插件命令

#第一步,在master節點刪除flannel
kubectl delete -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
 
#第二步,在node節點清理flannel網絡留下的文件
ifconfig cni0 down
ip link delete cni0
ifconfig flannel.1 down
ip link delete flannel.1
rm -rf /var/lib/cni/
rm -f /etc/cni/net.d/*
注:執行完上面的操作,重啟kubelet
systemctl restart kubelet

刪除命令執行完后,就是重新下載

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

 

第四種解決辦法:(推薦!!!)

        直接使用命令【vi kube-flannel.yml】更改鏡像源

    

 

     替換為國內源 【lizhenliang/flannel:v0.11.0-amd64

 

          替換完之后,執行刪除命令

kubectl delete -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

        然后再執行   【kubectl apply -f kube-flannel.yml

       

 

       最后用命令【kubectl get pods -n kube-system -o wide】   可以清楚看出來是哪個節點/IP上pod或者鏡像有問題

   

      總算給搞定了!

      kube-flannel插件是個坑,深深體會到了,上述總結為親身經歷,希望以后能爬更多的坑,解決更多的問題,如上為具體解決步驟


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM