今天在 Kubernetes 的 node 节点上运行命令 [ kubectl ] 命令出现了如下错误
- [[email protected] ~]# kubectl -s 10.0.0.31:8080 get nodes
- The connection to the server 10.0.0.31:8080 was refused - did you specify the right host or port?
出现这个问题的原因是 kubectl 命令需要使用 kubernetes-admin 来运行, 解决方法如下, 将主节点中的 / etc/kubernetes/admin.conf 文件拷贝到从 node 节点相同目录下, 然后配置环境变量:
即刻生效
# echo "export KUBECONFIG=/etc/kubernetes/admin.conf">> ~/.bash_profile
在次尝试运行 kubectl 命令就成功了
这里我们会发现, 为何不需要指定 API-server 地址就可以直接执行相关命令, 那是因为刚刚我们从 master 节点拷贝过来的 admin.conf 这个配置文件存放的是 k8s 用户权限相关的配置!!
来源: http://www.bubuko.com/infodetail-3298457.html