# auto-cluster.yaml
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
name: my-auto-cluster
region: us-west-2
version: "1.31"
# EKS Auto Mode 구성
autoModeConfig:
enabled: true
# 기본 노드 풀 생성 (general-purpose, system)
# nodePools를 지정하지 않으면 기본값 사용
# nodePools: ["general-purpose", "system"]
# nodeRoleARN: arn:aws:iam::123456789012:role/AmazonEKSAutoNodeRole
# VPC 구성 (선택사항)
vpc:
cidr: "10.0.0.0/16"
nat:
gateway: Single # 또는 HighlyAvailable
clusterEndpoints:
privateAccess: true
publicAccess: true
# 클러스터 로깅
cloudWatch:
clusterLogging:
enableTypes: ["api", "audit", "authenticator", "controllerManager", "scheduler"]
# 애드온 구성
addons:
- name: vpc-cni
version: latest
- name: coredns
version: latest
- name: kube-proxy
version: latest
- name: aws-ebs-csi-driver
version: latest
eksctl create cluster -f auto-cluster.yaml
# 클러스터 상태 확인
kubectl get nodes
# Auto Mode 노드 풀 확인
kubectl get nodepools
# Auto Mode 노드 클래스 확인
kubectl get nodeclasses
# 시스템 파드 상태 확인
kubectl get pods -n kube-system
# 클러스터 상태 확인
aws eks describe-cluster --name my-auto-cluster --region us-west-2
# 클러스터가 ACTIVE 상태가 될 때까지 대기
aws eks wait cluster-active --name my-auto-cluster --region us-west-2
# kubeconfig 업데이트
aws eks update-kubeconfig --name my-auto-cluster --region us-west-2
# 클러스터 연결 확인
kubectl get nodes
# 클러스터 정보 확인
kubectl cluster-info
# 노드 상태 확인
kubectl get nodes
# 시스템 파드 상태 확인
kubectl get pods -n kube-system
# 서비스 계정 확인
kubectl get serviceaccounts -n kube-system
# Auto Mode 노드 풀 확인
kubectl get nodepools
# Auto Mode 노드 클래스 확인
kubectl get nodeclasses
# Karpenter 상태 확인 (Auto Mode에서 사용)
kubectl get pods -n karpenter