k8s报错:The connection to the server localhost:8080 was refused

博客主要讲述k8s的node节点使用kubectl命令出现错误的解决办法。原因是kubectl命令需用kubernetes - admin身份运行,启动集群时生成了“/etc/kubernetes/admin.conf”。解决方法是将主节点该文件拷贝到工作节点相同目录,并在工作节点配置环境变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

k8s的node节点使用kubectl命令时,如kubectl get pods --all-namespaces 出现如下错误:

[root@k8s ~]# 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值