k8s報錯:The connection to the server localhost:8080 was refused


k8s的node節點使用kubectl命令時,如kubectl get pods --all-namespaces 出現如下錯誤:

[root@k8s-node239 ~]# kubectl get pods
The connection to the server localhost:8080 was refused - did you specify the right host or port?

解決辦法1:使用一個非 root 賬戶登錄,然后運行下列命令:

sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
export KUBECONFIG=$HOME/admin.conf

解決辦法2:

  出現這個問題的原因是kubectl命令需要使用kubernetes-admin的身份來運行,在“kubeadm int”啟動集群的步驟中就生成了“/etc/kubernetes/admin.conf”。

因此,解決方法如下,將主節點中的【/etc/kubernetes/admin.conf】文件拷貝到工作節點相同目錄下:

#復制admin.conf,請在主節點服務器上執行此命令
scp /etc/kubernetes/admin.conf 172.16.2.202:/etc/kubernetes/admin.conf
scp /etc/kubernetes/admin.conf 172.16.2.203:/etc/kubernetes/admin.conf

然后分別在工作節點上配置環境變量:

#設置kubeconfig文件
export KUBECONFIG=/etc/kubernetes/admin.conf
echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile

 


免責聲明!

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



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