Aen.log
로그인
Aen.log
로그인
쿠버네티스란
⭐ 아엔 Aen (개발자지망생)
·
2025년 12월 19일
팔로우
0
docker
k8s
데브코스
쿠버네티스
데브코스
목록 보기
108/131
서비스 개발 및 운용 방식
마이크로 서비스 아키텍쳐 (MSA)
응용 시스템 개발 및 구성을 위한 아키텍처 스타일의 하나
이에 비교하여 전통적인 방식의 아키텍처를
모놀리식(monolithic) 아키텍처
라고 부르기도 함.
애플리케이션이 서비스 모음으로 개발
되어 각 마이크로 서비스는 특정한 기능을 수용하고 개별 작업을 처리,
이 서비스들이 서로 연결되어 전체 응용을 구성.
쿠버네티스(Kubernetes) 란
1. 줄여서 k8s 라고 표기하는 것을 자주 보게 됨
2. 컨테이너 오케스트레이션 솔루션
다수의 컨테이너들을 관리하면서
자동 배포, 배포된 컨테이너의 동작 보증, 부하에 따른 동적 확장 등의 기능을 담당
3. 도커와 잘 어울리는 실행 환경 구성 도구
도커 컨테이너들을 클러스터 내에 실행하고 관리하는 데 적합
지속적 통합과 인도(CI/CD)에 유효하게 적용할 수 있음
컨테이너는 포드(POD)라고 불리는 k8s 오브젝트와 연관하여 실행(포드 위에서 실행한다고 대강 표현)
k8s 클러스터의 구성 요소
1. 클러스터는 하나 이상의 노드(들)로 구성됨
2. 마스터 노드 (컨트롤 플레인)
kubectl (반드시 마스터 노드에 있어야 하는 것은 아니지만)
API서버, ETCD - 클러스터의 중심 역할을 하는 구성 요소들
컨트롤러 매니저, 스케줄러
3. 워커 노드
컨테이너 런타임(Container Runtime Interface) - 포드를 이루는 컨테이너의 실행을 담당
kubelet - 포드의 구성 내용을 받아 CRI에 전달하고 컨테이너들의 동작 상태를 모니터링
k8s가 제공하는 기능
1.컨테이너 밸런싱 (container balancing)
포드의 부하 균등화를 수행 - 몇 개의 응용을 복제할 것인지를 알려주면 나머지는 k8s가 처리
2. 트래픽 로드 밸런싱(traffic load balancing)
응용의 복제본이 둘 이상 있다면 k8s가 트래픽 부하 균등화를 수행하여 클러스터 내부에 적절히 분배
3. 동적 수평 스케일링(HPA : horizontal pod autoscaling)
인스턴스 수를 동적으로 확장하거나 감축하여 동적 요구사항에 대응하면서 시스템 자원을 효율적으로 활용
4. 오류 복구(error recovery)
포드와 노드를 지속적으로 모니터링하고 장애가 발생하면 새 포드를 실행하여 지정된 복제본의 수를 유지
5. 롤링 업데이트 (rolling update)
지연 시간을 적용하고 순차적으로 업데이트 배포함으로써 문제가 발생하더라도 서비스를 정상 유지할 수 있음
6. 스토리지 오케스트레이션(storage orchestration)
원하는 응용에 다양한 스토리지 시스템(Amazon EBS, Google GCE Persistent Disk 등) 을 마운트할 수 있음
7. 서비스 디스커버리
태생적으로 수명이 짧은 포드의 동적 성질을 관리하기 위하여 자체 DNS기반으로 서비스를 동적 바인딩할 수 있는 기능을 제공
k8s pod의 생명 주기
1. Kubectl을 통해서 api서버에 포드의 생성을 요청
(업데이트가 있을 때마다) api서버는 etcd에 기록하고 클러스터의 상태를 최신으로 유지(하려고 함)
2. 컨트롤러 매니저는 포드를 생성하고, 이 상태를 api 서버에 전달
아직 어떤 워커 노드에 포드를 적용할지는 결정하지 않은 상태
3. 스케줄러는 포드가 생성되었다는 정보를 인지하고, 이 포드를 어떤 워커 노드에 적용할지를 결정해서 해당 노드에 포드의 실행을 요청
4. 해당 노드의 kubelet이 CRI에 요청하여 포드가 만들어지고 사용 가능한 상태가 됨
5. k8s는 절차적인 구조가 아닌 선언적인 구조를 가지고 있음
각 요소가 추구하는 상태를 선언하면 현재 상태와 비교하고 지속적으로 맞추어 가려고 노력하는 구조
⭐ 아엔 Aen (개발자지망생)
Dive Head First | Work Super Hard | Attract Great People
팔로우
이전 포스트
컨테이너 가상화와 도커
다음 포스트
Docker 이미지와 컨테이너
0개의 댓글
댓글 작성