Skip to content

Learn KOP - EKS GitOps Setup

What Will You Do

This is Part 1 of a multi-part, self-paced quick start exercise. In this part, you will perform a few "one-time" tasks required for cluster provisioning.


Step 1: Create Cloud Credentials

Cloud credentials provide privileges to programmatically interact with your Amazon AWS account so that the lifecycle of infrastructure associated with the Amazon EKS cluster can be managed.

  • Follow the step-by-step instructions to create an IAM Role based cloud credential.
  • Provide the name "aws-cloud-credential" for the cloud credential. Note, if a different name is used, the specification files will need to be updated to match the new name.

Step 2: Download RCTL

The RCTL CLI allows you to programmatically interact with the controller enabling users to construct sophisticated automation workflows.

  • Login into your Org
  • Navigate to "My Tools" to download both the RCTL CLI and the "CLI Config" file
  • Initialize RCTL using the step-by-step instructions
  • Ensure you update your OS's Path environment variable for RCTL

Step 3: Fork Git Repo

Declarative specs for the Amazon EKS cluster and the pipeline resources are available in a Git repository

To get started, let us fork an existing repository.

  • Ensure you are logged into your GitHub.com account
  • Navigate to the public Git repository
  • Click on Fork repository
  • Select your account name to fork repo to
  • Once complete, you should see a copy of the repository in your Git system (e.g. GitHub). An example shown below.

Step 4: Clone Git Repo

Clone the Git repository to your laptop to allow for a more simple method to update files.

  • Use the sample code below to clone the repository to your local machine. Be sure to reaplce the URL with the URL of your forked repository
git clone https://github.com/<sample>/getstarted.git
  • Once complete, you should see a folder called "eks-gitops" which contains the specs needed for this guide.

Step 5: Terraform Configuration

In this step, you will update the Terraform configuration to include the specifics for your Amazon S3 bucket which will be used to store the state file.

  • Open Terminal (on macOS/Linux) or Command Prompt (Windows) and navigate to the folder where you cloned the Git repository
  • Navigate to the folder "/getstarted/eks-gitops"
  • Update the "s3bucket.tf" file with your S3 bucket information

The following values will need to be updated.

  • bucket = "tim-eks-gitops"
  • region = "us-west-2"
terraform {
  backend "s3" {
    bucket = "tim-eks-gitops"
    key    = "terraform.tfstate"
    region = "us-west-2"
  }
}

Recap

At this point, you have everything setup and configured to provision an Amazon EKS Cluster.