Amazon Kubernetes AWS-EKS 未正确创建或未与 kubectl 同步

Amazon Kubernetes AWS-EKS is not getting created properly or not synched with kubectl

逐步遵循此文档:

https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html?shortFooter=true

我使用 aws cli 而不是 UI 创建了 EKS 集群。所以我得到了以下输出

proxy-kube$ kubectl get svc 
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.100.0.1   <none>        443/TCP   18h

但是当我按照这个开始并将工作节点与集群相关联时,我得到

proxy-kube$ kubectl get nodes 
No resources found.

我可以在 AWS 控制台 (UI) 中看到创建和 运行 3 个 EC2 实例。 但我无法部署 运行 甚至留言簿应用程序。 当我部署应用程序时,我得到以下信息:

~$ kubectl get services -o wide
NAME           TYPE           CLUSTER-IP       EXTERNAL-IP                                                               PORT(S)          AGE       SELECTOR
guestbook      LoadBalancer   10.100.46.244    a08e89122c10311e88fdd0e3fbea8df8-1146802048.us-east-1.elb.amazonaws.com   3000:32758/TCP   17s       app=guestbook
kubernetes     ClusterIP      10.100.0.1       <none>                                                                    443/TCP          21h       <none>
redis-master   ClusterIP      10.100.208.141   <none>                                                                    6379/TCP         1m        app=redis,role=master
redis-slave    ClusterIP      10.100.226.147   <none>

但是如果我尝试访问 EXTERNAL-IP,它会显示

server is not reachable

在浏览器中。

也尝试获取 kubernetes 的仪表板,但它无法在 127.0.0.1:8001 上显示任何内容

有谁知道可能出了什么问题? 对此的任何帮助表示赞赏。

谢谢

看起来你的 kubelet(你的节点)没有向 master 注册。如果你没有任何节点,基本上你不能运行任何东西。

您可以通过 ssh 连接到其中一个节点并使用如下方式检查 kubelet 中的日志:

journalctl -xeu kubelet

此外,这将有助于 post kubectl describe deployment <deployment-name>kubectl get pods

的输出