amazon-web-services - Amazon Kubernetes AWS-EKS 未正确创建或未与 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
但是当我遵循这个入门并将 Worker 节点与集群相关联时,我得到了
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,它会显示
服务器无法访问
在浏览器中。
还尝试为 kubernetes 获取仪表板,但它未能在 127.0.0.1:8001 上显示任何内容
有谁知道可能出了什么问题?对此的任何帮助表示赞赏。
谢谢
解决方案
看起来你的 kubelet(你的节点)没有向 master 注册。如果您没有任何节点,则基本上您将无法运行任何东西。
您可以通过 ssh 进入其中一个节点并使用以下内容检查 kubelet 中的日志:
journalctl -xeu kubelet
此外,这将有助于发布kubectl describe deployment <deployment-name>
和kubectl get pods
推荐阅读
- python - 在一个图中绘制两个子图
- laravel - Laravel Guzzle HTTP 不断返回 404
- javascript - 从 Mixamo 下载的空闲动画不起作用
- typescript - 无法从 node_modules lib 导入接口
- django - 使用 django-markdownx 通过 S3 拖放图像时出现硬编码的 url 问题
- html - 在 vue 2 (V-Model) 中操作元素的数据
- java - 如何删除Android中Material DatePicker对话框中显示的日期名称
- angular - 使用 Chartjs Angular 按值排序和隐藏图例项目
- c# - 如何使用 blazor 创建实时数据 sql server
- mysql - 创建存储过程时出现语法错误