我正在建立一个多节点、多硬件服务器的Kubernetes集群。我正在使用Calico和Kubeadm。
我使用vagrant与ansible和virtualbox在许多硬件服务器上设置节点accros网络,它是工作的,节点加入了使用kubeadm的join-command的主节点,主节点正在识别远程节点。
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
而env变量为空。
vagrant@Server-1-WORKER-1:~$ echo $KUBECONFIG
我想问一下,是否有人能帮我解决这个问题,设置正确的变量值,建立一个完整的工作集群。
谢谢你的帮助。
Kubeadm不会自动在工作节点上设置kubeconfig文件。/etc/kubernetes/admin.conf
从主节点转移到工作节点,并设置了 KUBECONFIG
环境变量,指向配置文件的路径。