편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
8번째 줄: | 8번째 줄: | ||
쿠버네티스를 배포하면 클러스터를 얻습니다. | 쿠버네티스를 배포하면 클러스터를 얻습니다. | ||
쿠버네티스 클러스터는 | 쿠버네티스 클러스터는 노드라고 불리는 워커 머신 세트로 구성되며, 이 노드들은 컨테이너화된 애플리케이션을 실행합니다. 모든 클러스터에는 최소한 하나의 워커 노드가 있습니다. | ||
워커 노드들은 애플리케이션 워크로드의 컴포넌트인 | 워커 노드들은 애플리케이션 워크로드의 컴포넌트인 파드(Pod)를 호스팅합니다. 컨트롤 플레인은 클러스터의 워커 노드와 파드를 관리합니다. 프로덕션 환경에서는 컨트롤 플레인이 보통 여러 컴퓨터에 걸쳐 실행되고, 클러스터는 보통 여러 노드를 실행하여 내결함성(fault-tolerance)과 고가용성(high availability)을 제공합니다. | ||
이 문서는 완전하고 작동하는 쿠버네티스 클러스터를 구성하는 데 필요한 다양한 컴포넌트를 설명합니다. | 이 문서는 완전하고 작동하는 쿠버네티스 클러스터를 구성하는 데 필요한 다양한 컴포넌트를 설명합니다. | ||
18번째 줄: | 18번째 줄: | ||
==컨트롤 플레인 컴포넌트== | ==컨트롤 플레인 컴포넌트== | ||
컨트롤 플레인 컴포넌트는 클러스터에 대한 전반적인 결정을 내리고(예: 스케줄링), 클러스터 이벤트를 감지하고 대응합니다(예: Deployment의 | 컨트롤 플레인 컴포넌트는 클러스터에 대한 전반적인 결정을 내리고(예: 스케줄링), 클러스터 이벤트를 감지하고 대응합니다(예: Deployment의 레플리카 필드가 충족되지 않을 때 새로운 파드를 시작). | ||
컨트롤 플레인 컴포넌트는 클러스터의 모든 머신에서 실행될 수 있습니다. 그러나 간단히 하기 위해 설정 스크립트는 일반적으로 모든 컨트롤 플레인 컴포넌트를 같은 머신에서 시작하며, 이 머신에서는 사용자 컨테이너를 실행하지 않습니다. 여러 머신에 걸쳐 실행되는 예시 컨트롤 플레인 설정에 대해서는 [[kubeadm으로 고가용성 클러스터 생성하기|kubeadm을 사용하여 고가용성 클러스터 생성하기]]를 참조하십시오. | 컨트롤 플레인 컴포넌트는 클러스터의 모든 머신에서 실행될 수 있습니다. 그러나 간단히 하기 위해 설정 스크립트는 일반적으로 모든 컨트롤 플레인 컴포넌트를 같은 머신에서 시작하며, 이 머신에서는 사용자 컨테이너를 실행하지 않습니다. 여러 머신에 걸쳐 실행되는 예시 컨트롤 플레인 설정에 대해서는 [[kubeadm으로 고가용성 클러스터 생성하기|kubeadm을 사용하여 고가용성 클러스터 생성하기]]를 참조하십시오. | ||
===kube-apiserver=== | ===kube-apiserver=== | ||
API 서버는 Kubernetes 컨트롤 플레인의 컴포넌트로, Kubernetes API를 노출합니다. API 서버는 Kubernetes | API 서버는 Kubernetes 컨트롤 플레인의 컴포넌트로, Kubernetes API를 노출합니다. API 서버는 Kubernetes 컨트롤 플레인의 프론트 엔드 역할을 합니다. | ||
Kubernetes API 서버의 주요 구현체는 [[kube-apiserver]]입니다. kube-apiserver는 수평 확장을 염두에 두고 설계되었습니다. 즉, 더 많은 인스턴스를 배포함으로써 확장할 수 있습니다. 여러 인스턴스의 kube-apiserver를 실행하고, 그 인스턴스들 간의 트래픽을 분산시킬 수 있습니다. | Kubernetes API 서버의 주요 구현체는 [[kube-apiserver]]입니다. kube-apiserver는 수평 확장을 염두에 두고 설계되었습니다. 즉, 더 많은 인스턴스를 배포함으로써 확장할 수 있습니다. 여러 인스턴스의 kube-apiserver를 실행하고, 그 인스턴스들 간의 트래픽을 분산시킬 수 있습니다. | ||
===etcd=== | ===etcd=== | ||
===kube-scheduler=== | ===kube-scheduler=== | ||
===kube-controller-manager=== | |||
===cloud-controller-manager=== | |||
=== | |||
=== | |||
==노드 컴포넌트== | ==노드 컴포넌트== | ||
===kubelet=== | ===kubelet=== | ||
===kube-proxy=== | ===kube-proxy=== | ||
kube-proxy는 클러스터의 각 [[k8s 노드|노드]]에서 실행되는 네트워크 프록시로, [[Kubernetes 서비스]] 개념의 일부를 구현합니다. | kube-proxy는 클러스터의 각 [[k8s 노드|노드]]에서 실행되는 네트워크 프록시로, [[Kubernetes 서비스]] 개념의 일부를 구현합니다. | ||
77번째 줄: | 41번째 줄: | ||
===컨테이너 런타임=== | ===컨테이너 런타임=== | ||
==애드온== | ==애드온== | ||
===DNS=== | ===DNS=== |