-
Notifications
You must be signed in to change notification settings - Fork 15k
[ko] Sync/ko/docs/concepts/overview/components.md to match latest en contents #51936
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
296b202
1442ced
9d07333
b7fbf55
e1bf85a
bd78f1d
46511b1
1a8fc69
0ecd7c1
22837e4
ff04796
1c58697
eca8e56
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -4,128 +4,86 @@ | |||||
title: 쿠버네티스 컴포넌트 | ||||||
content_type: concept | ||||||
description: > | ||||||
쿠버네티스 클러스터는 컴퓨터 집합인 노드 컴포넌트와 컨트롤 플레인 | ||||||
컴포넌트로 구성된다. | ||||||
weight: 30 | ||||||
쿠버네티스 클러스터를 구성하는 핵심 컴포넌트들의 개요. | ||||||
weight: 10 | ||||||
card: | ||||||
title: 클러스터의 컴포넌트 | ||||||
name: concepts | ||||||
weight: 20 | ||||||
--- | ||||||
|
||||||
<!-- overview --> | ||||||
쿠버네티스를 배포하면 클러스터를 얻는다. | ||||||
{{< glossary_definition term_id="cluster" length="all" prepend="쿠버네티스 클러스터는">}} | ||||||
|
||||||
이 문서는 완전히 작동하는 쿠버네티스 클러스터를 갖기 위해 필요한 | ||||||
다양한 컴포넌트들에 대해 요약하고 정리한다. | ||||||
이 페이지는 쿠버네티스 클러스터를 구성하는 필수 컴포넌트에 대한 상위 수준의 개요를 제공한다. | ||||||
|
||||||
{{< figure src="/images/docs/components-of-kubernetes.svg" alt="쿠버네티스 구성 요소" caption="쿠버네티스 클러스터 구성 요소" class="diagram-large" >}} | ||||||
{{< figure src="/images/docs/components-of-kubernetes.svg" alt="쿠버네티스의 컴포넌트" caption="쿠버네티스 클러스터 컴포넌트" class="diagram-large" clicktozoom="true" >}} | ||||||
|
||||||
<!-- body --> | ||||||
## 컨트롤 플레인 컴포넌트 | ||||||
|
||||||
컨트롤 플레인 컴포넌트는 클러스터에 관한 전반적인 결정(예를 들어, 스케줄링)을 수행하고 클러스터 이벤트(예를 들어, 디플로이먼트의 `replicas` 필드에 대한 요구 조건이 충족되지 않을 경우 새로운 {{< glossary_tooltip text="파드" term_id="pod">}}를 구동시키는 것)를 감지하고 반응한다. | ||||||
## 핵심 컴포넌트 | ||||||
|
||||||
컨트롤 플레인 컴포넌트는 클러스터 내 어떠한 머신에서든지 동작할 수 있다. 그러나 | ||||||
간결성을 위하여, 구성 스크립트는 보통 동일 머신 상에 모든 컨트롤 플레인 컴포넌트를 구동시키고, | ||||||
사용자 컨테이너는 해당 머신 상에 동작시키지 않는다. 여러 머신에서 | ||||||
실행되는 컨트롤 플레인 설정의 예제를 보려면 | ||||||
[kubeadm을 사용하여 고가용성 클러스터 만들기](/docs/setup/production-environment/tools/kubeadm/high-availability/)를 확인해본다. | ||||||
쿠버네티스 클러스터는 컨트롤 플레인과 하나 이상의 워커 노드로 구성된다. | ||||||
다음은 주요 컴포넌트에 대한 간략한 개요이다. | ||||||
|
||||||
### kube-apiserver | ||||||
### 컨트롤 플레인 컴포넌트 | ||||||
|
||||||
{{< glossary_definition term_id="kube-apiserver" length="all" >}} | ||||||
클러스터의 전체 상태를 관리한다. | ||||||
|
||||||
### etcd | ||||||
[kube-apiserver](/docs/concepts/architecture/#kube-apiserver) | ||||||
: 쿠버네티스 HTTP API를 노출하는 핵심 서버 컴포넌트이다. | ||||||
|
||||||
{{< glossary_definition term_id="etcd" length="all" >}} | ||||||
[etcd](/docs/concepts/architecture/#etcd) | ||||||
: 모든 API 서버 데이터를 위한 일관성과 고가용성을 갖춘 키-값 저장소이다. | ||||||
|
||||||
### kube-scheduler | ||||||
[kube-scheduler](/docs/concepts/architecture/#kube-scheduler) | ||||||
: 아직 노드에 할당되지 않은 파드를 찾아 적절한 노드에 할당한다. | ||||||
|
||||||
{{< glossary_definition term_id="kube-scheduler" length="all" >}} | ||||||
[kube-controller-manager](/docs/concepts/architecture/#kube-controller-manager) | ||||||
: {{< glossary_tooltip text="컨트롤러" term_id="controller" >}}를 실행하여 쿠버네티스 API 동작을 구현한다. | ||||||
|
||||||
### kube-controller-manager | ||||||
|
||||||
{{< glossary_definition term_id="kube-controller-manager" length="all" >}} | ||||||
|
||||||
이들 컨트롤러는 다음을 포함한다. | ||||||
|
||||||
* 노드 컨트롤러: 노드가 다운되었을 때 통지와 대응에 관한 책임을 가진다. | ||||||
* 잡 컨트롤러: 일회성 작업을 나타내는 잡 오브젝트를 감시한 다음, 해당 작업을 | ||||||
완료할 때까지 동작하는 파드를 생성한다. | ||||||
* 엔드포인트슬라이스 컨트롤러: (서비스와 파드 사이의 연결고리를 제공하기 위해) 엔드포인트슬라이스(EndpointSlice) 오브젝트를 채운다 | ||||||
* 서비스어카운트 컨트롤러: 새로운 네임스페이스에 대한 기본 서비스어카운트(ServiceAccount)를 생성한다. | ||||||
|
||||||
### cloud-controller-manager | ||||||
|
||||||
{{< glossary_definition term_id="cloud-controller-manager" length="short" >}} | ||||||
|
||||||
cloud-controller-manager는 클라우드 제공자 전용 컨트롤러만 실행한다. | ||||||
자신의 사내 또는 PC 내부의 학습 환경에서 쿠버네티스를 실행 중인 경우 | ||||||
클러스터에는 클라우드 컨트롤러 매니저가 없다. | ||||||
|
||||||
kube-controller-manager와 마찬가지로 cloud-controller-manager는 논리적으로 | ||||||
독립적인 여러 컨트롤 루프를 단일 프로세스로 실행하는 단일 바이너리로 결합한다. | ||||||
수평으로 확장(두 개 이상의 복제 실행)해서 성능을 향상시키거나 장애를 견딜 수 있다. | ||||||
|
||||||
다음 컨트롤러들은 클라우드 제공 사업자의 의존성을 가질 수 있다. | ||||||
|
||||||
* 노드 컨트롤러: 노드가 응답을 멈춘 후 클라우드 상에서 삭제되었는지 판별하기 위해 클라우드 제공 사업자에게 확인하는 것 | ||||||
* 라우트 컨트롤러: 기본 클라우드 인프라에 경로를 구성하는 것 | ||||||
* 서비스 컨트롤러: 클라우드 제공 사업자 로드밸런서를 생성, 업데이트 그리고 삭제하는 것 | ||||||
[cloud-controller-manager](/docs/concepts/architecture/#cloud-controller-manager) (선택 사항) | ||||||
: 기본 클라우드 공급자와 통합한다. | ||||||
|
||||||
## 노드 컴포넌트 | ||||||
|
||||||
노드 컴포넌트는 동작 중인 파드를 유지시키고 쿠버네티스 런타임 환경을 제공하며, 모든 노드 상에서 동작한다. | ||||||
모든 노드에서 실행되며, 실행 중인 파드를 유지하고 쿠버네티스 런타임 환경을 제공한다. | ||||||
|
||||||
### kubelet | ||||||
[kubelet](/docs/concepts/architecture/#kubelet) | ||||||
: 파드와 그 안의 컨트롤러가 실행 중임을 보장한다. | ||||||
|
||||||
{{< glossary_definition term_id="kubelet" length="all" >}} | ||||||
[kube-proxy](/docs/concepts/architecture/#kube-proxy) (optional) | ||||||
: 노드에서 네트워크 규칙을 유지하여 {{< glossary_tooltip text="서비스" term_id="service" >}}를 구현한다. | ||||||
|
||||||
### kube-proxy | ||||||
[컨테이너 런타임](/docs/concepts/architecture/#container-runtime) | ||||||
: 컨테이너 실행을 담당하는 소프트웨어이다. 자세한 내용은 | ||||||
[컨테이너 런타임](/ko/docs/setup/production-environment/container-runtimes/)을 참고한다. | ||||||
|
||||||
{{< glossary_definition term_id="kube-proxy" length="all" >}} | ||||||
{{% thirdparty-content single="true" %}} | ||||||
|
||||||
### 컨테이너 런타임 | ||||||
|
||||||
{{< glossary_definition term_id="container-runtime" length="all" >}} | ||||||
클러스터는 각 노드에 대한 추가적인 소프트웨어를 요구할 수 있다. 예를 들어, Linux 노드에서는 | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
로컬 컴포넌트를 관리하기 위해 [systemd](https://systemd.io/)를 함께 실행할 수 있다. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
|
||||||
## 애드온 | ||||||
|
||||||
애드온은 쿠버네티스 리소스({{< glossary_tooltip text="데몬셋" term_id="daemonset" >}}, | ||||||
{{< glossary_tooltip text="디플로이먼트" term_id="deployment" >}} 등)를 | ||||||
이용하여 클러스터 기능을 구현한다. 이들은 클러스터 단위의 기능을 제공하기 때문에 | ||||||
애드온에 대한 네임스페이스 리소스는 `kube-system` 네임스페이스에 속한다. | ||||||
|
||||||
선택된 일부 애드온은 아래에 설명하였고, 사용 가능한 전체 확장 애드온 리스트는 | ||||||
[애드온](/ko/docs/concepts/cluster-administration/addons/)을 참조한다. | ||||||
|
||||||
### DNS | ||||||
|
||||||
여타 애드온들이 절대적으로 요구되지 않지만, 많은 예시에서 필요로 하기 때문에 모든 쿠버네티스 클러스터는 [클러스터 DNS](/ko/docs/concepts/services-networking/dns-pod-service/)를 갖추어야만 한다. | ||||||
|
||||||
클러스터 DNS는 구성환경 내 다른 DNS 서버와 더불어, 쿠버네티스 서비스를 위해 DNS 레코드를 제공해주는 DNS 서버다. | ||||||
|
||||||
쿠버네티스에 의해 구동되는 컨테이너는 DNS 검색에서 이 DNS 서버를 자동으로 포함한다. | ||||||
|
||||||
### 웹 UI (대시보드) | ||||||
|
||||||
[대시보드](/ko/docs/tasks/access-application-cluster/web-ui-dashboard/)는 쿠버네티스 클러스터를 위한 범용의 웹 기반 UI다. 사용자가 클러스터 자체뿐만 아니라, 클러스터에서 동작하는 애플리케이션에 대한 관리와 문제 해결을 할 수 있도록 해준다. | ||||||
애드온은 쿠버네티스의 기능을 확장한다. 대표적인 예시는 다음과 같다. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
원문의 느낌을 살려 자연스럽게 다듬어 보았습니다. |
||||||
|
||||||
### 컨테이너 리소스 모니터링 | ||||||
[DNS](/docs/concepts/architecture/#dns) | ||||||
: 클러스터 전반의 DNS 해석을 담당한다. | ||||||
|
||||||
[컨테이너 리소스 모니터링](/ko/docs/tasks/debug/debug-cluster/resource-usage-monitoring/)은 | ||||||
중앙 데이터베이스 내의 컨테이너들에 대한 포괄적인 시계열 매트릭스를 기록하고 그 데이터를 열람하기 위한 UI를 제공해 준다. | ||||||
[웹 UI](/docs/concepts/architecture/#web-ui-dashboard) (대시보드) | ||||||
: 웹 인터페이스를 통한 클러스터 관리를 제공한다. | ||||||
|
||||||
### 클러스터-레벨 로깅 | ||||||
[컨테이너 리소스 모니터링](/docs/concepts/architecture/#container-resource-monitoring) | ||||||
: 컨테이너 매트릭을 수집하고 저장한다. | ||||||
|
||||||
[클러스터-레벨 로깅](/ko/docs/concepts/cluster-administration/logging/) 메커니즘은 | ||||||
검색/열람 인터페이스와 함께 중앙 로그 저장소에 컨테이너 로그를 저장하는 책임을 진다. | ||||||
[클러스터-레벨 로깅](/docs/concepts/architecture/#cluster-level-logging) | ||||||
: 컨테이너 로그를 중앙 로그 저장소에 저장한다. | ||||||
|
||||||
## 아키텍처의 유연성 | ||||||
|
||||||
## {{% heading "whatsnext" %}} | ||||||
쿠버네티스는 이러한 컴포넌트가 배포되고 관리되는 방식에 있어 유연성을 제공한다. | ||||||
아키텍처는 소규모의 개발 환경부터 대규모 프로덕션 개발 환경까지 | ||||||
다양한 요구에 맞게 조정될 수 있다. | ||||||
|
||||||
* [노드](/ko/docs/concepts/architecture/nodes/)에 대해 더 배우기 | ||||||
* [컨트롤러](/ko/docs/concepts/architecture/controller/)에 대해 더 배우기 | ||||||
* [kube-scheduler](/ko/docs/concepts/scheduling-eviction/kube-scheduler/)에 대해 더 배우기 | ||||||
* etcd의 공식 [문서](https://etcd.io/docs/) 읽기 | ||||||
각 컴포넌트에 대한 자세한 정보와 클러스터 아키텍처를 구성하는 다양한 방법은 | ||||||
[클러스터 아키텍처](/ko/docs/concepts/architecture/) 페이지를 참고한다. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: 기존 문서에서는 "Component"를 "구성 요소"로 번역하였는데, 해당 풀 리퀘스트에서는 "컴포넌트"로 작성해주셨습니다. 이에 대한 논의가 필요할 것 같습니다:)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jongwooo
Core Components
의 경우구성 요소
로 번역해도 의미상 큰 위화감은 없지만,Control Plane Components
와Node Components
의 경우에는컴포넌트
라는 표현을 사용하는 것이 더 일반적으로 통용되고 의미 전달에도 적합하다고 판단하여, 전체적으로컴포넌트
로 통일하였습니다.다른 의견이나, 제가 잘못 생각하고 있다면 알려주시면 감사드리겠습니다.
리뷰 모두 반영하였습니다.
원문을 살리면서 자연스럽게 번역할 수 있는 연습을 더 해야겠다는 생각이 들었습니다.
세심히 봐주셔서 감사드립니다.