Eighth Korean I10n work for release-1.13 (#13250)

* ko-trans: Update outdated contents in dev-1.13-ko.8 branch partly (#12986)

* ko: Update outdated files in dev-1.13-ko.8 (#13000)

* ko: add tutorials/stateful-application/basic-stateful-set #12449  (#13073)

* Add missing word. (#13249)

* Fixed wrong word. (#13246)

* Translate concepts/cluster-administration/federation.md in Korean (#13159)

* Translate concepts/overview/object-management-kubectl/imperative-comm… (#13076)

Co-authored-by:    June Yi <june.yi@samsung.com>
Co-authored-by:    Claudia J.Kang <claudiajkang@gmail.com>
Co-authored-by:    Yoon <learder@gmail.com>
Co-authored-by:    Thomas Sungjin Kang <ujuc@ujuc.kr>
Co-authored-by:    Seokho <shsongist@gmail.com>
Co-authored-by:    zerobig <zerobig.kim@gmail.com>
This commit is contained in:
Claudia J.Kang
2019-03-19 23:20:30 +09:00
committed by Kubernetes Prow Robot
parent 2918bc57ac
commit 3bc455b2d9
26 changed files with 1708 additions and 67 deletions
+24 -15
View File
@@ -4,33 +4,42 @@ content_template: templates/concept
weight: 100
---
{{% capture overview %}}
v1.6.0에서부터, 쿠버네티스는 CRI(컨테이너 런타임 인터페이스) 사용을 기본으로 지원한다.
{{< feature-state for_k8s_version="v1.6" state="stable" >}}
파드에서 컨테이너를 실행하기 위해 쿠버네티스는 컨테이너 런타임을 사용한다.
이 페이지는 다양한 런타임들에 대한 설치 지침을 담고 있다.
{{% /capture %}}
{{% capture body %}}
다음의 커맨드들은 사용자의 운영체제에 따라 root로서 실행하길 바란다.
각 호스트에 SSH 접속 후 `sudo -i` 실행을 통해서 root 사용자가 될 수 있을 것이다.
{{< caution >}}
A flaw was found in the way runc handled system file descriptors when running containers.
A malicious container could use this flaw to overwrite contents of the runc binary and
consequently run arbitrary commands on the container host system.
컨테이너를 실행할 때 runc가 시스템 파일 디스크립터를 처리하는 방식에서 결함이 발견되었다.
악성 컨테이너는 이 결함을 사용하여 runc 바이너리의 내용을 덮어쓸 수 있으며
따라서 컨테이너 호스트 시스템에서 임의의 명령을 실행할 수 있다.
Please refer to this link for more information about this issue
[cve-2019-5736 : runc vulnerability ] (https://access.redhat.com/security/cve/cve-2019-5736)
이 문제에 대한 자세한 내용은
[cve-2019-5736 : runc 취약점 ] (https://access.redhat.com/security/cve/cve-2019-5736) 참고하자.
{{< /caution >}}
## Cgroup 드라이버
### 적용 가능성
Linux 배포판의 init 시스템이 systemd인 경우, init 프로세스는 루트 cgroup을 생성 및 사용하고
cgroup 관리자로 작동한다. Systemd는 cgroup과의 긴밀한 통합을 통해
프로세스당 cgroup을 할당한다. 컨테이너 런타임과 kubelet이
`cgroupfs`를 사용하도록 설정할 수 있다. 이 경우는 두 개의 서로 다른 cgroup 관리자가 존재하게 된다는 뜻이다.
{{< note >}}
이 문서는 Linux에 CRI를 설치하는 사용자를 위해 작성되었다.
다른 운영 체제의 경우, 해당 플랫폼과 관련된 문서를 찾아보자.
{{< /note >}}
Cgroup은 프로세스에 할당된 리소스를 제한하는데 사용된다.
이 가이드의 모든 명령은 `root`로 실행해야 한다.
예를 들어,`sudo`로 접두사를 붙이거나, `root` 사용자가 되어 명령을 실행한다.
### Cgroup 드라이버
Linux 배포판의 init 시스템이 systemd인 경우, init 프로세스는
root control group(`cgroup`)을 생성 및 사용하는 cgroup 관리자로 작동한다.
Systemd는 cgroup과의 긴밀한 통합을 통해 프로세스당 cgroup을 할당한다.
컨테이너 런타임과 kubelet이 `cgroupfs`를 사용하도록 설정할 수 있다.
systemd와 함께`cgroupfs`를 사용하면 두 개의 서로 다른 cgroup 관리자가 존재하게 된다는 뜻이다.
Control group은 프로세스에 할당된 리소스를 제한하는데 사용된다.
단일 cgroup 관리자는 할당된 리소스가 무엇인지를 단순화하고,
기본적으로 사용가능한 리소스와 사용중인 리소스를 일관성있게 볼 수 있다.
관리자가 두 개인 경우, 이런 리소스도 두 개의 관점에서 보게 된다. kubelet과 Docker는
+80 -13
View File
@@ -1,8 +1,17 @@
---
title: 여러 영역에서 구동
weight: 90
content_template: templates/concept
---
{{% capture overview %}}
이 페이지는 여러 영역에서 어떻게 클러스터를 구동하는지 설명한다.
{{% /capture %}}
{{% capture body %}}
## 소개
Kubernetes 1.2 adds support for running a single cluster in multiple failure zones
@@ -23,8 +32,6 @@ add similar support for other clouds or even bare metal, by simply arranging
for the appropriate labels to be added to nodes and volumes).
{{< toc >}}
## 기능
When nodes are started, the kubelet automatically adds labels to them with
@@ -118,9 +125,12 @@ labels are `failure-domain.beta.kubernetes.io/region` for the region,
and `failure-domain.beta.kubernetes.io/zone` for the zone:
```shell
> kubectl get nodes --show-labels
kubectl get nodes --show-labels
```
The output is similar to this:
```shell
NAME STATUS ROLES AGE VERSION LABELS
kubernetes-master Ready,SchedulingDisabled <none> 6m v1.13.0 beta.kubernetes.io/instance-type=n1-standard-1,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-a,kubernetes.io/hostname=kubernetes-master
kubernetes-minion-87j9 Ready <none> 6m v1.13.0 beta.kubernetes.io/instance-type=n1-standard-2,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-a,kubernetes.io/hostname=kubernetes-minion-87j9
@@ -154,8 +164,12 @@ View the nodes again; 3 more nodes should have launched and be tagged
in us-central1-b:
```shell
> kubectl get nodes --show-labels
kubectl get nodes --show-labels
```
The output is similar to this:
```shell
NAME STATUS ROLES AGE VERSION LABELS
kubernetes-master Ready,SchedulingDisabled <none> 16m v1.13.0 beta.kubernetes.io/instance-type=n1-standard-1,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-a,kubernetes.io/hostname=kubernetes-master
kubernetes-minion-281d Ready <none> 2m v1.13.0 beta.kubernetes.io/instance-type=n1-standard-2,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-b,kubernetes.io/hostname=kubernetes-minion-281d
@@ -207,7 +221,12 @@ was addressed in 1.3+.
Now let's validate that Kubernetes automatically labeled the zone & region the PV was created in.
```shell
> kubectl get pv --show-labels
kubectl get pv --show-labels
```
The output is similar to this:
```shell
NAME CAPACITY ACCESSMODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE LABELS
pv-gce-mj4gm 5Gi RWO Retain Bound default/claim1 manual 46s failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-a
```
@@ -240,9 +259,20 @@ Note that the pod was automatically created in the same zone as the volume, as
cross-zone attachments are not generally permitted by cloud providers:
```shell
> kubectl describe pod mypod | grep Node
kubectl describe pod mypod | grep Node
```
```shell
Node: kubernetes-minion-9vlv/10.240.0.5
> kubectl get node kubernetes-minion-9vlv --show-labels
```
And check node labels:
```shell
kubectl get node kubernetes-minion-9vlv --show-labels
```
```shell
NAME STATUS AGE VERSION LABELS
kubernetes-minion-9vlv Ready 22m v1.6.0+fff5156 beta.kubernetes.io/instance-type=n1-standard-2,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-a,kubernetes.io/hostname=kubernetes-minion-9vlv
```
@@ -279,12 +309,20 @@ find kubernetes/examples/guestbook-go/ -name '*.json' | xargs -I {} kubectl crea
The pods should be spread across all 3 zones:
```shell
> kubectl describe pod -l app=guestbook | grep Node
kubectl describe pod -l app=guestbook | grep Node
```
```shell
Node: kubernetes-minion-9vlv/10.240.0.5
Node: kubernetes-minion-281d/10.240.0.8
Node: kubernetes-minion-olsh/10.240.0.11
```
> kubectl get node kubernetes-minion-9vlv kubernetes-minion-281d kubernetes-minion-olsh --show-labels
```shell
kubectl get node kubernetes-minion-9vlv kubernetes-minion-281d kubernetes-minion-olsh --show-labels
```
```shell
NAME STATUS ROLES AGE VERSION LABELS
kubernetes-minion-9vlv Ready <none> 34m v1.13.0 beta.kubernetes.io/instance-type=n1-standard-2,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-a,kubernetes.io/hostname=kubernetes-minion-9vlv
kubernetes-minion-281d Ready <none> 20m v1.13.0 beta.kubernetes.io/instance-type=n1-standard-2,failure-domain.beta.kubernetes.io/region=us-central1,failure-domain.beta.kubernetes.io/zone=us-central1-b,kubernetes.io/hostname=kubernetes-minion-281d
@@ -296,15 +334,42 @@ Load-balancers span all zones in a cluster; the guestbook-go example
includes an example load-balanced service:
```shell
> kubectl describe service guestbook | grep LoadBalancer.Ingress
kubectl describe service guestbook | grep LoadBalancer.Ingress
```
The output is similar to this:
```shell
LoadBalancer Ingress: 130.211.126.21
```
> ip=130.211.126.21
Set the above IP:
> curl -s http://${ip}:3000/env | grep HOSTNAME
```shell
export IP=130.211.126.21
```
Explore with curl via IP:
```shell
curl -s http://${IP}:3000/env | grep HOSTNAME
```
The output is similar to this:
```shell
"HOSTNAME": "guestbook-44sep",
```
> (for i in `seq 20`; do curl -s http://${ip}:3000/env | grep HOSTNAME; done) | sort | uniq
Again, explore multiple times:
```shell
(for i in `seq 20`; do curl -s http://${IP}:3000/env | grep HOSTNAME; done) | sort | uniq
```
The output is similar to this:
```shell
"HOSTNAME": "guestbook-44sep",
"HOSTNAME": "guestbook-hum5n",
"HOSTNAME": "guestbook-ppm40",
@@ -331,3 +396,5 @@ KUBERNETES_PROVIDER=aws KUBE_USE_EXISTING_MASTER=true KUBE_AWS_ZONE=us-west-2c k
KUBERNETES_PROVIDER=aws KUBE_USE_EXISTING_MASTER=true KUBE_AWS_ZONE=us-west-2b kubernetes/cluster/kube-down.sh
KUBERNETES_PROVIDER=aws KUBE_AWS_ZONE=us-west-2a kubernetes/cluster/kube-down.sh
```
{{% /capture %}}
@@ -2,6 +2,20 @@
title: 알맞은 솔루션 선정
weight: 10
content_template: templates/concept
card:
name: setup
weight: 20
anchors:
- anchor: "#호스트-된-솔루션"
title: 호스트 된 솔루션
- anchor: "#턴키-클라우드-솔루션"
title: 턴키 클라우드 솔루션
- anchor: "#온-프레미스-턴키-클라우드-솔루션"
title: 온-프레미스 솔루션
- anchor: "#사용자-지정-솔루션"
title: 사용자 지정 솔루션
- anchor: "#로컬-머신-솔루션"
title: 로컬 머신
---
{{% capture overview %}}
@@ -1,6 +1,10 @@
---
title: 릴리스 빌드
content_template: templates/concept
card:
name: download
weight: 20
title: 릴리스 빌드하기
---
{{% capture overview %}}