Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

'eksctl' hängt beim Warten auf Nodes im Cluster

By Vladik KhononovOct 23, 20192 min read

Diese Seite ist auch in English, Español, Français, Italiano, 日本語 und Português verfügbar.

1 6azquqzs s3yzqi gx4tvw

Viele unserer Kunden stoßen beim Anlegen eines Kubernetes-Clusters auf diese Fehlermeldung – ohne aussagekräftige Logs, die auf die Ursache hindeuten. So gehen wir in der Regel vor.

Wer mit `eksctl` Kubernetes-Cluster auf AWS EKS anlegt, erlebt es häufig: Der Prozess bleibt hängen, weil er auf das Beitreten der Nodes wartet, und es erscheint folgende Fehlermeldung:

> 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"

Die Meldung erscheint ohne weitere Logs, der Prozess läuft schließlich in einen Timeout, und die neu erstellten Nodes können keine Verbindung zum Kubernetes-Cluster aufbauen. Aus unserer Erfahrung bei DoiT International hat das Problem zwei typische Ursachen: eine fehlerhaft konfigurierte VPC oder fehlende Policies.

Fehlerhaft konfigurierte VPC

Wenn Sie ein bestehendes VPC-Netzwerk verwenden, müssen Sie sicherstellen, dass die VPC sämtliche EKS-spezifischen Anforderungen erfüllt [1, 2]. Der Blogbeitrag von logz.io liefert eine ausführliche Anleitung zur Einrichtung eines VPC-Netzwerks sowie ein Beispiel für ein AWS Cloud Formation Template, das Sie als Grundlage nutzen können [3].

Fehlende IAM-Policies

Eine weitere häufige Ursache sind die Policies AmazonEKSWorkerNodePolicy und AmazonEKS_CNI_Policy [4], die EKS-Worker-Nodes benötigen, um mit dem Cluster zu kommunizieren. Standardmäßig erzeugt eksctl automatisch eine Rolle mit diesen Policies. Wenn Sie jedoch über die Eigenschaft "attachPolicyARNs" gezielt Policies per ARN zuweisen, müssen Sie diese Policies explizit mit aufnehmen [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

Treten die Fehler weiterhin auf? Schildern Sie Ihre Situation gerne unter diesem Beitrag.

[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/