Skip to content

Part 2: Provision

What Will You Do

In this part of the self-paced exercise, you will provision an Amazon EKS cluster based on a declarative cluster specification.


Users that already have a managed EKS cluster in a project in their Org can skip this part completely.

Step 1: Cluster Spec

  • Open Terminal (on macOS/Linux) or Command Prompt (Windows) and navigate to the folder where you forked the Git repository
  • Navigate to the folder "/getstarted/cloudwatch/cluster"

The "cloudwatch-eks-cluster.yaml" file contains the declarative specification for our Amazon EKS Cluster.

Cluster Details

The following items may need to be updated/customized if you made changes to these or used alternate values.

  • cluster name: "cloudwatch-cluster"
  • project: "defaultproject"
  • cloud provider: "aws-cloud-credential"
  • name: "cloudwatch-cluster"
  • region: "us-west-2"
kind: Cluster
  name: cloudwatch-cluster
  project: defaultproject
    name: default
    version: latest
  cloudCredentials: aws-cloud-credential
    - name: kube-proxy
      version: latest
    - name: vpc-cni
      version: latest
    - name: coredns
      version: latest
      withOIDC: true  
    - amiFamily: AmazonLinux2
      desiredCapacity: 2
      instanceType: t3.large
      maxSize: 2
      minSize: 1
      name: ng-1
      name: cloudwatch-cluster
      region: us-west-2
        email: [email protected]
        env: qa
      version: latest
        name: aws-cni
      autoAllocateIPv6: false
        privateAccess: true
        publicAccess: false
  type: aws-eks

Step 2: Provision Cluster

  • Type the command below to provision the EKS cluster
rctl apply -f cloudwatch-eks-cluster.yaml

If there are no errors, you will be presented with a "Task ID" that you can use to check progress/status. Note that this step requires creation of infrastructure in your AWS account and can take ~20-30 minutes to complete.

  "taskset_id": "empr728",
  "operations": [
      "operation": "NodegroupCreation",
      "resource_name": "ng-1",
      "operation": "ClusterCreation",
      "resource_name": "cloudwatch-cluster",
  "comments": "The status of the operations can be fetched using taskset_id",
  • Navigate to the "defaultproject" project in your Org
  • Click on Infrastructure -> Clusters. You should see something like the following

Provisioning in Process

  • Click on the cluster name to monitor progress

Provisioning in Process

Step 3: Verify Cluster

Once provisioning is complete, you should see a healthy cluster in the web console

Provisioned Cluster

  • Click on the kubectl link and type the following command
kubectl get nodes

You should see something like the following

NAME                                           STATUS   ROLES    AGE   VERSION     Ready    <none>   22m   v1.21.5-eks-bc4871b   Ready    <none>   22m   v1.21.5-eks-bc4871b


As of this step, you have created an EKS cluster with the default cluster blueprint. In the next section, you will create a custom cluster blueprint with the Amazon Cloudwatch agent as an addon.