@@ -15,12 +15,19 @@ weight: 20
15
15
16
16
<!-- body -->
17
17
18
+ 쿠버네티스 {{< skew currentVersion >}}에서는
19
+ {{< glossary_tooltip term_id="cri" text="컨테이너 런타임 인터페이스">}}(CRI) 요구사항을 만족하는
20
+ 런타임을 사용해야 한다.
21
+
22
+ 더 자세한 정보는 [ CRI 버전 지원] ( #cri-versions ) 을 참조한다.
23
+
18
24
이 페이지에는 리눅스 환경의 쿠버네티스에서 여러 공통 컨테이너 런타임을 사용하는 방법에 대한
19
25
세부 정보가 있다.
20
26
21
27
- [ containerd] ( #containerd )
22
28
- [ CRI-O] ( #cri-o )
23
- - [ 도커] ( #도커 )
29
+ - [ 도커 엔진] ( #docker )
30
+ - [ 미란티스 컨테이너 런타임] ( #mcr )
24
31
25
32
{{< note >}}
26
33
다른 운영 체제의 경우, 해당 플랫폼과 관련된 문서를 찾아보자.
@@ -76,13 +83,17 @@ systemd가 기본적으로 cgroup v2를 사용하지 않는 경우, 커널 명
76
83
추가하여 cgroup v2를 사용하도록 시스템을 구성할 수 있다.
77
84
78
85
``` shell
79
- # dnf install -y grubby && \
86
+ # 이 예제는 리눅스 OS에서 DNF 패키지 관리자를 사용하는 경우에 대한 것이다.
87
+ # 리눅스 커널이 사용하는 커맨드 라인을 설정하기 위해
88
+ # 사용자의 시스템이 다른 방법을 사용하고 있을 수도 있다.
89
+ sudo dnf install -y grubby && \
80
90
sudo grubby \
81
91
--update-kernel=ALL \
82
92
--args=" systemd.unified_cgroup_hierarchy=1"
83
93
```
84
94
85
- 구성을 적용하려면 노드를 재부팅해야 한다.
95
+ 커널이 사용하는 커맨드 라인을 업데이트하려면,
96
+ 변경 사항을 적용하기 위해 노드를 재시작해야 한다.
86
97
87
98
cgroup v2로 전환할 때 사용자가 노드 또는 컨테이너 내에서
88
99
cgroup 파일 시스템에 직접 접근하지 않는 한 사용자 경험에 현저한 차이가 없어야 한다.
@@ -94,13 +105,24 @@ cgroup v2를 사용하려면 CRI 런타임에서도 cgroup v2를 지원해야
94
105
kubeadm으로 생성한 클러스터의 cgroup 드라이버를 ` systemd ` 로 변경하려면
95
106
[ 변경 가이드] ( /docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/ ) 를 참고한다.
96
107
108
+ ## CRI 버전 지원 {#cri-versions}
109
+
110
+ 사용할 컨테이너 런타임이 적어도 CRI의 v1alpha2 이상을 지원해야 한다.
111
+
112
+ 쿠버네티스 {{< skew currentVersion >}} 버전에서는 기본적으로 CRI API 중 v1을 사용한다.
113
+ 컨테이너 런타임이 v1 API를 지원하지 않으면,
114
+ kubelet은 대신 (사용 중단된) v1alpha2 API를 사용하도록 설정된다.
115
+
97
116
## 컨테이너 런타임
98
117
99
118
{{% thirdparty-content %}}
100
119
120
+
101
121
### containerd
102
122
103
- 이 섹션에는 containerd 를 CRI 런타임으로 사용하는 데 필요한 단계가 포함되어 있다.
123
+ 이 섹션에는 containerd를 CRI 런타임으로 사용하는 데 필요한 단계가 포함되어 있다.
124
+
125
+ 다음 명령을 사용하여 시스템에 containerd를 설치한다.
104
126
105
127
필수 구성 요소를 설치 및 구성한다.
106
128
@@ -151,13 +173,12 @@ containerd를 설치한다.
151
173
{{% tab name="Windows (PowerShell)" %}}
152
174
153
175
PowerShell 세션을 시작하고 ` $Version ` 을 원하는 버전으로
154
- 설정(예: ` $Version:1.4.3 ` )한 후 다음 명령을 실행한다.
176
+ 설정(예: ` $Version:" 1.4.3" ` )한 후 다음 명령을 실행한다.
155
177
156
178
1 . containerd 다운로드
157
179
158
180
``` powershell
159
- curl.exe -L https://github.com/containerd/containerd/releases/download/v$Version/containerd-$Version-windows-amd64.tar.gz -o containerd-windows-amd64.tar.
160
- gz
181
+ curl.exe -L https://github.com/containerd/containerd/releases/download/v$Version/containerd-$Version-windows-amd64.tar.gz -o containerd-windows-amd64.tar.gz
161
182
tar.exe xvf .\containerd-windows-amd64.tar.gz
162
183
```
163
184
@@ -393,44 +414,28 @@ cgroup_manager = "cgroupfs"
393
414
CRI-O의 cgroup 드라이버 구성을 동기화 상태로
394
415
유지해야 한다.
395
416
396
- ### 도커
417
+ ### 도커 엔진 {#docker}
397
418
398
- 1 . 각 노드에서 [ 도커 엔진 설치 ] ( https://docs.docker.com/engine/install/#server ) 에 따라
399
- 리눅스 배포판용 도커를 설치한다 .
400
- 이 [ 의존성 파일 ] ( https://git.k8s.io/kubernetes/build/dependencies.yaml ) 에서
401
- 검증된 최신 버전의 도커를 찾을 수 있다.
419
+ 도커 엔진은 모든 것을 시작한 컨테이너 런타임이다.
420
+ 이전에는 간단히 도커로 알려졌던 이 컨테이너 런타임은 다양한 형태로 사용할 수 있다 .
421
+ [ 도커 엔진 설치하기 ] ( https://docs.docker.com/engine/install/ ) 에서
422
+ 이 런타임 설치의 옵션들을 확인할 수 있다.
402
423
403
- 2 . 특히 컨테이너의 cgroup 관리에 systemd를 사용하도록 도커 데몬을 구성한다.
424
+ 도커 엔진은 쿠버네티스 {{< skew currentVersion >}}와 직접 호환되며, 이는 사용 중단된 ` dockershim ` 컴포넌트를 활용하기 때문에 가능하다.
425
+ 더 많은 정보와 맥락을 보려면, [ Dockershim 사용 중단 FAQ] ( /dockershim ) 를 참고한다.
404
426
405
- ``` shell
406
- sudo mkdir /etc/docker
407
- cat << EOF | sudo tee /etc/docker/daemon.json
408
- {
409
- "exec-opts": ["native.cgroupdriver=systemd"],
410
- "log-driver": "json-file",
411
- "log-opts": {
412
- "max-size": "100m"
413
- },
414
- "storage-driver": "overlay2"
415
- }
416
- EOF
417
- ` ` `
427
+ 지원되는 {{< glossary_tooltip term_id="cri" text="컨테이너 런타임 인터페이스">}}(CRI)를 통해
428
+ 쿠버네티스에서 도커 엔진을 사용할 수 있게 해 주는
429
+ 써드파티 어댑터를 찾아볼 수도 있다.
418
430
419
- {{< note > }}
420
- ` overlay2` 는 리눅스 커널 4.0 이상 또는 3.10.0-514 버전 이상을 사용하는 RHEL
421
- 또는 CentOS를 구동하는 시스템에서 선호하는 스토리지 드라이버이다.
422
- {{< /note > }}
431
+ 다음 CRI 어댑터는 도커 엔진과 함께 동작하도록 설계되었다.
423
432
424
- 3. 도커 재시작과 부팅시 실행되게 설정
433
+ - 미란티스의 [ ` cri-dockerd ` ] ( https://github.com/Mirantis/cri-dockerd )
425
434
426
- ` ` ` shell
427
- sudo systemctl enable docker
428
- sudo systemctl daemon-reload
429
- sudo systemctl restart docker
430
- ` ` `
435
+ ### 미란티스 컨테이너 런타임 {#mcr}
431
436
432
- {{ < note > }}
433
- 더 자세한 내용은
434
- - [도커 데몬 설정](https://docs.docker.com/config/daemon/)
435
- - [systemd로 도커 제어 ](https://docs.docker. com/config/daemon/systemd/)
436
- {{ < /note > }}
437
+ [ 미란티스 컨테이너 런타임 ] ( https://docs.mirantis.com/mcr/20.10/overview.html ) (MCR)은 상용 컨테이너 런타임이며
438
+ 이전에는 도커 엔터프라이즈 에디션으로 알려져 있었다.
439
+
440
+ 오픈소스인 [ ` cri-dockerd ` ] ( https://github. com/Mirantis/cri-dockerd ) 컴포넌트를 이용하여 쿠버네티스에서 미란티스 컨테이너 런타임을 사용할 수 있으며,
441
+ 이 컴포넌트는 MCR에 포함되어 있다.
0 commit comments