|
1 | 1 | ---
|
2 |
| -reviewers: |
3 |
| -- jcbsmpsn |
4 |
| -- mikedanese |
5 |
| -title: Configure Certificate Rotation for the Kubelet |
| 2 | +title: Kubeletの証明書のローテーションを設定する |
6 | 3 | content_type: task
|
7 | 4 | ---
|
8 | 5 |
|
9 | 6 | <!-- overview -->
|
10 |
| -This page shows how to enable and configure certificate rotation for the kubelet. |
11 |
| - |
| 7 | +このページでは、kubeletの証明書のローテーションを設定する方法を説明します。 |
12 | 8 |
|
13 | 9 | {{< feature-state for_k8s_version="v1.8" state="beta" >}}
|
14 | 10 |
|
15 | 11 | ## {{% heading "prerequisites" %}}
|
16 | 12 |
|
17 |
| - |
18 |
| -* Kubernetes version 1.8.0 or later is required |
19 |
| - |
20 |
| - |
| 13 | +* Kubernetesはバージョン1.8.0以降である必要があります。 |
21 | 14 |
|
22 | 15 | <!-- steps -->
|
23 | 16 |
|
24 |
| -## Overview |
25 |
| - |
26 |
| -The kubelet uses certificates for authenticating to the Kubernetes API. By |
27 |
| -default, these certificates are issued with one year expiration so that they do |
28 |
| -not need to be renewed too frequently. |
| 17 | +## 概要 |
29 | 18 |
|
30 |
| -Kubernetes 1.8 contains [kubelet certificate |
31 |
| -rotation](/docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/), a beta feature |
32 |
| -that will automatically generate a new key and request a new certificate from |
33 |
| -the Kubernetes API as the current certificate approaches expiration. Once the |
34 |
| -new certificate is available, it will be used for authenticating connections to |
35 |
| -the Kubernetes API. |
| 19 | +kubeletは、Kubernetes APIへの認証のために証明書を使用します。デフォルトでは、証明書は1年間の有効期限付きで発行されるため、頻繁に更新する必要はありません。 |
36 | 20 |
|
37 |
| -## Enabling client certificate rotation |
| 21 | +Kubernetes 1.8にはベータ機能の[kubelet certificate |
| 22 | +rotation](/docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/)が含まれているため、現在の証明書の有効期限が近づいたときに自動的に新しい鍵を生成して、Kubernetes APIに新しい証明書をリクエストできます。新しい証明書が利用できるようになると、Kubernetes APIへの接続の認証に利用されます。 |
38 | 23 |
|
39 |
| -The `kubelet` process accepts an argument `--rotate-certificates` that controls |
40 |
| -if the kubelet will automatically request a new certificate as the expiration of |
41 |
| -the certificate currently in use approaches. Since certificate rotation is a |
42 |
| -beta feature, the feature flag must also be enabled with |
43 |
| -`--feature-gates=RotateKubeletClientCertificate=true`. |
| 24 | +## クライアント証明書のローテーションを有効にする |
44 | 25 |
|
| 26 | +`kubelet`プロセスは`--rotate-certificates`という引数を受け付けます。この引数によって、現在使用している証明書の有効期限が近づいたときに、kubeletが自動的に新しい証明書をリクエストするかどうかを制御できます。証明書のローテーションはベータ機能であるため、`--feature-gates=RotateKubeletClientCertificate=true`を使用してフィーチャーフラグを有効にする必要もあります。 |
45 | 27 |
|
46 |
| -The `kube-controller-manager` process accepts an argument |
47 |
| -`--experimental-cluster-signing-duration` that controls how long certificates |
48 |
| -will be issued for. |
| 28 | +`kube-controller-manager`プロセスは、`--experimental-cluster-signing-duration`という引数を受け付け、この引数で証明書が発行される期間を制御できます。 |
49 | 29 |
|
50 |
| -## Understanding the certificate rotation configuration |
| 30 | +## 証明書のローテーションの設定を理解する |
51 | 31 |
|
52 |
| -When a kubelet starts up, if it is configured to bootstrap (using the |
53 |
| -`--bootstrap-kubeconfig` flag), it will use its initial certificate to connect |
54 |
| -to the Kubernetes API and issue a certificate signing request. You can view the |
55 |
| -status of certificate signing requests using: |
| 32 | +kubeletが起動すると、ブートストラップが設定されている場合(`--bootstrap-kubeconfig`フラグを使用した場合)、初期証明書を使用してKubernetes APIに接続して、証明書署名リクエスト(certificate signing request、CSR)を発行します。証明書署名リクエストのステータスは、次のコマンドで表示できます。 |
56 | 33 |
|
57 | 34 | ```sh
|
58 | 35 | kubectl get csr
|
59 | 36 | ```
|
60 | 37 |
|
61 |
| -Initially a certificate signing request from the kubelet on a node will have a |
62 |
| -status of `Pending`. If the certificate signing requests meets specific |
63 |
| -criteria, it will be auto approved by the controller manager, then it will have |
64 |
| -a status of `Approved`. Next, the controller manager will sign a certificate, |
65 |
| -issued for the duration specified by the |
66 |
| -`--experimental-cluster-signing-duration` parameter, and the signed certificate |
67 |
| -will be attached to the certificate signing requests. |
68 |
| - |
69 |
| -The kubelet will retrieve the signed certificate from the Kubernetes API and |
70 |
| -write that to disk, in the location specified by `--cert-dir`. Then the kubelet |
71 |
| -will use the new certificate to connect to the Kubernetes API. |
72 |
| - |
73 |
| -As the expiration of the signed certificate approaches, the kubelet will |
74 |
| -automatically issue a new certificate signing request, using the Kubernetes |
75 |
| -API. Again, the controller manager will automatically approve the certificate |
76 |
| -request and attach a signed certificate to the certificate signing request. The |
77 |
| -kubelet will retrieve the new signed certificate from the Kubernetes API and |
78 |
| -write that to disk. Then it will update the connections it has to the |
79 |
| -Kubernetes API to reconnect using the new certificate. |
80 |
| - |
81 |
| - |
| 38 | +ノード上のkubeletから発行された証明書署名リクエストは、初めは`Pending`状態です。証明書署名リクエストが特定の条件を満たすと、コントローラーマネージャーに自動的に承認され、`Approved`状態になります。次に、コントローラーマネージャーは`--experimental-cluster-signing-duration`パラメーターで指定された有効期限で発行された証明書に署名を行い、署名された証明書が証明書署名リクエストに添付されます。 |
82 | 39 |
|
| 40 | +kubeletは署名された証明書をKubernetes APIから取得し、ディスク上の`--cert-dir`で指定された場所に書き込みます。その後、kubeletは新しい証明書を使用してKubernetes APIに接続するようになります。 |
83 | 41 |
|
| 42 | +署名された証明書の有効期限が近づくと、kubeletはKubernetes APIを使用して新しい証明書署名リクエストを自動的に発行します。再び、コントローラーマネージャーは証明書のリクエスト自動的に承認し、署名された証明書を証明書署名リクエストに添付します。kubeletは新しい署名された証明書をKubernetes APIから取得してディスクに書き込みます。その後、kubeletは既存のコネクションを更新して、新しい証明書でKubernetes APIに再接続します。 |
0 commit comments