Page 34 -
P. 34
런서 주소를 엔드포인트로 할당한다. 쿠버네티스는 로드 밸런서 기능(서비스(Service)나 인그레스
(Ingress))을 제공하고 있으며 사전에 정의한 조건과 일치하는 컨테이너 그룹에 라우팅하는 엔드포
인트를 할당할 수 있다. 컨테이너를 확장할 때 엔드포인트가 되는 서비스에 컨테이너의 자동 등록
과 삭제, 컨테이너 장애 시 분리, 컨테이너 롤링 업데이트 시 필요한 사전 분리 작업도 자동으로
실행해준다. 이를 통해 높은 서비스 레벨을 구현하면서 엔드포인트 관리를 쿠버네티스에게 맡길
수 있다(그림 2-7).
또한, 쿠버네티스 서비스를 사용하면 서비스 디스커버리도 가능하다. 컨테이너를 사용하여 시스
템을 구축하는 경우에는 기능별로 독립된 작은 규모의 애플리케이션을 연계하여 시스템을 구현하
는 ‘마이크로서비스 아키텍처’를 선택하는 것이 일반적이다. 이런 환경에서 각각의 마이크로서비
스가 서로의 마이크로서비스를 참조할 때 서비스 디스커버리 기능은 매우 유용하다. 서비스에 서
비스 디스커버리 기능이 있어 각각의 마이크로서비스가 정의된 복수의 매니페스트를 이용하여 시
스템 전체를 쉽게 연계할 수 있다.
그림 2-7 서비스 이미지
서비스 A 컨테이너 A (도커 이미지 A)
서비스 B 컨테이너 B (도커 이미지 B)
쿠버네티스 노드 쿠버네티스 노드
2.3.7 데이터 관리
쿠버네티스는 백엔드 데이터 스토어로 etcd를 채용하고 있다. etcd는 클러스터를 구성하여 이중
화가 가능하고 컨테이너나 서비스의 매니페스트 파일도 이중화 구조로 저장한다. 또 쿠버네티스
는 컨테이너가 사용하는 설정 파일이나 인증 정보 등의 데이터를 저장하는 구조도 가지고 있어 컨
테이너 공통 설정이나 애플리케이션에서 사용되는 데이터베이스 인증 정보 등을 안전하고 이중화
된 상태로 쿠버네티스에서 집중적으로 관리할 수 있다(그림 2-8).
52
쿠버네티스_04.indd 52 2021-07-20 오후 1:33:00