Fourth Korean l10n work for release-1.13 (#12242)

* ko-trans: Fix broken page index for concepts/overview (#11533)

* ko-trans: Update outdated files in dev-1.13-ko.4 (#11544)

* 1. Translate naturally (#11759)

2. Fix markdown error

* ko-trans: Translate building-from-source.md (#11893)

* ko-trans: Translate building-from-source.md

* Address comments

* Update etcd.md (#11976)

* ko-trans: Translate ko/_index.html into Korean (#11937)

* ko-trans: Translate ko/_index.html into Korean.

* Reflect a translation comment. Translate ko/_index.html into Korean

* ko-trans: Translate online-training/overview.md (#11932)

* ko-trans: Translate node-conformance.md (#11907)

* ko-trans: Translate node-conformance.md

* Replace 명세 with 매니페스트.

* Address comments

* ko-trans: Translate tutorials/configuration (#11933)

* ko-trans: Translate `tutorials/configuration` directory

* Address comments

* ko-trans: content/ko/docs/reference/glossary/controller.md (#11994)

* ko-trans: Controller

ko-trans: Controller

* the feedback applied.

the feedback applied.

* minor edit

minor edit

* minor edit #2

minor edit #2

* ko-trans: reference/glossary/kube-apiserver.md (#12024)

ko-trans: reference/glossary/kube-apiserver.md

* Translate tutorials/stateless-application/ in Korean (#12008)

* Translate tutorials/stateless-application/ in Korean

* Apply comments

* Fix deployment related typos

* Translate content/ko/docs/concepts/architecture/nodes in Korean #11748 (#11850)

* Translate content/ko/docs/concepts/architecture/nodes in Korean #11748

* Translate content/ko/docs/concepts/architecture/nodes in Korean #11748

* Translate content/ko/docs/concepts/architecture/nodes in Korean #11748

* Translate concepts/workloads/pods/pod-lifecycle in Korean (#12054)

* Translate concepts/workloads/pods/pod-lifecycle in Korean

* apply review ko-translate concepts/.../pod-lifecycle

* ko-trans: kube-controller-manager.md (#12077)

ko-trans: docs/reference/glossary/kube-controller-manager.md

* fix Italic syntax markdown error (#12128)

* Translate tasks/_index.md in Korean (#12126)

* Translate tasks/_index.md in Korean

* Apply review for Translate tasks/_index.md in Korean

Apply comments for Translate tasks/_index.md in Korean

* Translate setup/_index.md in Korean (#12067)

* Translate setup/_index.md in Korean

* Update setup/_index.md for Korean term consistency

* ko-trans: docs/setup/custom-cloud/kops.md (#11904)

* ko-trans: concepts/overview/working-with-objects/names (#11758)

* ko-trans: /docs/concepts/overview/working-with-objects/namespaces.md (#11773)

* Translate setup/cri.md in Korean (#12174)

* Translate setup/cri.md in Korean

* Apply review, Translate setup/cri.md in Korean

* Translate tasks/tools/install-minikube in Korean (#12176)

* Translate tasks/tools/install-minikube in Korean

* Apply review,Trans tasks/tools/install-minikube in KO
This commit is contained in:
Claudia J.Kang
2019-01-16 20:31:18 +09:00
committed by Kubernetes Prow Robot
parent 0f6457d5df
commit 848a46a3b7
62 changed files with 2274 additions and 263 deletions
+33 -48
View File
@@ -8,84 +8,69 @@ content_template: templates/concept
{{% capture overview %}}
Use this page to find the type of solution that best fits your needs.
니즈에 가장 적합한 솔루션 유형을 찾기 위해서는 이 페이지를 사용하길 바란다.
Deciding where to run Kubernetes depends on what resources you have available
and how much flexibility you need. You can run Kubernetes almost anywhere,
from your laptop to VMs on a cloud provider to a rack of bare metal servers.
You can also set up a fully-managed cluster by running a single command or craft
your own customized cluster on your bare metal servers.
쿠버네티스를 어디에서 동작시킬지 결정하는 것은 가용한 자원과 요구되는 유연성의 정도에 의존적이다. 쿠버네티스는 랩톱부터, 클라우드 프로바이더의 VM, 베어메탈(bare metal) 서버로 이루어진 랙까지 거의 모든 곳에서 동작시킬 수 있다. 또한 단 하나의 명령어 실행으로 완전-관리되는(fully-managed) 클러스터를 설치할 수도 있고, 베어메탈 서버에 자신만의 맞춤형 클러스터를 만들 수도 있다.
{{% /capture %}}
{{% capture body %}}
## Local-machine Solutions
## 로컬 머신(Local-machine) 솔루션
A local-machine solution is an easy way to get started with Kubernetes. You
can create and test Kubernetes clusters without worrying about consuming cloud
resources and quotas.
로컬 머신 솔루션은 쿠버네티스를 시작하기에 쉬운 방법이다. 클라우드 자원(resource)과 한도(quota)에 대한 걱정 없이 쿠버네티스 클러스터를 생성하고 테스트할 수 있다.
You should pick a local solution if you want to:
다음과 같은 사항을 원한다면 로컬 솔루션을 선택해야 한다.
* Try or start learning about Kubernetes
* Develop and test clusters locally
* 쿠버네티스를 써 보거나 배우기 시작하려고 함
* 내부적으로 클러스터를 개발하거나 테스트하려고 함
Pick a [local-machine solution](/docs/setup/pick-right-solution/#local-machine-solutions).
[로컬 머신 솔루션](/docs/setup/pick-right-solution/#local-machine-solutions) 중 하나를 선택하길 바란다.
## Hosted Solutions
## 호스트 된(Hosted) 솔루션
Hosted solutions are a convenient way to create and maintain Kubernetes clusters. They
manage and operate your clusters so you dont have to.
호스트 된 솔루션은 쿠버네티스 클러스터를 생성하고 유지 관리하는데 편리한 방법이다. 호스트가 사용자의 클러스터를 관리하고 운영하기 때문에 사용자는 관리와 운영에서 자유롭다.
You should pick a hosted solution if you:
다음의 경우 호스트 된 솔루션이 필요하다.
* Want a fully-managed solution
* Want to focus on developing your apps or services
* Dont have dedicated site reliability engineering (SRE) team but want high availability
* Don't have resources to host and monitor your clusters
* 완전히 관리된 솔루션을 원함
* 사용자의 앱 또는 서비스를 개발에만 집중하고 싶음
* 지정된 사이트 신뢰성 엔지니어링(SRE) 팀은 없지만 고가용성을 원함
* 클러스터를 호스팅하고 모니터할 자원이 없음
Pick a [hosted solution](/docs/setup/pick-right-solution/#hosted-solutions).
[호스트 된 솔루션](/docs/setup/pick-right-solution/#hosted-solutions) 중 하나를 선택하길 바란다.
## Turnkey Cloud Solutions
## 턴키(Turnkey) 클라우드 솔루션
이와 같은 솔루션들은 쿠버네티스 클러스터를 단지 몇 가지 명령어로 생성하게 해준다. 솔루션들은 활발히 개발되며 활동적인 커뮤니티의 지원을 받는다. 또한 넓은 범위의 IaaS 클라우드 프로바이더들에 호스트 될 수 있음에도, 노력의 대가로 솔루션들은 더욱 더 큰 자유와 유연성을 제공한다.
These solutions allow you to create Kubernetes clusters with only a few commands and
are actively developed and have active community support. They can also be hosted on
a range of Cloud IaaS providers, but they offer more freedom and flexibility in
exchange for effort.
다음의 경우 턴키 클라우드 솔루션을 선택해야 한다.
You should pick a turnkey cloud solution if you:
* 호스트 된 솔루션이 허용하는 것보다는 클러스터에 대한 더 높은 제어권을 원함
* 운영에 대한 더 큰 소유권을 가지고 싶음
* Want more control over your clusters than the hosted solutions allow
* Want to take on more operations ownership
[턴키 클라우드 솔루션](/docs/setup/pick-right-solution/#turnkey-cloud-solutions) 중 하나를 선택하길 바란다.
Pick a [turnkey cloud solution](/docs/setup/pick-right-solution/#turnkey-cloud-solutions)
## 턴키(Turnkey) 온-프레미스(On-Premise) 솔루션
## Turnkey On-Premises Solutions
이와 같은 솔루션들은 내부의, 안전한, 클라우드 네트워크에 쿠버네티스 클러스터를 단 몇 가지 명령어로 생성하게 해준다.
These solutions allow you to create Kubernetes clusters on your internal, secure,
cloud network with only a few commands.
다음의 경우 온-프레미스 턴키 솔루션을 선택해야 한다.
You should pick a on-prem turnkey cloud solution if you:
* 프라이빗 클라우드 네트워크에 클러스터를 디플로이하길 원함
* 지정된 사이트 신뢰성 엔지니어링(SRE) 팀을 보유함
* 클러스터를 호스팅하고 모니터할 수 있는 자원을 보유함
* Want to deploy clusters on your private cloud network
* Have a dedicated SRE team
* Have the resources to host and monitor your clusters
[온-프레미스 턴키 클라우드 솔루션](/docs/setup/pick-right-solution/#on-premises-turnkey-cloud-solutions) 중 하나를 선택하길 바란다.
Pick an [on-prem turnkey cloud solution](/docs/setup/pick-right-solution/#on-premises-turnkey-cloud-solutions).
## 사용자 지정(Custom) 솔루션
## Custom Solutions
사용자 지정 솔루션들은 클러스터에 대해서 가장 큰 자유를 제공하지만, 그 대신 높은 전문성을 필요로 한다. 이 솔루션들은 서로 다른 운영체제들에 대해서 베어메탈부터 클라우드 프로바이더들까지의 지원을 포함한다.
Custom solutions give you the most freedom over your clusters but require the
most expertise. These solutions range from bare-metal to cloud providers on
different operating systems.
Pick a [custom solution](/docs/setup/pick-right-solution/#custom-solutions).
[사용자 지정 솔루션](/docs/setup/pick-right-solution/#custom-solutions) 중 하나를 선택하길 바란다.
{{% /capture %}}
{{% capture whatsnext %}}
Go to [Picking the Right Solution](/docs/setup/pick-right-solution/) for a complete
list of solutions.
완전한 솔루션 리스트를 확인하기 위해서는 [올바른 솔루션 선택하기](/docs/setup/pick-right-solution/)로 가길 바란다.
{{% /capture %}}
@@ -1,21 +0,0 @@
---
title: 소스로부터 빌드
---
You can either build a release from source or download a pre-built release. If you do not plan on developing Kubernetes itself, we suggest using a pre-built version of the current release, which can be found in the [Release Notes](/docs/setup/release/notes/).
The Kubernetes source code can be downloaded from the [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes) repo.
## 소스로부터 빌드
If you are simply building a release from source there is no need to set up a full golang environment as all building happens in a Docker container.
Building a release is simple.
```shell
git clone https://github.com/kubernetes/kubernetes.git
cd kubernetes
make release
```
For more details on the release process see the kubernetes/kubernetes [`build`](http://releases.k8s.io/{{< param "githubbranch" >}}/build/) directory.
+229
View File
@@ -0,0 +1,229 @@
---
reviewers:
- vincepri
- bart0sh
title: CRI 설치
content_template: templates/concept
weight: 100
---
{{% capture overview %}}
v1.6.0에서부터, 쿠버네티스는 CRI(컨테이너 런타임 인터페이스) 사용을 기본으로 지원한다.
이 페이지는 다양한 런타임들에 대한 설치 지침을 담고 있다.
{{% /capture %}}
{{% capture body %}}
다음의 커맨드들은 사용자의 운영체제에 따라 root로서 실행하길 바란다.
각 호스트에 SSH 접속 후 `sudo -i` 실행을 통해서 root 사용자가 될 수 있을 것이다.
## Docker
각 머신들에 대해서, Docker를 설치한다.
버전 18.06이 추천된다. 그러나 1.11, 1.12, 1.13, 그리고 17.03도 동작하는 것으로 알려져 있다.
쿠버네티스 릴리스 노트를 통해서, 최신에 검증된 Docker 버전의 지속적인 파악이 필요하다.
시스템에 Docker를 설치하기 위해서 아래의 커맨드들을 사용한다.
{{< tabs name="tab-cri-docker-installation" >}}
{{< tab name="Ubuntu 16.04" codelang="bash" >}}
# Ubuntu 저장소를 통한 Docker 설치:
apt-get update
apt-get install -y docker.io
# 또는 Docker 저장소를 통한 Ubuntu 또는 Debian 용 Docker CE 18.06 설치:
## 선행 조건들 설치.
apt-get update && apt-get install apt-transport-https ca-certificates curl software-properties-common
## GPG 키 다운로드.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
## Docker apt 저장소 추가.
add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
## Docker 설치.
apt-get update && apt-get install docker-ce=18.06.0~ce~3-0~ubuntu
# 데몬 설정.
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
mkdir -p /etc/systemd/system/docker.service.d
# Docker 재시작.
systemctl daemon-reload
systemctl restart docker
{{< /tab >}}
{{< tab name="CentOS/RHEL 7.4+" codelang="bash" >}}
# CentOS/RHEL 저장소를 통한 Docker 설치:
yum install -y docker
# 또는 Docker의 CentOS 저장소를 통한 Docker CE 18.06 설치:
## 선행 조건들 설치.
yum install yum-utils device-mapper-persistent-data lvm2
## Docker 저장소 추가.
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
## Docker 설치.
yum update && yum install docker-ce-18.06.1.ce
## /etc/docker 디렉토리 생성.
mkdir /etc/docker
# 데몬 설정.
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOF
mkdir -p /etc/systemd/system/docker.service.d
# Docker 재시작.
systemctl daemon-reload
systemctl restart docker
{{< /tab >}}
{{< /tabs >}}
자세한 내용은 [공식 Docker 설치 가이드](https://docs.docker.com/engine/installation/)
를 참고한다.
## CRI-O
이 섹션은 `CRI-O`를 CRI 런타임으로 설치하는 필수적인 단계를 담고 있다.
시스템에 CRI-O를 설치하기 위해서 다음의 커맨드를 사용한다.
### 선행 조건
```shell
modprobe overlay
modprobe br_netfilter
# 요구되는 sysctl 파라미터 설정, 이 설정은 재부팅 간에도 유지된다.
cat > /etc/sysctl.d/99-kubernetes-cri.conf <<EOF
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
EOF
sysctl --system
```
{{< tabs name="tab-cri-cri-o-installation" >}}
{{< tab name="Ubuntu 16.04" codelang="bash" >}}
# 선행 조건 설치
apt-get update
apt-get install software-properties-common
add-apt-repository ppa:projectatomic/ppa
apt-get update
# CRI-O 설치
apt-get install cri-o-1.11
{{< /tab >}}
{{< tab name="CentOS/RHEL 7.4+" codelang="bash" >}}
# 선행 조건 설치
yum-config-manager --add-repo=https://cbs.centos.org/repos/paas7-crio-311-candidate/x86_64/os/
# CRI-O 설치
yum install --nogpgcheck cri-o
{{< /tab >}}
{{< /tabs >}}
### CRI-O 시작
```
systemctl start crio
```
자세한 사항은 [CRI-O 설치 가이드](https://github.com/kubernetes-sigs/cri-o#getting-started)
를 참고한다.
## Containerd
이 섹션은 `containerd`를 CRI 런타임으로써 사용하는데 필요한 단계를 담고 있다.
Containerd를 시스템에 설치하기 위해서 다음의 커맨드들을 사용한다.
### 선행 조건
```shell
modprobe overlay
modprobe br_netfilter
# 요구되는 sysctl 파라미터 설정, 이 설정은 재부팅에서도 유지된다.
cat > /etc/sysctl.d/99-kubernetes-cri.conf <<EOF
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
EOF
sysctl --system
```
{{< tabs name="tab-cri-containerd-installation" >}}
{{< tab name="Ubuntu 16.04+" codelang="bash" >}}
apt-get install -y libseccomp2
{{< /tab >}}
{{< tab name="CentOS/RHEL 7.4+" codelang="bash" >}}
yum install -y libseccomp
{{< /tab >}}
{{< /tabs >}}
### Containerd 설치
[Containerd 릴리스](https://github.com/containerd/containerd/releases)는 주기적으로 출판된다. 아래의 값들은 작성 당시에 가용한 최신 버전을 기준으로 하드코드 되었다. 새로운 버전과 해시는 [여기](https://storage.googleapis.com/cri-containerd-release)에서 참고한다.
```shell
# 요구되는 환경 변수 export.
export CONTAINERD_VERSION="1.1.2"
export CONTAINERD_SHA256="d4ed54891e90a5d1a45e3e96464e2e8a4770cd380c21285ef5c9895c40549218"
# containerd tar 다운로드.
wget https://storage.googleapis.com/cri-containerd-release/cri-containerd-${CONTAINERD_VERSION}.linux-amd64.tar.gz
# 해시 확인.
echo "${CONTAINERD_SHA256} cri-containerd-${CONTAINERD_VERSION}.linux-amd64.tar.gz" | sha256sum --check -
# 풀기.
tar --no-overwrite-dir -C / -xzf cri-containerd-${CONTAINERD_VERSION}.linux-amd64.tar.gz
# containerd 시작.
systemctl start containerd
```
## 다른 CRI 런타임: rktlet과 frakti
자세한 정보는 [Frakti 빠른 시작 가이드](https://github.com/kubernetes/frakti#quickstart) 및 [Rktlet 시작하기 가이드](https://github.com/kubernetes-incubator/rktlet/blob/master/docs/getting-started-guide.md)를 참고한다.
{{% /capture %}}
+148
View File
@@ -0,0 +1,148 @@
---
title: Kops로 AWS에 쿠버네티스 설치하기
content_template: templates/concept
---
{{% capture overview %}}
이곳 빠른 시작에서는 사용자가 얼마나 쉽게 AWS에 쿠버네티스 클러스터를 설치할 수 있는지 보여준다.
[`kops`](https://github.com/kubernetes/kops)라는 이름의 툴을 이용할 것이다.
kops는 강력한 프로비저닝 시스템인데,
* 완전 자동화된 설치
* DNS를 통해 클러스터들의 신원 확인
* 자체 복구: 모든 자원이 Auto-Scaling Groups에서 실행
* 다양한 OS 지원(Debian, Ubuntu 16.04 supported, CentOS & RHEL, Amazon Linux and CoreOS) - [images.md](https://github.com/kubernetes/kops/blob/master/docs/images.md) 보기
* 고가용성 지원 - [high_availability.md](https://github.com/kubernetes/kops/blob/master/docs/high_availability.md) 보기
* 직접 프로비저닝 하거나 또는 할 수 있도록 terraform 매니페스트를 생성 - [terraform.md](https://github.com/kubernetes/kops/blob/master/docs/terraform.md) 보기
만약 클러스터를 구축하는데 있어 이런 방법이 사용자의 생각과 다르다면 일종의 블록처럼 [kubeadm](/docs/admin/kubeadm/)를 이용할 수도 있다.
kops는 kubeadmin 위에서도 잘 동작한다.
{{% /capture %}}
{{% capture body %}}
## 클러스터 구축
### (1/5) kops 설치
#### 요구사항
kops를 이용하기 위해서는 [kubectl](/docs/tasks/tools/install-kubectl/)이 설치되어 있어야 한다.
#### 설치
[releases page](https://github.com/kubernetes/kops/releases)에서 kops를 다운로드 한다(소스코드로부터 빌드하는것도 역시 어렵지 않다).
MacOS에서:
```shell
curl -OL https://github.com/kubernetes/kops/releases/download/1.10.0/kops-darwin-amd64
chmod +x kops-darwin-amd64
mv kops-darwin-amd64 /usr/local/bin/kops
# Homebrew를 통해 설치할 수도 있다.
brew update && brew install kops
```
Linux에서:
```shell
wget https://github.com/kubernetes/kops/releases/download/1.10.0/kops-linux-amd64
chmod +x kops-linux-amd64
mv kops-linux-amd64 /usr/local/bin/kops
```
### (2/5) 클러스터에 사용할 route53 domain 생성
kops는 디스커버리를 위해 클러스터 내외부에서 DNS를 이용하고 이를 통해 사용자는 쿠버네티스 API서버에 도달할 수 있다.
이런 클러스터 이름에 kops는 명확한 견해을 가지는데: 반드시 유효한 DNS 이름이어야 한다. 이렇게 함으로써
사용자는 클러스터를 헷갈리지 않을것이고, 동료들과 혼선없이 공유할 수 있으며, IP를 기억할 필요없이 접근할 수 있다.
그렇게 하고 있겠지만, 클러스터를 구분하기 위해 서브도메인을 활용할 수 있다. 예를 들어 `useast1.dev.example.com`을 이용한다면, API 서버 엔드포인트는 `api.useast1.dev.example.com`가 될 것이다.
Route53 hosted zone은 서브도메인도 지원한다. 여러분의 hosted zone은 `useast1.dev.example.com`, `dev.example.com` 그리고 `example.com` 같은 것도 될 수 있다.
kops는 이것들 모두와 잘 동작하며, 사용자는 보통 조직적인 부분을 고려해 결정한다(예를 들어, 사용자가 `dev.example.com`하위에 레코드를 생성하는것은 허용되지만,
`example.com`하위에는 그렇지 않을 수 있다).
`dev.example.com`을 hosted zone으로 사용하고 있다고 가정해보자.
보통 사용자는 [일반적인 방법](http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingNewSubdomain.html) 에 따라 생성하거나
`aws route53 create-hosted-zone --name dev.example.com --caller-reference 1` 와 같은 커맨드를 이용한다.
그 후 도메인 내 레코드들을 확인할 수 있도록 상위 도메인내에 NS 레코드를 생성해야 한다. 여기서는, `dev` NS 레코드를 `example.com`에 생성한다. 만약 이것이 루트 도메인 네임이라면 이 NS 레코드들은 도메인 등록기관을 통해서 생성해야 한다(예를 들어, `example.com``example.com`를 구매한 곳에서 설정 할 수 있다).
이 단계에서 문제가 되기 쉽다.(문제를 만드는 가장 큰 이유이다!) dig 툴을 실행해서 클러스터 설정이 정확한지 한번 더 확인 한다.
`dig NS dev.example.com`
당신의 hosted zone용으로 할당된 3~4개의 NS 레코드를 Route53에서 확인할 수 있어야 한다.
### (3/5) 클러스터 상태 저장용 S3 버킷 생성
kops는 설치 이후에도 클러스터를 관리할 수 있다. 이를 위해 사용자가 생성한 클러스터의 상태나 사용하는 키 정보들을 지속적으로 추적해야 한다. 이 정보가 S3에 저장된다.
이 버킷의 접근은 S3 권한으로 제어한다.
다수의 클러스터는 동일한 S3 버킷을 이용할 수 있고, 사용자는 이 S3 버킷을 같은 클러스트를 운영하는 동료에게 공유할 수 있다. 하지만 이 S3 버킷에 접근 가능한 사람은 사용자의 모든 클러스터에 관리자 접근이 가능하게 되니, 운영팀 이외로 공유되지 않도록 해야 한다.
그래서 보통 한 운영팀 당 하나의 S3 버킷을 가지도록 하기도 한다.(그리고 종종 운영팀 이름은 위에서 언급한 hosted zone과 동일하게 짓기도 한다!)
우리 예제에서는, `dev.example.com`를 hosted zone으로 했으니 `clusters.dev.example.com`를 S3 버킷 이름으로 정하자.
* `AWS_PROFILE`를 선언한다. (AWS CLI 동작을 위해 다른 profile을 선택해야 할 경우)
* `aws s3 mb s3://clusters.dev.example.com`를 이용해 S3 버킷을 생성한다.
* `export KOPS_STATE_STORE=s3://clusters.dev.example.com` 하면, kops는 이 위치를 기본값으로 인식할 것이다.
이 부분을 bash profile등에 넣어두는것을 권장한다.
### (4/5) 클러스터 설정 구성
클러스터 설정하려면, `kops create cluster` 를 실행한다:
`kops create cluster --zones=us-east-1c useast1.dev.example.com`
kops는 클러스터에 사용될 설정을 생성할것이다. 여기서 주의할 점은 실제 클러스트 리소스가 아닌 _설정_ 만을 생성한다는 것에 주의하자 - 이 부분은 다음 단계에서 `kops update cluster` 으로 구성해볼 것이다. 그 때 만들어진 설정을 점검하거나 변경할 수 있다.
더 자세한 내용을 알아보기 위한 커맨드가 출력된다.
* 클러스터 조회: `kops get cluster`
* 클러스트 수정: `kops edit cluster useast1.dev.example.com`
* 인스턴스 그룹 수정: `kops edit ig --name=useast1.dev.example.com nodes`
* 마스터 인스턴스 그룹 수정: `kops edit ig --name=useast1.dev.example.com master-us-east-1c`
만약 kops사용이 처음이라면, 얼마 걸리지 않으니 이들을 시험해 본다. 인스턴스 그룹은 쿠버네티스 노드로 등록된 인스턴스의 집합을 말한다. AWS상에서는 auto-scaling-groups를 통해 만들어진다. 사용자는 여러개의 인스턴스 그룹을 관리할 수 있는데, 예를 들어, spot과 on-demand 인스턴스 조합 또는 GPU 와 non-GPU 인스턴스의 조합으로 구성할 수 있다.
### (5/5) AWS에 클러스터 생성
`kops update cluster`를 실행해 AWS에 클러스터를 생성한다.
`kops update cluster useast1.dev.example.com --yes`
실행은 수 초 만에 되지만, 실제로 클러스터가 준비되기 전까지 수 분이 걸릴 수 있다.
언제든 `kops update cluster`로 클러스트 설정을 변경할 수 있다. 사용자가 변경한 클러스트 설정을 그대로 반영해 줄 것이며, 필요다하면 AWS 나 쿠버네티스를 재설정 해 줄것이다.
예를 들면, `kops edit ig nodes` 뒤에 `kops update cluster --yes`를 실행해 설정을 반영한다. 그리고 `kops rolling-update cluster`로 설정을 즉시 원복시킬 수 있다.
`--yes`를 명시하지 않으면 `kops update cluster` 커맨드 후 어떤 설정이 변경될지가 표시된다. 운영계 클러스터 관리할 때 사용하기 좋다!
### 다른 애드온 탐험
[애드온 리스트](/docs/concepts/cluster-administration/addons/) 에서 쿠버네티스 클러스터용 로깅, 모니터링, 네트워크 정책, 시각화 &amp; 제어 등을 포함한 다른 애드온을 확인해본다.
## 정리하기
* `kops delete cluster useast1.dev.example.com --yes` 로 클러스터를 삭제한다.
## Feedback
* Slack Channel: [#kops-users](https://kubernetes.slack.com/messages/kops-users/)
* [GitHub Issues](https://github.com/kubernetes/kops/issues)
{{% /capture %}}
{{% capture whatsnext %}}
* 쿠버네티스 [개념](/docs/concepts/) 과 [`kubectl`](/docs/user-guide/kubectl-overview/)에 대해 더 알아보기.
* `kops` [고급 사용법](https://github.com/kubernetes/kops) 알아보기.
* 튜토리얼, 모범사례, 고급 설정 옵션을 위해 `kops` [문서](https://github.com/kubernetes/kops) 부분 보기.
{{% /capture %}}
+26 -39
View File
@@ -6,43 +6,37 @@ title: 노드 구성 검증하기
## 노드 적합성 테스트
*Node conformance test* is a containerized test framework that provides a system
verification and functionality test for a node. The test validates whether the
node meets the minimum requirements for Kubernetes; a node that passes the test
is qualified to join a Kubernetes cluster.
*노드 적합성 테스트* 는 노드의 시스템 검증과 기능 테스트를 제공하기 위해 컨테이너화된 테스트 프레임워크이다.
테스트는 노드가 쿠버네티스를 위한 최소 요구조건을 만족하는지를 검증한다. 그리고 테스트를 통과한 노드는 쿠버네티스 클러스터에 참
여할 자격이 주어진다.
## 제한 사항
In Kubernetes version 1.5, node conformance test has the following limitations:
쿠버네티스 1.5에서는 노드 적합성 테스트가 아래의 제약이 있다.
* Node conformance test only supports Docker as the container runtime.
* 노드 적합성 테스트는 컨테이너 런타임으로 Docker만 지원한다.
## 노드 필수 구성 요소
To run node conformance test, a node must satisfy the same prerequisites as a
standard Kubernetes node. At a minimum, the node should have the following
daemons installed:
노드 적합성 테스트를 실행하기 위해서는, 해당 노드는 표준 쿠버네티스 노드로서 동일한 전제조건을 만족해야 한다.
노드는 최소한 아래 데몬들이 설치되어 있어야 한다.
* Container Runtime (Docker)
* 컨테이너 런타임 (Docker)
* Kubelet
## 노드 적합성 테스트 실행
To run the node conformance test, perform the following steps:
노드 적합성 테스트는 다음 순서로 진행된다.
1. Point your Kubelet to localhost `--api-servers="http://localhost:8080"`,
because the test framework starts a local master to test Kubelet. There are some
other Kubelet flags you may care:
* `--pod-cidr`: If you are using `kubenet`, you should specify an arbitrary CIDR
to Kubelet, for example `--pod-cidr=10.180.0.0/24`.
* `--cloud-provider`: If you are using `--cloud-provider=gce`, you should
remove the flag to run the test.
1. 테스트 프레임워크는 Kublet을 테스트하기 위해 로컬 마스터를 시작하기 때문에, Kublet이 localhost를 가르키도록 `--api-servers="http://localhost:8080"`를 사용한다. 고려해야 할 다른 Kubelet 플래그들은 다음과 같다.
* `--pod-cidr`: `kubenet`을 사용 중이라면, 임의의 CIDR을 Kubelet에 지정해주어야 한다. 예) `--pod-cidr=10.180.0.0/24`.
* `--cloud-provider`: `--cloud-provider=gce`를 사용 중이라면, 테스트 실행 시에는 제거해야 한다.
2. Run the node conformance test with command:
2. 다음 커맨드로 노드 적합성 테스트를 실행한다.
```shell
# $CONFIG_DIR is the pod manifest path of your Kubelet.
# $LOG_DIR is the test output path.
# $CONFIG_DIR Kublet의 파드 매니페스트 경로이다.
# $LOG_DIR는 테스트 출력 경로이다.
sudo docker run -it --rm --privileged --net=host \
-v /:/rootfs -v $CONFIG_DIR:$CONFIG_DIR -v $LOG_DIR:/var/result \
k8s.gcr.io/node-test:0.2
@@ -50,8 +44,7 @@ sudo docker run -it --rm --privileged --net=host \
## 다른 아키텍처에서 노드 적합성 테스트 실행
Kubernetes also provides node conformance test docker images for other
architectures:
쿠버네티스는 다른 아키텍쳐용 노드 적합성 테스트 Docker 이미지도 제공한다.
Arch | Image |
--------|:-----------------:|
@@ -61,37 +54,31 @@ architectures:
## 선택된 테스트 실행
To run specific tests, overwrite the environment variable `FOCUS` with the
regular expression of tests you want to run.
특정 테스트만 실행하기 위해서는 환경 변수 `FOCUS`에 테스트하고자 하는 테스트를 정규식으로 지정한다.
```shell
sudo docker run -it --rm --privileged --net=host \
-v /:/rootfs:ro -v $CONFIG_DIR:$CONFIG_DIR -v $LOG_DIR:/var/result \
-e FOCUS=MirrorPod \ # Only run MirrorPod test
-e FOCUS=MirrorPod \ # MirrorPod 테스트만 실행
k8s.gcr.io/node-test:0.2
```
To skip specific tests, overwrite the environment variable `SKIP` with the
regular expression of tests you want to skip.
특정 테스트를 건너뛰기 위해서는, 환경 변수 `SKIP`에 건너뛰고자 하는 테스트를 정규식으로 지정한다.
```shell
sudo docker run -it --rm --privileged --net=host \
-v /:/rootfs:ro -v $CONFIG_DIR:$CONFIG_DIR -v $LOG_DIR:/var/result \
-e SKIP=MirrorPod \ # Run all conformance tests but skip MirrorPod test
-e SKIP=MirrorPod \ # MirrorPod 테스트만 건너뛰고 모든 적합성 테스트를 실행한다
k8s.gcr.io/node-test:0.2
```
Node conformance test is a containerized version of [node e2e test](https://github.com/kubernetes/community/blob/{{< param "githubbranch" >}}/contributors/devel/e2e-node-tests.md).
By default, it runs all conformance tests.
노드 적합성 테스트는 [노드 e2e 테스트](https://github.com/kubernetes/community/blob/{{< param "githubbranch" >}}/contributors/devel/e2e-node-tests.md)를 컨테이너화한 버전이다.
기본적으로, 모든 적합성 테스트를 실행한다.
Theoretically, you can run any node e2e test if you configure the container and
mount required volumes properly. But **it is strongly recommended to only run conformance
test**, because it requires much more complex configuration to run non-conformance test.
이론적으로, 컨테이너와 필요한 볼륨을 적절히 설정했다면 어떤 노드 e2e 테스트도 수행할 수 있다.
하지만, 적합성 테스트가 아닌 테스트들은 훨씬 복잡한 설정이 필요하기 때문에 **적합성 테스트만 실행하기를 강하게 추천한다.**
## 주의 사항
* The test leaves some docker images on the node, including the node conformance
test image and images of containers used in the functionality
test.
* The test leaves dead containers on the node. These containers are created
during the functionality test.
* 테스트 후, 노드 적합성 테스트 이미지 및 기능 테스트에 사용된 이미지들을 포함하여 몇 개의 Docker 이미지들이 노드에 남는다.
* 테스트 후, 노드에 죽은 컨테이너가 남는다. 기능 테스트 도중에 생성된 컨테이너들이다.
+6 -3
View File
@@ -71,6 +71,10 @@ content_template: templates/concept
* [Stackpoint.io](https://stackpoint.io)는 다중 퍼블릭 클라우드에서 쿠버네티스 인프라 자동화 및 관리 기능을 제공한다.
* [SysEleven MetaKube](https://www.syseleven.io/products-services/managed-kubernetes/) offers managed Kubernetes as a service powered on our OpenStack public cloud. It includes lifecycle management, administration dashboards, monitoring, autoscaling and much more.
* [VMware Cloud PKS](https://cloud.vmware.com/vmware-cloud-pks) is an enterprise Kubernetes-as-a-Service offering in the VMware Cloud Services portfolio that provides easy to use, secure by default, cost effective, SaaS-based Kubernetes clusters.
## 턴키 클라우드 솔루션
다음 솔루션들은 클라우드 IaaS 공급자의 범위에서 몇 안 되는 명령어로 쿠버네티스 클러스터를 생성을 허용한다. 이러한 솔루션은 활발히 개발되었고 활발한 커뮤니티 지원을 한다.
@@ -199,7 +203,7 @@ AWS | Juju | Ubuntu | flannel/calico/canal | [docs]
Azure | Juju | Ubuntu | flannel/calico/canal | [docs](/docs/getting-started-guides/ubuntu/) | [Commercial](https://www.ubuntu.com/kubernetes) and [Community](https://jujucharms.com/kubernetes)
GCE | Juju | Ubuntu | flannel/calico/canal | [docs](/docs/getting-started-guides/ubuntu/) | [Commercial](https://www.ubuntu.com/kubernetes) and [Community](https://jujucharms.com/kubernetes)
Oracle Cloud | Juju | Ubuntu | flannel/calico/canal | [docs](/docs/getting-started-guides/ubuntu/) | [Commercial](https://www.ubuntu.com/kubernetes) and [Community](https://jujucharms.com/kubernetes)
Rackspace | Juju | Ubuntu | flannel/calico/canal | [docs](/docs/getting-started-guides/ubuntu/) | [Commercial](https://www.ubuntu.com/kubernetes) and [Community](https://jujucharms.com/kubernetes)
Rackspace | custom | CoreOS | flannel/calico/canal | [docs](https://developer.rackspace.com/docs/rkaas/latest/) | [Commercial](https://www.rackspace.com/managed-kubernetes)
VMware vSphere | Juju | Ubuntu | flannel/calico/canal | [docs](/docs/getting-started-guides/ubuntu/) | [Commercial](https://www.ubuntu.com/kubernetes) and [Community](https://jujucharms.com/kubernetes)
Bare Metal | Juju | Ubuntu | flannel/calico/canal | [docs](/docs/getting-started-guides/ubuntu/) | [Commercial](https://www.ubuntu.com/kubernetes) and [Community](https://jujucharms.com/kubernetes)
AWS | Saltstack | Debian | AWS | [docs](/docs/setup/turnkey/aws/) | Community ([@justinsb](https://github.com/justinsb))
@@ -214,7 +218,7 @@ Alibaba Cloud Container Service For Kubernetes | ROS | CentOS | flannel/T
Agile Stacks | Terraform | CoreOS | multi-support | [docs](https://www.agilestacks.com/products/kubernetes) | Commercial
IBM Cloud Kubernetes Service | | Ubuntu | calico | [docs](https://console.bluemix.net/docs/containers/container_index.html) | Commercial
Digital Rebar | kubeadm | any | metal | [docs](/docs/setup/on-premises-metal/krib/) | Community ([@digitalrebar](https://github.com/digitalrebar))
VMware Cloud PKS | | Photon OS | Canal | [docs](https://docs.vmware.com/en/VMware-Kubernetes-Engine/index.html) | Commercial
{{< note >}}
위의 표는 버전 테스트/사용된 노드의 지원 레벨을 기준으로 정렬된다.
@@ -236,7 +240,6 @@ Digital Rebar | kubeadm | any | metal | [docs](/docs/setup/
* **비활성**: 현재 유지되지 않는다. 쿠버네티스 최초 사용자에게 권장하지 않으며, 삭제될 수도 있다.
* **참고**는 사용된 쿠버네티스 버전 같은 기타 관련 정보가 있다.
<!-- reference style links below here -->
<!-- GCE conformance test result -->
[1]: https://gist.github.com/erictune/4cabc010906afbcc5061
+5
View File
@@ -0,0 +1,5 @@
---
title: "쿠버네티스 다운로드"
weight: 20
---
@@ -0,0 +1,21 @@
---
title: 소스로부터 빌드
---
소스로부터 빌드하거나 이미 빌드된 릴리스를 다운받을 수 있다. 쿠버네티스를 자체를 개발할 계획이 없다면, [릴리스 노트](/docs/setup/release/notes/)에 있는 현재 릴리스 빌드 버전을 사용하는 것을 추천한다.
쿠버네티스 소스 코드는 [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes) 리포지토리에서 다운받을 수 있다.
## 소스로부터 빌드
소스 코드를 빌드만 하려면, 모든 빌드 과정이 Docker 컨테이너 안에서 실행되기 때문에 golang 환경을 구축할 필요가 없다.
릴리스를 빌드하는 것은 간단하다.
```shell
git clone https://github.com/kubernetes/kubernetes.git
cd kubernetes
make release
```
릴리스 절차에 대한 더 자세한 설명은 kubernetes/kubernetes [`빌드`](http://releases.k8s.io/{{< param "githubbranch" >}}/build/) 디렉토리를 참조한다.
+2 -4
View File
@@ -163,10 +163,8 @@ You can use a Kubernetes binary release (recommended) or build your Kubernetes b
Download the [latest binary release](https://github.com/kubernetes/kubernetes/releases/latest) and unzip it.
Server binary tarballs are no longer included in the Kubernetes final tarball, so you will need to locate and run
`./kubernetes/cluster/get-kube-binaries.sh` to download the client and server binaries.
Then locate `./kubernetes/server/kubernetes-server-linux-amd64.tar.gz` and unzip *that*.
Then, within the second set of unzipped files, locate `./kubernetes/server/bin`, which contains
all the necessary binaries.
`./kubernetes/cluster/get-kube-binaries.sh` to download and extract the client and server binaries.
Then locate `./kubernetes/server/bin`, which contains all the necessary binaries.
#### 이미지 선택