eksctl卡在“等待节点加入集群”中

时间:2019-10-23 15:19:34

标签: kubernetes amazon-eks

在使用eksctl通过AWS EKS创建Kubernetes集群时,该过程陷入了等待节点加入集群的等待:

nodegroup "my-cluster" has 0 node(s)
waiting for at least 3 node(s) to become ready in “my-cluster”
timed out (after 25m0s) waiting for at least 3 nodes to join the cluster and become ready in "my-cluster"

该消息将显示,没有任何其他日志,直到该过程最终超时。看起来像是在幕后,新创建的节点无法与Kubernetes集群通信

2 个答案:

答案 0 :(得分:2)

使用现有VPC网络时,必须确保VPC符合所有EKS特定要求[1、2]。 logz.io的博客文章提供了有关设置VPC网络的详细指南,以及示例AWS Cloud Formation模板,您可以将其用作基础[3]。 缺少IAM政策 EKS辅助节点需要AmazonEKSWorkerNodePolicy和AmazonEKS_CNI_Policy策略[4]才能与集群进行通信。

默认情况下,eksctl自动生成一个包含这些策略的角色。但是,当您使用“ attachPolicyARNs”属性通过ARN附加特定策略时,您必须明确包含这些策略[5]:

nodeGroups:
 - name: my-special-nodegroup
  iam:
   attachPolicyARNs:
    - arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy
    - arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy
    - arn:aws:iam::aws:policy/ElasticLoadBalancingFullAccess

[1] https://docs.aws.amazon.com/eks/latest/userguide/create-public-private-vpc.html

[2] https://eksctl.io/usage/vpc-networking

[3] https://logz.io/blog/amazon-eks

[4] https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html

5] https://eksctl.io/usage/iam-policies/

答案 1 :(得分:0)

我遇到了同样的问题,并找到了造成此问题的真正原因。

问题在于创建的VPC。我还创建了VPC和子网,但是还没有创建引起问题的路由表和Internet门。

问题得到解决,一旦映射了路由表和Internet网关。