Loading...
Loading...
This skill should be used when users need to manage AWS EKS clusters via eksctl CLI. It covers cluster creation, nodegroup management, addon operations, IAM integration, and cluster upgrades. Complements kubectl for cluster-level operations. Triggers on requests mentioning eksctl, EKS cluster management, nodegroups, EKS addons, or Kubernetes cluster infrastructure on AWS.
npx skill4agent add oldwinter/skills eksctlus-east-1| Cluster | Region | Kubernetes Version |
|---|---|---|
| us-east-1 | 1.34 |
| Tool | Purpose |
|---|---|
| Cluster infrastructure management (create/delete clusters, nodegroups, addons) |
| Workload management (pods, deployments, services) |
# List clusters
eksctl get cluster --region us-east-1
# Get cluster info
eksctl get cluster --name production --region us-east-1
# Update kubeconfig
eksctl utils write-kubeconfig --cluster production --region us-east-1
# Describe cluster stacks
eksctl utils describe-stacks --cluster production --region us-east-1# List nodegroups
eksctl get nodegroup --cluster production --region us-east-1
# Create nodegroup
eksctl create nodegroup \
--cluster production \
--region us-east-1 \
--name <nodegroup-name> \
--node-type t3.medium \
--nodes 2 \
--nodes-min 1 \
--nodes-max 4
# Scale nodegroup
eksctl scale nodegroup \
--cluster production \
--region us-east-1 \
--name <nodegroup-name> \
--nodes 3
# Delete nodegroup
eksctl delete nodegroup \
--cluster production \
--region us-east-1 \
--name <nodegroup-name>
# Drain nodegroup (for upgrades)
eksctl drain nodegroup \
--cluster production \
--region us-east-1 \
--name <nodegroup-name># List addons
eksctl get addon --cluster production --region us-east-1
# Get addon details
eksctl get addon --cluster production --region us-east-1 --name <addon-name>
# Create addon
eksctl create addon \
--cluster production \
--region us-east-1 \
--name <addon-name> \
--version <version>
# Update addon
eksctl update addon \
--cluster production \
--region us-east-1 \
--name <addon-name> \
--version <new-version>
# Delete addon
eksctl delete addon \
--cluster production \
--region us-east-1 \
--name <addon-name>| Addon | Version | Status |
|---|---|---|
| adot | v0.141.0-eksbuild.1 | ACTIVE |
| amazon-cloudwatch-observability | v4.8.0-eksbuild.1 | ACTIVE |
| aws-efs-csi-driver | v2.1.15-eksbuild.1 | ACTIVE |
| aws-network-flow-monitoring-agent | v1.1.1-eksbuild.1 | ACTIVE |
| cert-manager | v1.19.2-eksbuild.1 | ACTIVE |
| eks-pod-identity-agent | v1.3.10-eksbuild.2 | ACTIVE |
| metrics-server | v0.8.0-eksbuild.6 | ACTIVE |
# Associate OIDC provider
eksctl utils associate-iam-oidc-provider \
--cluster production \
--region us-east-1 \
--approve
# Create IAM service account
eksctl create iamserviceaccount \
--cluster production \
--region us-east-1 \
--namespace <namespace> \
--name <sa-name> \
--attach-policy-arn <policy-arn> \
--approve
# List IAM service accounts
eksctl get iamserviceaccount --cluster production --region us-east-1
# Delete IAM service account
eksctl delete iamserviceaccount \
--cluster production \
--region us-east-1 \
--namespace <namespace> \
--name <sa-name># Create pod identity association
eksctl create podidentityassociation \
--cluster production \
--region us-east-1 \
--namespace <namespace> \
--service-account-name <sa-name> \
--role-arn <role-arn>
# List pod identity associations
eksctl get podidentityassociation --cluster production --region us-east-1
# Delete pod identity association
eksctl delete podidentityassociation \
--cluster production \
--region us-east-1 \
--namespace <namespace> \
--service-account-name <sa-name># Check available upgrades
eksctl upgrade cluster \
--cluster production \
--region us-east-1 \
--dry-run
# Upgrade control plane
eksctl upgrade cluster \
--cluster production \
--region us-east-1 \
--version <new-version> \
--approve
# Upgrade nodegroup
eksctl upgrade nodegroup \
--cluster production \
--region us-east-1 \
--name <nodegroup-name> \
--kubernetes-version <new-version># Get access entries
eksctl get accessentry --cluster production --region us-east-1
# Create access entry
eksctl create accessentry \
--cluster production \
--region us-east-1 \
--principal-arn <arn>
# Delete access entry
eksctl delete accessentry \
--cluster production \
--region us-east-1 \
--principal-arn <arn># List Fargate profiles
eksctl get fargateprofile --cluster production --region us-east-1
# Create Fargate profile
eksctl create fargateprofile \
--cluster production \
--region us-east-1 \
--name <profile-name> \
--namespace <namespace>
# Delete Fargate profile
eksctl delete fargateprofile \
--cluster production \
--region us-east-1 \
--name <profile-name># Create cluster with config file
eksctl create cluster -f cluster-config.yaml
# Create cluster with CLI options
eksctl create cluster \
--name <cluster-name> \
--region us-east-1 \
--version 1.34 \
--nodegroup-name <ng-name> \
--node-type t3.medium \
--nodes 2 \
--managed# JSON output
eksctl get cluster --region us-east-1 -o json
# YAML output
eksctl get cluster --region us-east-1 -o yaml# Describe stacks
eksctl utils describe-stacks --cluster production --region us-east-1
# Check for stack issues
aws cloudformation describe-stack-events \
--stack-name eksctl-production-cluster \
--region us-east-1| Issue | Cause | Solution |
|---|---|---|
| Nodegroups managed by Karpenter | Use |
| Resource being modified | Wait and retry |
| Missing IAM permissions | Check IAM roles |