피드로 돌아가기
Dev.toInfrastructure
원문 읽기
Local K8s 클러스터 구축을 통한 3-Replica 가용성 확보 및 Self-healing 검증
Deploying Your First App on Kubernetes: A Beginner's Guide (Minikube & Kind)
AI 요약
Context
Kubernetes의 추상화 개념을 실제 런타임 환경에서 검증하기 위한 로컬 클러스터 구성 필요성 대두. 이론적인 Self-healing 및 Rolling Update 메커니즘을 실시간으로 관찰 가능한 환경 구축을 목표로 함.
Technical Solution
- Docker 기반 가상화 환경을 활용한 Minikube 및 Kind 클러스터 구축을 통한 인프라 추상화
- Node.js 애플리케이션의 Containerization 및 3개 Replica 구성을 통한 고가용성 구조 설계
- Deployment와 ReplicaSet으로 Pod의 상태를 지속적으로 모니터링하여 장애 발생 시 즉각적인 재생성 유도
- Label Selector 기반의 Service 설정을 통한 다중 Pod 간 L4 Load Balancing 구현
- Minikube의 Internal Docker Daemon 활용 및 Kind의 Explicit Image Loading 방식을 통한 로컬 이미지 배포 최적화
실천 포인트
1. Kind 사용 시 `kind load docker-image` 명령어로 이미지 로딩 여부 확인
2. Minikube 사용 시 `eval $(minikube docker-env)`를 통한 Docker CLI 컨텍스트 전환 확인
3. Pod별 유니크한 Hostname 출력을 통한 Load Balancing 정상 작동 여부 검증
4. Pod 강제 삭제 후 ReplicaSet에 의한 자동 복구 시간 측정