AWS EKS CheatSheet
A Cheatsheet to interact with your EKS Cluster using Terminal
After you’ve set up your EKS cluster using Argonaut, you may want to interact with your cluster using your terminal. This cheat sheet lists the commands that you can quickly run to do the same.
💡 This cheat sheet assumes the cluster name to be is demoCluster
and the environment name to be is demoEnvironment
.
1. Setup
Login to your AWS console using your username-password.
Setup access to the kubernetes cluster using the
art cli
Have the art configured
Run this command to generate the AWS access and secret keys and export them directly to your terminal
eval $(art configure generate-aws-credentials --format eval)
Reference: art configure generate-aws-credentials
Alternately, setup access to the kubernetes cluster using AWS credentials
Ensure the user is part of the cluster's authorized users. This can only be done by a user who already has access to the cluster by following this step.
Create an access key and a secret key on AWS.
Once you’ve generated the keys, export the following environment variables:
export AWS_ACCESS_KEY_ID=<Access-Id-from-Step-3>
export AWS_SECRET_ACCESS_KEY=<Access-Secret-Key-from-Step-3>
export AWS_DEFAULT_REGION=ap-south-1
Create a config file for
kubectl
by running the following command:aws eks update-kubeconfig --name demoEnvironment
2. Commands
To list pods/services running in your environment
kubectl get pods -n demoEnvironment
To view logs for a specific pod/service
kubectl -n demoEnvironment logs podName stateful --tail=100 -f
To log into a pod
kubectl exec -i -t -n demoEnvironment podName -c stateful -- /bin/bash
To view the state of your cluster
Use a Kubernetes dashboard such as k9s to easily view the state of your clusters in your terminal.
To add an AWS user to your cluster
Run:
kubectl -n kube-system edit configmap/aws-auth
Then add the below:
mapUsers: |
- userarn: arn:aws:iam::<<<accountid>>>:user/<your-username>
username: <your-username>
groups:
- system:masters
Note: This will get reset if a change is made to the cluster infrastructure (like modifying node pools etc.)
To view old application log
Set up Grafana (using LogQL) to view older (before Argonaut) application logs and metrics.
Best Practices
When using the terminal to interact with your cluster managed by Argonaut, we recommend the following:
- Do not modify secrets directly on the cluster. Argonaut will not know about the changes and it’ll be out of sync.
- When using a tool like
kubectl
or others directly on your cluster, do only read operations. Avoid writing configurations directly to your cluster.