- Newest
- Most votes
- Most comments
Based on your description, there are several potential issues preventing your worker nodes from registering with the EKS control plane:
-
Bootstrap Script Configuration: For nodes without outbound internet access or in complex networking scenarios like yours (Wavelength in Casablanca connecting to control plane in Paris), the bootstrap parameters are critical. Your script includes the necessary parameters (
--apiserver-endpoint,--b64-cluster-ca), but the bootstrap process isn't completing. For the--apiserver-endpointparameter, you should use the private endpoint if your nodes can route to the control plane ENIs, or the public endpoint if they can't reach the private ENIs directly. -
Node Labels Issue: For self-managed nodegroups, the bootstrap script needs to include node labels. Without proper node labels, the nodes might join the cluster but not show as "Ready". Add
--node-labelsto your bootstrap script:
--kubelet-extra-args "--max-pods=${max_pods} --node-labels=alpha.eksctl.io/nodegroup-name=${cluster_name}"
- Network Connectivity: The fact that "Bootstrap done" is never logged suggests the bootstrap process is failing. This is likely a network connectivity issue between your Wavelength zone (Casablanca) and the control plane ENIs (Paris). Check if:
- Your VPC has proper routing between Wavelength zones and the Paris region
- Security groups allow traffic on ports 443 and 10250 between the worker nodes and control plane ENIs
- Network ACLs aren't blocking the required traffic
-
Security Group Configuration: Your security group configuration allows inbound traffic from anywhere (0.0.0.0/0) on ports 443 and 10250, which is too permissive. You should restrict this to the CIDR blocks of your control plane ENIs. Also, ensure your worker nodes have outbound access to the control plane on port 443.
-
IAM Role and aws-auth ConfigMap: Your aws-auth ConfigMap looks correctly configured. Ensure the IAM role attached to your worker nodes has the necessary EKS permissions, including
eks:DescribeCluster.
To troubleshoot further:
- Check the kubelet logs on your worker nodes:
journalctl -u kubelet -f - Look for errors like "Failed to ensure lease exists", "Unable to register node with API server", or "Failed to contact API server"
- Verify network connectivity from your worker nodes to the control plane endpoints
- Ensure your worker nodes' IAM role has the necessary permissions
For cross-region setups like yours, network connectivity is often the primary challenge. You may need to implement specific routing or VPC peering to ensure your Wavelength nodes can reach the control plane ENIs in Paris.
Sources
EKS node creation failed | AWS re:Post
EKS node registration error | AWS re:Post
Announcements - Eksctl User Guide
Troubleshooting hybrid nodes - Amazon EKS
answered a year ago
Relevant content
asked 3 years ago
asked 2 years ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated 8 months ago
