본 글은 유튜브 채널 44BITS에서 제작 한 영상을 요약 정리 한 것입니다.
아래 이미지를 클릭하시면 영상으로 이동합니다.
프로그램 개발에서 배포까지의 과정
Developer
Git (code)
Build → 도커 + 컨테이너 영역
- Test
- Create Container Image
- Push Container Image to Docker registry
- DockerHub
- AWS ECR
- Google Cloud GCR
Deploy
Kubernetes
Scale Out
초기 지식이 있어야 되는 부분
- Developer → Git → Build
- 도커를 모른다면 쿠버네티스를 완벽하게 이해할 수 없음
영상를 통해서 다루는 부분
- Deploy → Kubernetes → Scale Out
- 만들어진 도커 이미지를 가지고 배포
- 쿠버네티스 상에서 구동
- 스케일 아웃
학습 범위
도커 컨테이너 실행하기
- 도커와 도커 컴포즈를 이용한 멀티 컨테이너 관리
쿠버네티스에 컨테이너 배포하기
- 실습 환경 만들기
- kubectl 사용법
- pod, deployment, service 등 기본 리소스 학습
외부 접속 설정 하기
- Cluster IP, Node Port, LoadBalancer, Ingress 서비스 타입 학습
- 서비스 디스커버리 학습
스케일 아웃 하기
- 부하에 따른 컨테이너 개수 조정
- 최소 리소스 요청 설정
- 오토스케일링
그 외 고급 기능 소개
- HELM 패키지 매니저 소개
- GitOps, ServiceMesh 소개
다루지 않는 범위
- 다양한 환경 별 특징 (bare metal, EKS 등...)
- 쿠버네티스 패턴 (사이드카, 어댑터 등...)
- 관련 생태계 (서비스메시, 서버리스 등...)
- GitOps CI/CD
- 승인 제어 등 고급 기능
목표
- 구성요소를 이해하고 동작원리를 파악하고 기본적인 사용법을 익힘
- 막연하게 쿠버네티스는 '어렵다' 라고 생각하는데, 모든 것을 다 알려고 하기 때문에 어렵다고 생각
- 동작원리는 굉장히 단순하지만 다양한 리소스와 오브젝트를 사용해서 복잡해 보이는 경향이 있음
참고