Kubernetes Cluster- 使用 kubectl 时工作节点错误
Kubernetes Cluster- Worker node error while using kubectl
我已经创建了一个包含 2 个节点的 Kubernetes 集群,一个主节点和一个工作节点(2 个不同的虚拟机)。
工作节点已经成功加入集群,所以当我运行命令时:
kubectl get nodes
在我的主节点中,集群中似乎存在 2 个节点!
但是,当我从工作节点终端 运行 命令 kubectl apply -f https://k8s.io/examples/controllers/nginx-deployment.yaml
时,为了在工作节点中创建部署,出现以下错误:
The connection to the server localhost:8080 was refused. - did you specify the right host or port?
有什么帮助吗?
最简单的方法是从通常在这里找到的主节点复制配置:/etc/kubernetes/admin.conf,到您想要配置 kubectl 的任何节点(即使在主节点上)。要复制的位置是:$HOME/.kube/config
此外,您可以通过指定节点选择器或标签从主节点执行此命令。
您的 kubeconfig
文件似乎有问题,因为通常 localhost:8080
是在没有此文件的情况下连接的默认服务器。通常,Kubernetes 使用这个 file 来存储集群身份验证信息和 kubectl
在 运行 命令时引用的上下文列表 - 这就是为什么 kubectl
没有这个就无法正常工作文件。
要检查 kubeconfig 文件是否存在,请输入此命令:kubectl config view
。
或者只检查 $HOME/.kube
目录中是否存在名为 config
的文件,这是 kubeconfig
文件的默认位置。
如果不存在,您需要将配置文件复制到您的节点,例如:
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
sudo service kubelet restart
也可以用更困难的方式生成配置文件 - 而不是复制 - 如 here 所述。
我已经创建了一个包含 2 个节点的 Kubernetes 集群,一个主节点和一个工作节点(2 个不同的虚拟机)。
工作节点已经成功加入集群,所以当我运行命令时:
kubectl get nodes
在我的主节点中,集群中似乎存在 2 个节点!
但是,当我从工作节点终端 运行 命令 kubectl apply -f https://k8s.io/examples/controllers/nginx-deployment.yaml
时,为了在工作节点中创建部署,出现以下错误:
The connection to the server localhost:8080 was refused. - did you specify the right host or port?
有什么帮助吗?
最简单的方法是从通常在这里找到的主节点复制配置:/etc/kubernetes/admin.conf,到您想要配置 kubectl 的任何节点(即使在主节点上)。要复制的位置是:$HOME/.kube/config
此外,您可以通过指定节点选择器或标签从主节点执行此命令。
您的 kubeconfig
文件似乎有问题,因为通常 localhost:8080
是在没有此文件的情况下连接的默认服务器。通常,Kubernetes 使用这个 file 来存储集群身份验证信息和 kubectl
在 运行 命令时引用的上下文列表 - 这就是为什么 kubectl
没有这个就无法正常工作文件。
要检查 kubeconfig 文件是否存在,请输入此命令:kubectl config view
。
或者只检查 $HOME/.kube
目录中是否存在名为 config
的文件,这是 kubeconfig
文件的默认位置。
如果不存在,您需要将配置文件复制到您的节点,例如:
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
sudo service kubelet restart
也可以用更困难的方式生成配置文件 - 而不是复制 - 如 here 所述。