| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
- docker
- 노드그룹
- moviepy2
- ffmpeg
- null오류
- 파이썬영상
- lambda
- EKS
- AWS
- 파이참
- LLM
- 생성형AI
- agentic
- 파이썬영상편집
- Python
- ffprobe
- moviepy
- efs
- EC2
- vivecoding
- VPC
- 파이썬
- delete비교
- 옵셔널체이닝
- subprocess
- 파이썬이미지
- 도커컨테이너
- mysql성능
- truncate비교
- 영상자동화
- Today
- Total
씩씩한 개발자
[AWS] EKS 노드 그룹 개념 및 생성하기 본문

안녕하세요. 씩씩한 개발자입니다. 🔥
지난 글에서 EKS 클러스터 생성을 해보았고, 이어서 노드 그룹을 추가해보겠습니다.
https://strongdev.tistory.com/23
[AWS] EKS의 개념, 클러스터 생성해 보기
안녕하세요. 씩씩한 개발자입니다🔥AWS를 사용하는데, 사실 Lambda 나 S3 같은 서비스 위주로 사용해서, 내부적으로 작동하는 구조에 대해서는 몰랐거든요.EKS 버전 업그레이드를 주기적으로 하는
strongdev.tistory.com
이 말이 무슨 말이냐면,
지금 상태의 EKS 클러스터에는 가상머신이 하나도 없어서,
오늘은
EKS 노드 그룹(Node Group)을 추가해서, 가상머신(EC2)를 띄워보려고 합니다.
배경지식 (용어정리)
먼저 용어부터 정리해봅시다.
- 클러스터: 쿠버네티스 관리자
- 노드 그룹: 노드(EC2) 여러 대를 하나로 묶어서 자동으로 관리해 주는 단위
- 노드: EC2 인스턴스 1대 (파드 Pod 가 실제로 올라가는 공간) / CPU, 메모리가 있는 '서버 1대'
- 파드: 노드 위에 올라가는 컨테이너 실행 단위
즉, 노드 그룹 안에 > 노드(EC2)가 들어있고,
파드는 > 그 노드(EC2) 위에 올라가는겁니다.
노드 그룹(Node Group)?
노드 그룹은 노드(EC2) 여러 대를 하나로 묶어서 자동으로 관리해주는 단위입니다.
* 노드 그룹 = 파드가 실제로 올라가는 EC2 집합
노드 그룹 (Node Group)
├─ 노드(EC2) 1대
├─ 노드(EC2) 1대
└─ 노드(EC2) 1대
- 노드를 최소/최대 몇 개로 유지할지 설정
- 트래픽 늘면 자동으로 노드 늘릴 수 있음(오토스케일링)
- 노드 한 대 죽으면 새로 띄워서 복구
EC2를 관리하기 좋게 하기 위해, 노드 그룹이라는 단위로 묶어서 관리하는 겁니다.
노드 그룹 만들기
바로 만들어 볼게요.
기존에 만들어 둔 EKS 콘솔 → 클러스터 선택 → 컨설팅 → 노드 그룹 추가로 들어갑니다.
1단계. 노드 그룹 구성

▶ 노드 IAM 역할
EC2 노드가 AWS 리소스랑 통신할 수 있게 해주는 권한입니다.
* EC2 노드 - AWS 리소스 통신 사례)
- 컨테이너 이미지 ECR에서 가져오기
- 로드밸런서 붙이기
- CloudWatch 로그 전송
역할을 생성할 때 > 권장 역할 생성 > 사용사례 (EC2) 선택 하면, 알아서 필요한 정책들을 붙여줍니다.

2단계. 컴퓨팅 및 조정 구성
▶ 인스턴스 유형
여기서는 노드로 쓸 EC2 스펙을 정합니다.
실습용이면 ENI 4개, 최대 IP개수 60개 정도로 설정했어요.
만약, 노드그룹 생성이 실패할 경우에 파드 IP를 할당할 ENI가 부족할 경우도 있으니, 그땐 개수를 늘려서 다시 만들어 줍니다.

