쿠버네티스의 기초 개념 (1)
- Coding/Docker
- 2021. 7. 5.
반응형
728x90
반응형
쿠버네티스의 개념
컨테이너를 실행하는 서버 클러스터를 하나의 커다란 논리 서버로 만드는 컨테이너 오케스트레이터이다. 또한 컨테이너를 쉽고 빠르게 배포 및 확장할 수 있고, 관리를 자동화해주는 오픈소스 플랫폼이다.
- 오케스트레이터
데브옵스(DevOps) 직원(또는 자동화)이 레지스트리에서 이미지를 가져오고, 컨테이너 이미지를 배치하고, 실행 중인 컨테이너를 관리할 수 있게 하는 도구이다.
역할
1) 컨테이너를 배포/실행 하면서 '무중단 롤링 업그레이드'를 지원한다.
= 새로운 버전의 컨테이너가 배포되더라도, 기존의 컨테이너가 중지되지 않고 교체되며 이를 무중단 배포라고 한다.
2) 하나 혹은 다수의 컨테이너가 배치된 포드(pod)를 클러스터의 가용 노드에 스케줄링 할 수 있다.
3) 실행중인 컨테이너의 상태를 모니터링할 수 있다.
용어정리
용어 | 설명 |
노드 (node) | 클러스터에 속한 가상 혹은 물리 서버 |
포드 (pod) | 쿠버네티스에 배포할 수 있는 컴포넌트의 최소 단위 하나 혹은 여러개의 컨테이너를 포함 가능 |
디플로이먼트 (deployment) | 포드를 배포 및 업그레이드 실행 디플로이먼트 객체는 포드 생성 및 모니터링은 레플리카 셋이 담당하도록 위임 |
레플리카셋 (ReplicaSet) | 지정한 수의 포드가 항상 실행하게 하고, 포드가 삭제되면 레플리카 셋이 대체할 포드를 실행 |
서비스 (Service) | 하나 혹은 여러개의 포드를 연결하고자 사용하는 안정적인 네트워크 엔드포인트 |
인그레스 (ingress) | 쿠버네티스 클러스터의 서비스에 대한 HTTP 기반의 외부 접근을 관리 |
네임스페이스 (namespace) | 쿠버네티스 클러스터의 리소스를 모으고 특정 수준으로 격리하고자 사용 |
컨피그 맵 (configMap) | 컨테이너에서 사용하는 구성을 저장할때 사용 |
시크릿 (secret) | 자격 증명 등의 컨테이너에서 사용하는 민감한 정보를 저장할때 사용 |
DaemonSet | 클러스터 노드 집합의 각 노드마다 하나의 포드가 실행되게한다 |
더 알아보기
쿠버네티스는 실행중인 포드와 컨테이너를 위한 서비스 검색을 제공한다. 쿠버네티스의 서비스 객체를 정의하면 요청을 가용 포드로 로드밸런싱하고 서비스를 검색할 수 있다.
쿠버네티스는 직접 컨테이너를 실행하지 않고, 포드를 실행하여 포드 속의 각 컨테이너가 동일한 리소스 및 로컬 네트워크를 공유하게된다.
컨테이너를 모아 포드를 만들기 때문에, 만약 포드 하나의 장애가 감지되면 쿠버네티스는 자동으로 해당 포드를 복제한 다음 클러스터에 배포한다. 각 컨테이너를 관리하지 않고, 하나의 포드에 여러개의 컨테이너를 묶어서 관리하기 때문에 가능하다.
반응형
'Coding > Docker' 카테고리의 다른 글
docker 에 rabbitMQ 설치하기 (with docker-compose.yml) (0) | 2021.10.13 |
---|---|
쿠버네티스 배포 전략 : 롤링 업데이트 전략 vs 재생성 전략 (0) | 2021.07.13 |
docker + mariadb 설치 후 실행까지 (0) | 2021.06.15 |
docker 에 rabbitMQ 설치하기 (0) | 2021.06.14 |
docker로 Kafka, Zookeeper 설치 (with docker-compose) (0) | 2021.03.07 |