쿠버네티스 구성 요소

쿠버네티스 구성 요소 (Components)

이 페이지에서는 쿠버네티스 클러스터를 구성하는 필수 구성 요소에 대한 개괄적인 개요를 제공해요.

출처: 문서

본문

핵심 구성 요소

쿠버네티스 클러스터는 컨트롤 플레인과 하나 이상의 워커 노드로 구성됩니다. 다음은 주요 구성 요소에 대한 간략한 개요예요:

컨트롤 플레인 구성 요소

클러스터의 전체 상태를 관리해요:

kube-apiserver : 쿠버네티스 HTTP API를 노출하는 핵심 구성 요소 서버.

etcd : 모든 API 서버 데이터를 위한 일관되고 고가용성인 키-값 저장소.

kube-scheduler : 아직 노드에 바인딩되지 않은 파드를 찾아 각 파드를 적합한 노드에 할당한다.

kube-controller-manager : 쿠버네티스 API 동작을 구현하는 컨트롤러를 실행한다.

cloud-controller-manager (선택 사항) : 기반이 되는 클라우드 제공자와 통합한다.

노드 구성 요소

모든 노드에서 실행되며 파드를 실행 상태로 유지하고 쿠버네티스 런타임 환경을 제공해요:

kubelet : 컨테이너를 포함해 파드가 실행되고 있는지 보장한다.

kube-proxy (선택 사항) : Service 개념을 구현하기 위해 노드의 네트워크 규칙을 유지한다.

컨테이너 런타임 : 컨테이너를 실행하는 책임을 가진 소프트웨어. 컨테이너 런타임을 읽어 더 알아보세요.

클러스터는 각 노드에 추가 소프트웨어가 필요할 수 있어요. 예를 들어 Linux 노드에서 로컬 구성 요소를 감독하기 위해 systemd를 실행할 수도 있습니다.

애드온

애드온은 쿠버네티스의 기능을 확장해요. 몇 가지 중요한 예시는 다음과 같습니다:

DNS : 클러스터 전체의 DNS 해석용.

웹 UI (Dashboard) : 웹 인터페이스를 통한 클러스터 관리용.

컨테이너 리소스 모니터링 : 컨테이너 메트릭 수집·저장용.

클러스터 레벨 로깅 : 컨테이너 로그를 중앙 로그 저장소에 저장용.

아키텍처의 유연성

쿠버네티스는 이러한 구성 요소를 배포·관리하는 방식에 유연성을 허용해요. 아키텍처는 소규모 개발 환경에서 대규모 프로덕션 배포까지 다양한 요구에 맞게 조정할 수 있습니다.

각 구성 요소와 클러스터 아키텍처를 구성하는 다양한 방법에 대한 더 자세한 정보는 클러스터 아키텍처 페이지를 참고하세요.

더 알아보기 (Learn more)