▶ 노드 그룹 크기 설정
저는 이렇게 설정했어요.
- 원하는 크기: 1
- 최소 크기: 1
- 최대 크기: 2
실습용으로는 충분합니다.

다만, 로드밸런서(ALB, NLB) 붙일 생각이면 노드는 최소 2개 이상으로 잡아야 의미가 있습니다 ㅎㅎ
노드 하나 죽으면 서비스 바로 죽거든요 ㅠㅠ
(2,2,4)개수 정도로 하면 좋겠네요.
3단계. 네트워킹 지정
▶퍼블릭 서브넷 선택
EC2가 올라갈 서브넷을 선택합니다.
저는 외부에서 접근할 서비스라서 퍼블릭 서브넷을 선택했어요.


★ 노드 생성 전에 꼭 확인할 사항
노드 생성하다가 퍼블릭 서브넷 관련 오류 나면, 거의 VPC쪽 설정 때문입니다.
퍼블릭 서브넷이라도, 자동 퍼블릭 IP 할당이 꺼져 있으면 노드가 인터넷 못 나갑니다.
저도 처음에 이것을 꺼놔서 노드그룹 생성에 실패했었거든요. 노드조인실패라고 뜨면서요.
그래서 이거 꼭 켜두셔야 합니다.
VPC → 서브넷 → 퍼블릭 서브넷 선택
→ 서브넷 설정 편집
→ 퍼블릭 IPv4 주소 자동 할당 활성화 체크

내 VPC 설정이 잘 되어있는지 궁금할 때!
노드그룹 생성은 걸어놨는데, 돌아가는 시간이 꽤 걸리잖아요.
VPC설정 잘해 둔것 같은데, 자꾸 노드그룹생성에 실패해서, aws 문서도 찾아보고 하다가,
그냥 AmazonQ에 물어봤어요 ㅎㅎㅎ
콘솔 오른쪽에 버튼을 눌러 실행할 수 있구요.
정말 친절하게, 단계별로 자기가 내부적으로 연결 테스트를 해주더라구요.
라우팅 테이블, 인터넷 게이트웨이, 서브넷 설정까지 하나하나 다 뜯어봐주니 좋았어요.

노드 그룹 생성 완료 후 확인
노드 그룹 생성이 성공하면,

이렇게 EC2 콘솔에 인스턴스와 Auto Scaling Group이 자동으로 생성됩니다.
즉, 서버가 생기고, 파드들이 올라가기 시작하는 거죠.ㅎㅎ
마무리
매번 만들어진 것 쓰기만 했었는데, 이번에 직접 만들어 보면서, 조금이나마 제대로 알게 된 것 같아서 개인적으로 매우 뿌듯합니다.ㅎㅎ
클러스터 만들었다고 끝난 게 아니고, EC2, IAM, VPC 모든게 맞물려야 노드그룹이 생성되니, 개념을 하나씩 알아가는게 재밌었구요!
시작할 땐 막연했는데, 하나하나 단계별로 실행하면 마냥 어려운 내용은 아니었다는 것을 알게 됩니다!
처음엔 실패하는 게 정상이고,저도 노드 그룹 몇 번을 지웠다 만들었어요!
노드 그룹 추가가 안된다면, VPC 재설정과 Amazon Q 활용 추천드려요! 포기하지 마십시오🔥
'AWS' 카테고리의 다른 글
| [AWS] EKS의 개념, 클러스터 생성해 보기 (1) | 2025.12.17 |
|---|---|
| [AWS] VPC 개념 & 생성하기 (Subnet / Routing / IGW) (0) | 2025.12.15 |
| [AWS] IAM이란? 기초 개념 정리! (0) | 2025.12.15 |
| AWS Lambda 컨테이너 이미지로 패키지 설치 (ex.MoviePy) - 2편 (2) | 2025.06.01 |
| AWS EFS 마운트란? 마운트 해제란? (1) | 2025.05.30 |