没有在 Kubernetes worker 节点上提供任何配置

No configuration has been provided on Kubernetes worker nodes

我正在设置一个多节点、多硬件服务器 Kubernetes 集群。我正在使用 Calico 和 Kubeadm。

我使用带有 ansible 和 virtualbox 的 vagrant 在许多硬件服务器上通过网络设置节点。 它正在工作,节点使用 kubeadm 使用 join-command 加入主节点。 并且master正在识别远程节点。

vagrant@Server-1-MASTER:~$ kubectl get nodes
NAME                STATUS   ROLES    AGE     VERSION
master              Ready    master   3h37m   v1.18.2
server-1-worker-1   Ready    <none>   3h23m   v1.18.2
server-2-worker-1   Ready    <none>   171m    v1.18.2
server-2-worker-2   Ready    <none>   41m     v1.18.2

我正面临一个配置问题,我正在尝试修复该问题以设置工作节点的规则和访问权限。

问题: 在工人身上,发生错误

no configuration has been provided, try setting KUBERNETES_MASTER environment variable

使用 kubectl 命令时

vagrant@Server-1-WORKER-1:~$ kubectl get pods

error: no configuration has been provided, try setting KUBERNETES_MASTER 

environment variable

vagrant@Server-1-WORKER-1:~$ kubectl get ns

error: no configuration has been provided, try setting KUBERNETES_MASTER 

environment variable

环境变量为空:

vagrant@Server-1-WORKER-1:~$ echo $KUBECONFIG


我想问是否有人可以帮我解决这个问题,设置正确的变量值来构建一个完整的工作集群。

谢谢。

Kubeadm 不会在工作节点上自动设置 kubeconfig 文件 nodes.Copy 位于 /etc/kubernetes/admin.conf 的 kubeconfig 文件从主节点到工作节点并设置 KUBECONFIG 环境变量指向到配置文件的路径。

将 /etc/kubernetes/admin.conf 从主节点复制到工作节点到同一位置。

然后导出验证。

导出 KUBECONFIG=/etc/kubernetes/admin.conf