Creating AWS ELK Cluster

1. Installing eksctl commandline tool

elsctl is a popular command-line tool to create and manage Elastic Kubernetes Service (EKS) on AWS. To install elsctl run following commands:

# Download  the latest version of eksctl commandline tool
$ curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp

# Move eksctl to your default command path
$ sudo mv /tmp/eksctl /usr/local/bin

You can addeksctl to the bash completion by running:

$ cat '. <(eksctl completion bash)' >> ~/.bashrc

2. Set AWS account credentials

Configure your aws credentials files ~/.aws/credentials. It should define the aws_access_key_id and aws_secret_access_key:

[default]
aws_access_key_id=A*****s
aws_secret_access_key=tm******f

You can also configure the default output and region in file ~/.aws/config

[default]
region=us-east-2
output=yaml

More details on aws command-line tool configuration can be found HERE.

3. Create a new EKS Cluster

# Create a new Kubernetes cluster using eksctl command 
$ eksctl create cluster --name jovianx-<COMPANY>-us-east-2 \
    --region us-east-2 \
    --version 1.15 \
    --managed \
    --nodegroup-name jovianx-system \
    --node-type t3.large \
    --nodes 2 \
    --nodes-min 2 \
    --nodes-max 20 \
    --asg-access \
    --external-dns-access \
    --full-ecr-access \
    --alb-ingress-access \
    --auto-kubeconfig

Last updated