반응형
Amazon EKS에서 노드 그룹(NodeGroup)은 워커 노드 집합으로, 실제 애플리케이션 파드(Pod)가 실행되는 컴퓨팅 리소스를 제공합니다. 노드 그룹을 생성하는 방법은 여러 가지가 있으며, 상황에 따라 선택할 수 있습니다.
1. AWS Management Console에서 생성
- 클러스터 선택 후 Compute → Add Node Group 클릭
- 노드 그룹 이름 입력
- IAM Role 선택 (AmazonEKSNodeRole 등 필수 권한 포함)
- 사용할 서브넷 지정 (보통 프라이빗 서브넷)
- 인스턴스 타입, AMI, 디스크 크기 선택
- 최소/최대/원하는 노드 개수 설정 후 생성
2. AWS CLI로 생성
aws eks create-nodegroup \
--cluster-name my-cluster \
--nodegroup-name my-nodegroup \
--subnets subnet-aaa subnet-bbb \
--node-role arn:aws:iam::123456789012:role/EKSNodeRole \
--scaling-config minSize=2,maxSize=5,desiredSize=3 \
--ami-type AL2_x86_64 \
--instance-types t3.medium
- --node-role : 워커 노드 IAM Role 지정
- --scaling-config : 오토스케일링 범위 설정
- --instance-types : 노드 인스턴스 타입 지정
3. eksctl로 생성 (가장 많이 사용)
eksctl create nodegroup \
--cluster my-cluster \
--name my-nodegroup \
--node-type t3.medium \
--nodes 3 \
--nodes-min 2 \
--nodes-max 6 \
--region ap-northeast-2
- 명령어 한 줄로 손쉽게 생성 가능
- 실무에서 가장 많이 쓰이는 방식
4. Terraform (코드 기반 관리)
module "eks_node_group" {
source = "terraform-aws-modules/eks/aws//modules/node_groups"
cluster_name = "my-cluster"
node_groups = {
my_nodegroup = {
desired_capacity = 3
max_capacity = 6
min_capacity = 2
instance_type = "t3.medium"
}
}
}
- IaC 방식으로 관리 시 유용
- 버전 관리 및 재현성 확보 가능
✅ 정리하면, 빠른 실습이나 소규모 운영 환경은 eksctl,
대규모 운영 및 자동화는 Terraform,
간단한 실습은 콘솔 방식을 주로 사용합니다.
반응형