Prerequisites

You'll need the following tools installed locally:

  • AWS CLI
  • git
  • jq
  • kubectl

aws cli

You may use an existing or new AWS account for this demo.

# configure the aws CLI
aws configure list

aws configure
# or
aws configure --profile demo
export AWS_PROFILE=demo

You may need to generate some access keys or create an IAM user:

aws-iam-authenticator

It's best to have this small go program for connecting to EKS clusters:

GitHub

You'll need a GitHub account with git properly configured:

eksctl

Install eksctl version 0.14.0 or newer for macOS:

brew tap weaveworks/tap
brew install weaveworks/tap/eksctl

Install eksctl for Windows:

chocolatey install eksctl

Install eksctl for Linux:

curl --silent --location \
"https://github.com/weaveworks/eksctl/releases/download/0.14.0/eksctl_Linux_amd64.tar.gz" \
| tar xz -C /tmp

sudo mv /tmp/eksctl /usr/local/bin

Verify the install with:

eksctl version

fluxctl

Install fluxctl for macOS:

brew install fluxctl

Install fluxctl for Windows:

choco install fluxctl

Install fluxctl for Linux:

curl -sL https://fluxcd.io/install | sh
export PATH="$PATH:$HOME/.fluxcd/bin"

Verify the install with:

fluxctl version

kustomize

Install kustomize for macOS:

brew install kustomize

Install kustomize for Windows:

choco install kustomize

Install kustomize for Linux:

curl --silent --location --remote-name \
"https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v3.2.3/kustomize_kustomize.v3.2.3_linux_amd64" && \
chmod a+x kustomize_kustomize.v3.2.3_linux_amd64 && \
sudo mv kustomize_kustomize.v3.2.3_linux_amd64 /usr/local/bin/kustomize

Verify the install with:

kustomize version