eksctl create cluster stuck "waiting for CloudFormation stack"
Asked Answered
W

2

10

I'm trying to create a cluster via eksctl, using defaults options, and AMI user with "AdministratorAccess", I get stuck at "waiting for CloudFormation stack"

 > eksctl create cluster --name dev
[ℹ]  eksctl version 0.36.0
[ℹ]  using region us-west-2
[ℹ]  setting availability zones to [us-west-2a us-west-2c us-west-2b]
[ℹ]  subnets for us-west-2a - public:192.168.0.0/19 private:192.168.96.0/19
[ℹ]  subnets for us-west-2c - public:192.168.32.0/19 private:192.168.128.0/19
[ℹ]  subnets for us-west-2b - public:192.168.64.0/19 private:192.168.160.0/19
[ℹ]  nodegroup "ng-fa4af514" will use "ami-0532808ed453f9ca3" [AmazonLinux2/1.18]
[ℹ]  using Kubernetes version 1.18
[ℹ]  creating EKS cluster "dev" in "us-west-2" region with un-managed nodes
[ℹ]  will create 2 separate CloudFormation stacks for cluster itself and the initial nodegroup
[ℹ]  if you encounter any issues, check CloudFormation console or try 'eksctl utils describe-stacks --region=us-west-2 --cluster=dev'
[ℹ]  CloudWatch logging will not be enabled for cluster "dev" in "us-west-2"
[ℹ]  you can enable it with 'eksctl utils update-cluster-logging --enable-types={SPECIFY-YOUR-LOG-TYPES-HERE (e.g. all)} --region=us-west-2 --cluster=dev'
[ℹ]  Kubernetes API endpoint access will use default of {publicAccess=true, privateAccess=false} for cluster "dev" in "us-west-2"
[ℹ]  2 sequential tasks: { create cluster control plane "dev", 3 sequential sub-tasks: { no tasks, create addons, create nodegroup "ng-fa4af514" } }
[ℹ]  building cluster stack "eksctl-dev-cluster"
[ℹ]  deploying stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"
[ℹ]  waiting for CloudFormation stack "eksctl-dev-cluster"

I have tried different regions, ran into the same issue.

Wale answered 17/1, 2021 at 2:41 Comment(3)
I've had this take 20 minutes with as many "waiting..." lines. The control plane step alone took 12+ minutes. You can track progress in the CloudFormation web console. Click on your stack in progress and check out the Events tab.Chaplain
@Chaplain you're right, it was a waiting game, it has also taken 20 min or so before it started building the cluster.Wale
Same problem. The CloudFormation stack is complete, but eksctl waits and waits and waits. And waits.Symptomatic
D
26

It takes almost 20 minutes to create the stacks in Cloudformation. When you create the cluster, check the progress of the stack in Cloudformation console: https://console.aws.amazon.com/cloudformation/home.

Dynah answered 15/3, 2021 at 5:58 Comment(1)
Your answer is the best.Gules
G
0

I always created CloudFormation stack manually and then chose it during eksctl create cluster command. To be sure you havent missed any step - please refer to nice Deploying a Kubernetes Cluster with Amazon EKS article with step-by-step instruction. Or any official documentation.


Creating a VPC for EKS

To do this, we’re going to use a CloudFormation template that contains all the necessary EKS-specific ingredients for setting up the VPC.

Open up CloudFormation, and click the Create new stack button.

On the Select template page, enter the URL of the CloudFormation YAML in the relevant section:

https://amazon-eks.s3-us-west-2.amazonaws.com/cloudformation/2019-01-09/amazon-eks-vpc-sample.yaml

Give the VPC a name, leave the default network configurations as-is, and click Next.

On the Options page, you can leave the default options untouched and then click Next.

On the Review page, simply hit the Create button to create the VPC.

CloudFormation will begin to create the VPC. Once done, be sure to note the various values created — SecurityGroups, VpcId and SubnetIds. You will need these in subsequent steps.


And next, you can create cluster using command

aws eks --region <region> create-cluster --name <clusterName> --role-arn <EKS-role-ARN> --resources-vpc-config subnetIds=<subnet-id-1>,<subnet-id-2>,<subnet-id-3>,securityGroupIds=<security-group-id>

where

subnetIds — a comma-separated list of the SubnetIds values from the AWS CloudFormation output that you generated in the previous step.
security-group-id — the SecurityGroups value from the AWS CloudFormation output that you generated in the previous step.
Glyceride answered 18/1, 2021 at 16:9 Comment(0)

© 2022 - 2025 — McMap. All rights reserved.