🔥 Vamos/K8S
MSA-쿠버네티스 배포 실습 1 :: 쿠버네티스 개념과 구조
unikue
2025. 2. 15. 13:31
1. 쿠버네티스의 개념과 사용이유
✔️ 자동화된 배포 & 스케일링
✔️ 서비스 안정성 & 장애 자동 복구
✔️ 리소스 최적화 & 비용 절감
✔️ 멀티 클라우드 환경에서도 유연하게 배포 가능
즉, 애플리케이션을 더 쉽고 안정적으로 운영할 수 있는 환경을 제공!
2. 쿠버네티스 구조
1️⃣ 마스터 노드, Master Node
- 쿠버네티스를 관리하고, 컨트롤 플레인(Control Plane) 역할을 담당
- kubectl 명령어 실행 (배포, 스케일링, 모니터링 등)
- 직접 애플리케이션을 실행하는 역할은 하지 않음 (보통 Pod가 배치되지 않음)
2️⃣ 워커 노드, Worker Node
- 애플리케이션이 실제로 실행되는 노드
- 컨테이너(Pod)가 배치되는 곳
- 마스터 노드에서 명령을 내리면 적절한 워커 노드에 Pod를 배치
✅Pod가 어디 배치될지 직접 정하고 싶다면? → nodeSelecor나 nodeAffinity설정을 사용해서 특정 노드에 배치 가능
✅실습 진행순서
- 네임스페이스 생성
- pv pvc적용
- mysql deployment service적용
- spring boot application 실행 (c,r)
- spring boot 어플리케이션을 로컬에서 빌드 .jar 생성
- docker이미지로 패키징 후 로컬에서 실행 및 테스트
- docker 이미지를 worker1:5000 레지스트리에 푸시
- kubernetes에서 배포
- cri-o로 컨테이너 런타임 상태 확인하기