[ko] Update outdated files in dev-1.24-ko.1 M99-M114

This commit is contained in:
Jihoon Seo
2022-05-31 11:37:23 +09:00
parent 507491e619
commit 264e47d7f3
13 changed files with 232 additions and 148 deletions
@@ -17,8 +17,6 @@ weight: 30
쿠버네티스를 사용하여 리눅스와 윈도우 노드를 혼합하여 실행할 수 있으므로, 리눅스에서 실행되는 파드와 윈도우에서 실행되는 파드를 혼합할 수 있다. 이 페이지는 윈도우 노드를 클러스터에 등록하는 방법을 보여준다.
## {{% heading "prerequisites" %}}
{{< version-check >}}
@@ -147,33 +145,7 @@ curl -L https://github.com/kubernetes-sigs/sig-windows-tools/releases/latest/dow
{{< /note >}}
{{< tabs name="tab-windows-kubeadm-runtime-installation" >}}
{{% tab name="Docker EE" %}}
#### Docker EE 설치
`컨테이너` 기능 설치
```powershell
Install-WindowsFeature -Name containers
```
도커 설치
자세한 내용은 [도커 엔진 설치 - 윈도우 서버 엔터프라이즈](https://docs.microsoft.com/ko-kr/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server#install-docker)에서 확인할 수 있다.
#### wins, kubelet 및 kubeadm 설치
```PowerShell
curl.exe -LO https://raw.githubusercontent.com/kubernetes-sigs/sig-windows-tools/master/kubeadm/scripts/PrepareNode.ps1
.\PrepareNode.ps1 -KubernetesVersion {{< param "fullversion" >}}
```
#### `kubeadm` 실행하여 노드에 조인
컨트롤 플레인 호스트에서 `kubeadm init` 실행할 때 제공된 명령을 사용한다.
이 명령이 더 이상 없거나, 토큰이 만료된 경우, `kubeadm token create --print-join-command`
(컨트롤 플레인 호스트에서)를 실행하여 새 토큰 및 조인 명령을 생성할 수 있다.
{{% /tab %}}
{{% tab name="CRI-containerD" %}}
#### containerD 설치
@@ -191,9 +163,6 @@ curl.exe -LO https://github.com/kubernetes-sigs/sig-windows-tools/releases/lates
.\Install-Containerd.ps1 -ContainerDVersion 1.4.1
```
{{< /note >}}
{{< note >}}
윈도우 노드에서 이더넷(예: "Ethernet0 2")이 아닌 다른 인터페이스를 사용하는 경우, `-netAdapterName` 으로 이름을 지정한다.
```powershell
@@ -210,17 +179,59 @@ curl.exe -LO https://raw.githubusercontent.com/kubernetes-sigs/sig-windows-tools
.\PrepareNode.ps1 -KubernetesVersion {{< param "fullversion" >}} -ContainerRuntime containerD
```
kubeadm이 CRI 엔드포인트와 통신하기 위해 필요한
[`crictl`을 cri-tools 패키지로부터 설치한다](https://github.com/kubernetes-sigs/cri-tools).
#### `kubeadm` 실행하여 노드에 조인
컨트롤 플레인 호스트에서 `kubeadm init` 실행할 때 제공된 명령을 사용한다.
이 명령이 더 이상 없거나, 토큰이 만료된 경우, `kubeadm token create --print-join-command`
(컨트롤 플레인 호스트에서)를 실행하여 새 토큰 및 조인 명령을 생성할 수 있다.
{{% /tab %}}
{{% tab name="Docker Engine" %}}
#### Docker Engine 설치
`컨테이너` 기능 설치
```powershell
Install-WindowsFeature -Name containers
```
도커 설치에 대한
자세한 내용은 [도커 엔진 설치 - 윈도우 서버 엔터프라이즈](https://docs.microsoft.com/ko-kr/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server#install-docker)에서 확인할 수 있다.
kubelet이 CRI 호환 엔드포인트를 통해 도커와 통신하기 위해 필요한
[cri-dockerd를 설치](https://github.com/Mirantis/cri-dockerd)한다.
{{< note >}}
**CRI-containerD** 를 사용하는 경우 kubeadm 호출에 `--cri-socket "npipe:////./pipe/containerd-containerd"` 를 추가한다
도커 엔진은 컨테이너 런타임이 쿠버네티스와 호환되기 위한 요구 사항인
[CRI](/docs/concepts/architecture/cri/)를 만족하지 않는다.
이러한 이유로, 추가 서비스인 [cri-dockerd](https://github.com/Mirantis/cri-dockerd)가 설치되어야 한다.
cri-dockerd는 쿠버네티스 버전 1.24부터 kubelet에서 [제거](/dockershim)된
기존 내장 도커 엔진 지원을 기반으로 한 프로젝트이다.
{{< /note >}}
kubeadm이 CRI 엔드포인트와 통신하기 위해 필요한
`crictl`을 [cri-tools 프로젝트](https://github.com/kubernetes-sigs/cri-tools)로부터 설치한다.
#### wins, kubelet 및 kubeadm 설치
```PowerShell
curl.exe -LO https://raw.githubusercontent.com/kubernetes-sigs/sig-windows-tools/master/kubeadm/scripts/PrepareNode.ps1
.\PrepareNode.ps1 -KubernetesVersion {{< param "fullversion" >}}
```
#### `kubeadm` 실행하여 노드에 조인
컨트롤 플레인 호스트에서 `kubeadm init` 실행할 때 제공된 명령을 사용한다.
이 명령이 더 이상 없거나, 토큰이 만료된 경우, `kubeadm token create --print-join-command`
(컨트롤 플레인 호스트에서)를 실행하여 새 토큰 및 조인 명령을 생성할 수 있다.
{{% /tab %}}
{{< /tabs >}}
### 설치 확인
@@ -10,7 +10,9 @@ weight: 10
{{< feature-state for_k8s_version="v1.15" state="stable" >}}
[kubeadm](/ko/docs/reference/setup-tools/kubeadm/)으로 생성된 클라이언트 인증서는 1년 후에 만료된다. 이 페이지는 kubeadm으로 인증서 갱신을 관리하는 방법을 설명한다.
[kubeadm](/ko/docs/reference/setup-tools/kubeadm/)으로 생성된 클라이언트 인증서는 1년 후에 만료된다.
이 페이지는 kubeadm으로 인증서 갱신을 관리하는 방법을 설명하며,
kubeadm 인증서 관리와 관련된 다른 작업에 대해서도 다룬다.
## {{% heading "prerequisites" %}}
@@ -126,7 +128,7 @@ kubeadm 1.17 이전 버전에는 `kubeadm upgrade node` 명령에서
`kubeadm certs renew` 명령을 사용하여 언제든지 인증서를 수동으로 갱신할 수 있다.
이 명령은 `/etc/kubernetes/pki` 에 저장된 CA(또는 프론트 프록시 CA) 인증서와 키를 사용하여 갱신을 수행한다.
이 명령은 `/etc/kubernetes/pki` 에 저장된 CA(또는 프론트 프록시 CA) 인증서와 키를 사용하여 갱신을 수행한다.
명령을 실행한 후에는 컨트롤 플레인 파드를 재시작해야 한다.
이는 현재 일부 구성 요소 및 인증서에 대해 인증서를 동적으로 다시 로드하는 것이 지원되지 않기 때문이다.
@@ -171,7 +173,7 @@ HA 클러스터를 실행 중인 경우, 모든 컨트롤 플레인 노드에서
빌트인 서명자를 활성화하려면, `--cluster-signing-cert-file``--cluster-signing-key-file` 플래그를 전달해야 한다.
새 클러스터를 생성하는 경우, kubeadm [구성 파일](https://godoc.org/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3)을 사용할 수 있다.
새 클러스터를 생성하는 경우, kubeadm [구성 파일](https://pkg.go.dev/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3)을 사용할 수 있다.
```yaml
apiVersion: kubeadm.k8s.io/v1beta3
@@ -289,3 +291,52 @@ CSR 서명자를 가지고 있는지 문의하는 것을 추천한다.
모두 검증하지 않는 한, 보안이 되는 메커니즘이 아니다. 이것을 통해 악의적 행위자가
kubelet 인증서(클라이언트 인증)를 사용하여 아무 IP나 도메인 네임에 대해 인증서를
요청하는 CSR의 생성을 방지할 수 있을 것이다.
## 추가 사용자를 위한 kubeconfig 파일 생성하기 {#kubeconfig-additional-users}
클러스터 생성 과정에서, kubeadm은
`Subject: O = system:masters, CN = kubernetes-admin` 값이 설정되도록 `admin.conf`의 인증서에 서명한다.
[`system:masters`](/docs/reference/access-authn-authz/rbac/#user-facing-roles)는
인증 계층(예: RBAC)을 우회하는 획기적인 슈퍼유저 그룹이다.
`admin.conf`를 추가 사용자와 공유하는 것은 **권장하지 않는다**!
대신, [`kubeadm kubeconfig user`](/docs/reference/setup-tools/kubeadm/kubeadm-kubeconfig)
명령어를 사용하여 추가 사용자를 위한 kubeconfig 파일을 생성할 수 있다.
이 명령어는 명령줄 플래그와
[kubeadm 환경 설정](/docs/reference/config-api/kubeadm-config.v1beta3/) 옵션을 모두 인식한다.
생성된 kubeconfig는 stdout으로 출력되며,
`kubeadm kubeconfig user ... > somefile.conf` 명령어를 사용하여 파일에 기록될 수 있다.
다음은 `--config` 플래그와 함께 사용될 수 있는 환경 설정 파일 예시이다.
```yaml
# example.yaml
apiVersion: kubeadm.k8s.io/v1beta3
kind: ClusterConfiguration
# kubeconfig에서 타겟 "cluster"로 사용될 것이다.
clusterName: "kubernetes"
# kubeconfig에서 클러스터의 "server"(IP 또는 DNS 이름)로 사용될 것이다.
controlPlaneEndpoint: "some-dns-address:6443"
# 클러스터 CA 키 및 인증서가 이 로컬 디렉토리에서 로드될 것이다.
certificatesDir: "/etc/kubernetes/pki"
```
이러한 항목들이 사용하고자 하는 클러스터의 상세 사항과 일치하는지 확인한다.
기존 클러스터의 환경 설정을 보려면 다음 명령을 사용한다.
```shell
kubectl get cm kubeadm-config -n kube-system -o=jsonpath="{.data.ClusterConfiguration}"
```
다음 예시는 `appdevs` 그룹의 새 사용자 `johndoe`를 위해
24시간동안 유효한 인증서와 함께 kubeconfig 파일을 생성할 것이다.
```shell
kubeadm kubeconfig user --config example.yaml --org appdevs --client-name johndoe --validity-period 24h
```
다음 예시는 1주일간 유효한 관리자 크리덴셜을 갖는 kubeconfig 파일을 생성할 것이다.
```shell
kubeadm kubeconfig user --config example.yaml --client-name admin --validity-period 168h
```
@@ -8,10 +8,10 @@ weight: 20
<!-- overview -->
이 페이지는 kubeadm으로 생성된 쿠버네티스 클러스터를
{{< skew currentVersionAddMinor -1 >}}.x 버전에서 {{< skew currentVersion >}}.x 버전으로,
{{< skew currentVersion >}}.x 버전에서 {{< skew currentVersion >}}.y(여기서 `y > x`) 버전으로 업그레이드하는 방법을 설명한다. 업그레이드가 지원되지 않는 경우
마이너 버전을 건너뛴다.
이 페이지는 kubeadm으로 생성된 쿠버네티스 클러스터를 {{< skew currentVersionAddMinor -1 >}}.x 버전에서 {{< skew currentVersion >}}.x 버전으로,
{{< skew currentVersion >}}.x 버전에서 {{< skew currentVersion >}}.y(여기서 `y > x`) 버전으로 업그레이드하는 방법을 설명한다.
업그레이드가 지원되지 않는 경우 마이너 버전을 건너뛴다.
더 자세한 정보는 [버전 차이(skew) 정책](/ko/releases/version-skew-policy/)을 참고한다.
이전 버전의 kubeadm을 사용하여 생성된 클러스터 업그레이드에 대한 정보를 보려면,
이 페이지 대신 다음의 페이지들을 참고한다.
@@ -43,6 +43,12 @@ weight: 20
컨트롤 플레인 노드의 경우, CoreDNS 파드 또는 다른 중요한 워크로드를 실행 중일 수 있다.
더 많은 정보는 [노드 드레인하기](/docs/tasks/administer-cluster/safely-drain-node/)를 참조한다.
- 컨테이너 사양 해시 값이 변경되므로, 업그레이드 후 모든 컨테이너가 다시 시작된다.
- kubelet이 업그레이드된 이후 kubelet 서비스가 성공적으로 재시작되었는지 확인하려면,
`systemctl status kubelet` 명령을 실행하거나, `journalctl -xeu kubelet` 명령을 실행하여 서비스 로그를 확인할 수 있다.
- 클러스터를 재구성하기 위해 `kubeadm upgrade` 시에
[kubeadm 구성 API 종류](/docs/reference/config-api/kubeadm-config.v1beta3)를 명시하여
`--config` 플래그를 사용하는 것은 추천하지 않으며 예상치 못한 결과를 초래할 수 있다.
대신 [kubeadm 클러스터 재구성하기](/docs/tasks/administer-cluster/kubeadm/kubeadm-reconfigure)를 참조한다.
<!-- steps -->