Kubernetes node节点执行kubectl命令

Kubernetes node节点执行kubectl命令

集群搭建完成后,在Kubernetes的从节点上运行命令kubectl出现了如下错误:

[root@master ~]# kubectl get nodes

error: no configuration has been provided, try setting KUBERNETES_MASTER environme

原因是kubectl命令需要使用kubernetes-admin来运行。现在就去看看如何破解这个问题。

  1. 复制/etc/kubernetes/admin.conf 文件
    解决方法如下,将主节点中的【/etc/kubernetes/admin.conf】文件拷贝到从节点相同目录下,然后配置环境变量。
    我这里使用scp命令复制:
[root@node1 kubernetes]# scp root@192.168.1.12:/etc/kubernetes/admin.conf /etc/kubernetes/
The authenticity of host '192.168.1.12 (192.168.1.12)' can't be established.
ECDSA key fingerprint is SHA256:EG26pBKAbxAddDFuh6N81IY7sXWCoblngfn1oRbpNeU.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.12' (ECDSA) to the list of known hosts.
root@192.168.1.12's password:
admin.conf                                                                                   100% 5452    68.8KB/s   00:00

  1. 设置环境变量
    环境变量可在 ~/.bash_profile,修改 vim /etc/profile 配置文件,添加如下配置
export KUBECONFIG=/etc/kubernetes/admin.conf

保存退出,执行 source /etc/profile,配置立即生效。

  1. 查看验证kubectl命令
    在从节点上执行如下命令
kubectl get pods -n kube-system

kubectl get nodes

发现可以正常展示信息。
这里我们会发现,为何不需要指定api-server地址就可以直接执行相关命令,那是因为刚刚我们从master节点拷贝过来的admin.conf这个配置文件存放的是Kubernetes用户权限相关的配置。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值