⚡ Kubernetes Helm 실습 ⚡
여러분, 오늘은 Kubernetes에서 Helm을 활용해 애플리케이션을 배포하고 관리하는 실습을 함께 진행해보겠습니다. 이 글은 단순히 명령어 나열이 아니라, 실제 강의 대본을 바탕으로 "마치 1:1 개인 과외"처럼 차근차근 설명하는 튜토리얼 형식으로 풀어가겠습니다. ????
1️⃣ Helm 이란 무엇인가?
Helm은 Kubernetes의 패키지 매니저입니다. 쉽게 말해, 복잡한 쿠버네티스 YAML 파일들을 일일이 작성하지 않고, Chart라는 템플릿을 이용해 손쉽게 애플리케이션을 배포/관리할 수 있도록 도와줍니다.
⭕ Linux에서 apt, macOS에서 brew 같은 역할을 Kubernetes에서 해주는 게 바로 Helm입니다.
2️⃣ Helm Chart 설치하기
Helm을 사용하면 애플리케이션을 아주 간단히 설치할 수 있습니다.
helm install nginx-server-dev ./codefactory
✅ nginx-server-dev 는 우리가 붙일 Release 이름입니다.
✅ ./codefactory 는 Helm Chart가 위치한 경로입니다.
설치가 완료되면 다음과 같은 결과를 확인할 수 있습니다.
helm status nginx-server-dev
➡️ 배포 상태, 차트 버전, 앱 버전 등을 확인할 수 있습니다.
3️⃣ Pod 상태 확인하기
Helm은 결국 Kubernetes 위에서 동작하므로, kubectl 명령어로 상태를 확인할 수 있습니다.
kubectl get pods
출력 예시:
NAME READY STATUS RESTARTS AGE nginx-server-dev-deployment-85f6cd5f6d-b7wgg 1/1 Running 0 99s nginx-server-dev-deployment-85f6cd5f6d-lkx4g 1/1 Running 0 99s nginx-server-dev-deployment-85f6cd5f6d-w89bn 1/1 Running 0 99s
⭕ 정상적으로 Pod가 3개 생성되어 Running 상태임을 알 수 있습니다.
4️⃣ Helm 업그레이드하기
배포 후 애플리케이션 버전을 바꾸거나 설정을 변경했다면 Helm으로 쉽게 업그레이드할 수 있습니다.
helm upgrade nginx-server-dev ./codefactory/
➡️ 이 명령은 기존 nginx-server-dev 릴리스를 새로운 설정/버전으로 업데이트합니다.
업그레이드 후 다시 Pod 상태를 확인하면 그대로 Running 중인 것을 확인할 수 있습니다.
5️⃣ Pod 상세 보기
특정 Pod에 문제가 생기면 kubectl describe로 원인을 파악할 수 있습니다.
kubectl describe pod nginx-server-dev-deployment-85f6cd5f6d-w89bn
여기서 컨테이너 이미지, 환경변수, 이벤트 로그 등을 확인할 수 있어 디버깅에 유용합니다.
6️⃣ Helm Release 목록과 이력
Helm으로 배포한 릴리스는 다음으로 확인합니다.
helm list helm history nginx-server-dev
출력 예시:
REVISION UPDATED STATUS CHART APP VERSION DESCRIPTION 1 2025-10-01 10:28:27 deployed codefactory-0.1.0 1.16.0 Install complete 2 2025-10-01 10:32:22 deployed codefactory-0.1.0 1.16.0 Upgrade complete
⭕ 버전별 배포 이력을 관리할 수 있다는 것이 Helm의 강력한 장점입니다.
7️⃣ Helm Rollback (되돌리기)
업그레이드 후 문제가 생기면? ✅ 바로 롤백하면 됩니다.
helm rollback nginx-server-dev 1
➡️ 릴리스를 1번 버전 상태로 되돌립니다.
이후 helm history로 확인하면 Rollback complete 상태가 보입니다.
8️⃣ Helm 삭제하기
실습을 마쳤다면 깨끗하게 삭제합니다.
helm uninstall nginx-server-dev
이제 helm list를 확인하면 릴리스가 사라진 것을 볼 수 있습니다.
✅ 핵심 정리
Helm = Kubernetes 패키지 매니저
helm install 로 배포, helm upgrade 로 업그레이드
helm history, helm rollback 으로 버전 관리 가능
helm uninstall 로 깔끔하게 삭제
➡️ 추가 학습 포인트
⚡ Helm Chart 커스터마이징하기 (values.yaml 수정)
⚡ Helm Repository 활용하기 (helm repo add)
⚡ CI/CD 파이프라인에 Helm 통합하기
⚡ Helm + ArgoCD 를 활용한 GitOps 배포
댓글 ( 0)
댓글 남기기