环境详细信息:
Kubernetes version: `v1.20.2`
Master Node: `Bare Metal/Host OS: CentOS 7`
Worker Node: `VM/Host OS: CentOS 7`
我已经安装了&配置了Kubernetes集群,在裸机服务器上的主节点&windows server 2012 HyperV虚拟机的worker节点。主节点和工作节点都有相同的Kubernetes版本(v1.20.2) ¢os7。工作节点成功加入到主节点,下面是获取节点状态。
$ kubectl get nodes
**NAME STATUS ROLES AGE VERSION
k8s-worker-node1 Ready <none> 2d2h v1.20.2
master-node Ready control-plane,master 3d4h v1.20.2**
在工作节点上创建部署时,我得到以下错误消息:
在工作节点上,我发出以下命令:
$ kubectl create deployment nginx-depl --image=nginx
Error message is:
error: failed to create deployment: Post “http://localhost:8080/apis/apps/v1/namespaces/default/deployments?fieldManager=kubectl-create”: dial tcp: lookup localhost on 8.8.8.8:53: no such host
请帮我解决这个问题,因为我不明白是什么问题。
可能您必须先运行minikube start
。我正在学习,在一节课和另一节课之间,我忘记运行这个命令。我希望我对某人有所帮助。
这对我很有用。
看起来您正在工作节点上发出kubectl create deployment
命令。这不起作用,因为kubectl命令与kub- apisserver进行集群通信。由于apiserver不在工作节点上运行,在其上执行命令将引发错误。
在主节点上执行相同的kubectl
命令作为非root用户使用以下附加命令,
$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
$ kubectl create deployment nginx-depl --image=nginx