首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kubernetes中worker节点上的连接被拒绝错误

kubernetes中worker节点上的连接被拒绝错误
EN

Stack Overflow用户
提问于 2020-08-23 02:36:08
回答 6查看 2.2K关注 0票数 1

我正在kubernetes中设置一个2节点集群。1个主节点和1个从节点。在主节点上,我看到2个节点处于就绪状态(master和worker),但是当我尝试在worker节点上运行任何kubectl命令时,我收到如下所示的连接拒绝错误。我在.kube/ admin.conf中没有看到任何配置和设置。这些文件是否也需要在工作节点上?如果是这样的话,我如何获得它?如何解决下面的错误?感谢您的帮助

root@kubework:/etc/kubernetes# kubectl get节点到服务器localhost:8080的连接被拒绝-您是否指定了正确的主机或端口?

root@kubework:/etc/kubernetes# kubectl cluster-info

要进一步调试和诊断群集问题,请使用“kubectl cluster-info dump”。与服务器localhost:8080的连接被拒绝-您是否指定了正确的主机或端口?root@kubework:/etc/kubernetes#

EN

回答 6

Stack Overflow用户

发布于 2020-08-23 17:50:21

Kubcetl在默认情况下已配置,并在主服务器上运行。它需要kube-apiserver pod和~/.kube/config

对于工作节点,我们不需要使用kube-apiserver,但我们想要的是使用主配置传递它。为了实现这一点,我们必须将~/.kube/config文件从主服务器复制到工作进程上的~/.kube/config。值~,用户在worker和master上执行kubcetl (当然,这可能是不同的)。

完成此操作后,您可以从工作节点使用kubectl命令,就像从主节点执行此操作一样。

票数 3
EN

Stack Overflow用户

发布于 2020-08-23 02:47:10

是的,需要这些文件。将这些文件移动到工作节点上相应的.kube/config文件夹中。

票数 0
EN

Stack Overflow用户

发布于 2020-08-24 20:40:38

即使使用kubectl on master node作为非根帐户,这也是预期的行为,默认情况下,此配置文件是为/etc/kubernetes/admin.conf中的根帐户存储的

要使kubectl为非根用户工作,请运行以下命令,这些命令也是kubeadm init输出的一部分:

代码语言:javascript
复制
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

  • 或者在主服务器上,如果您是根用户,则可以运行:

代码语言:javascript
复制
    export KUBECONFIG=/etc/kubernetes/admin.conf

,可选的Controlling your cluster from machines other than the control-plane node

代码语言:javascript
复制
scp root@<control-plane-host>:/etc/kubernetes/admin.conf .
kubectl --kubeconfig ./admin.conf get nodes

Note

KUBECONFIG环境变量保存kubeconfig文件的列表。对于Linux和Mac,该列表以冒号分隔。对于Windows,该列表以分号分隔。不需要KUBECONFIG环境变量。如果kubectl环境变量不存在,则kubectl将使用缺省的KUBECONFIG文件$HOME/.kube/config.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63539796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档