Skip to content

Commit 952efaa

Browse files
kohbist-inuOkabe-Junya
authored
[ja]Translate content/en/docs/setup/production-environment/tools/kube… (#47509)
* [ja]Translate content/ja/docs/setup/production-environment/tools/kubeadm/dual-stack-support.md * Update dual-stack-support.md 日本語は句点「。」で改行する * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update content/ja/docs/setup/production-environment/tools/kubeadm/dual-stack-support.md Co-authored-by: inukai <[email protected]> * Update content/ja/docs/setup/production-environment/tools/kubeadm/dual-stack-support.md Co-authored-by: Junya Okabe <[email protected]> --------- Co-authored-by: inukai <[email protected]> Co-authored-by: Junya Okabe <[email protected]>
1 parent 16fbab6 commit 952efaa

File tree

1 file changed

+156
-0
lines changed

1 file changed

+156
-0
lines changed
Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
---
2+
title: kubeadmによるデュアルスタックのサポート
3+
content_type: task
4+
weight: 100
5+
min-kubernetes-server-version: 1.21
6+
---
7+
8+
<!-- overview -->
9+
10+
{{< feature-state for_k8s_version="v1.23" state="stable" >}}
11+
12+
Kubernetesクラスターには[デュアルスタック](/ja/docs/concepts/services-networking/dual-stack/)ネットワークが含まれています。つまりクラスターネットワークではいずれかのアドレスファミリーを使用することができます。
13+
クラスターでは、コントロールプレーンはIPv4アドレスとIPv6アドレスの両方を、単一の{{< glossary_tooltip text="Pod" term_id="pod" >}}または{{< glossary_tooltip text="Service" term_id="service" >}}に割り当てることができます。
14+
15+
<!-- body -->
16+
17+
## {{% heading "prerequisites" %}}
18+
19+
[kubeadmのインストール](/ja/docs/setup/production-environment/tools/kubeadm/install-kubeadm/)の手順に従って、{{< glossary_tooltip text="kubeadm" term_id="kubeadm">}}ツールをインストールしておく必要があります。
20+
21+
{{< glossary_tooltip text="ノード" term_id="node">}}として使用したいサーバーごとに、IPv6フォワーディングが許可されていることを確認してください。
22+
Linuxでは、各サーバーでrootユーザーとして`sysctl -w net.ipv6.conf.all.forwarding=1`を実行することで設定できます。
23+
24+
使用するにはIPv4およびIPv6アドレス範囲が必要です。
25+
クラスター運用者は、通常はIPv4にはプライベートアドレス範囲を使用します。
26+
IPv6では、通常は運用者が割り当てたアドレス範囲を使用して、`2000::/3`の範囲内からグローバルユニキャストアドレスブロックを選択します。
27+
クラスターのIPアドレス範囲をパブリックインターネットにルーティングする必要はありません。
28+
29+
IPアドレス割り当てのサイズは、実行する予定のPodとServiceの数に適している必要があります。
30+
31+
{{< note >}}
32+
`kubeadm upgrade`コマンドを使用して既存のクラスターをアップグレードする場合、`kubeadm`はPodのIPアドレス範囲("クラスターCIDR")やクラスターのServiceのアドレス範囲("Service CIDR")の変更をサポートしません。
33+
{{< /note >}}
34+
35+
### デュアルスタッククラスターの作成
36+
37+
`kubeadm init`を使用してデュアルスタッククラスターを作成するには、以下の例のようにコマンドライン引数を渡します:
38+
39+
```shell
40+
# これらのアドレス範囲は例です
41+
kubeadm init --pod-network-cidr=10.244.0.0/16,2001:db8:42:0::/56 --service-cidr=10.96.0.0/16,2001:db8:42:1::/112
42+
```
43+
44+
わかりやすいように、主要なデュアルスタックコントロールプレーンノードのkubeadm[構成ファイル](/docs/reference/config-api/kubeadm-config.v1beta4/)`kubeadm-config.yaml`の例を示します。
45+
46+
```yaml
47+
---
48+
apiVersion: kubeadm.k8s.io/v1beta4
49+
kind: ClusterConfiguration
50+
networking:
51+
podSubnet: 10.244.0.0/16,2001:db8:42:0::/56
52+
serviceSubnet: 10.96.0.0/16,2001:db8:42:1::/112
53+
---
54+
apiVersion: kubeadm.k8s.io/v1beta4
55+
kind: InitConfiguration
56+
localAPIEndpoint:
57+
advertiseAddress: "10.100.0.1"
58+
bindPort: 6443
59+
nodeRegistration:
60+
kubeletExtraArgs:
61+
- name: "node-ip"
62+
value: "10.100.0.2,fd00:1:2:3::2
63+
```
64+
65+
InitConfigurationの`advertiseAddress`は、APIサーバーがリッスンしていることをアドバタイズするIPアドレスを指定します。
66+
`advertiseAddress`の値は`kubeadm init`の`--apiserver-advertise-address`フラグに相当します。
67+
68+
`kubeadm`を実行してデュアルスタックコントロールプレーンノードを初期化します:
69+
70+
```shell
71+
kubeadm init --config=kubeadm-config.yaml
72+
```
73+
74+
kube-controller-managerフラグ`--node-cidr-mask-size-ipv4|--node-cidr-mask-size-ipv6`はデフォルト値で設定されます。
75+
[IPv4/IPv6デュアルスタックの設定](/ja/docs/concepts/services-networking/dual-stack#configure-ipv4-ipv6-dual-stack)を参照してください。
76+
77+
{{< note >}}
78+
`--apiserver-advertise-address`フラグはデュアルスタックをサポートしません。
79+
{{< /note >}}
80+
81+
### デュアルスタッククラスターへのノード参加
82+
83+
ノードを参加させる前に、そのノードにIPv6ルーティングが可能なネットワークインターフェースがあり、IPv6フォワーディングが許可されていることを確認してください。
84+
85+
以下は、ワーカーノードをクラスターに参加させるためのkubeadm[構成ファイル](/docs/reference/config-api/kubeadm-config.v1beta4/)`kubeadm-config.yaml`の例です。
86+
87+
```yaml
88+
apiVersion: kubeadm.k8s.io/v1beta4
89+
kind: JoinConfiguration
90+
discovery:
91+
bootstrapToken:
92+
apiServerEndpoint: 10.100.0.1:6443
93+
token: "clvldh.vjjwg16ucnhp94qr"
94+
caCertHashes:
95+
- "sha256:a4863cde706cfc580a439f842cc65d5ef112b7b2be31628513a9881cf0d9fe0e"
96+
# 上記の認証情報をクラスターの実際のトークンとCA証明書に一致するように変更
97+
nodeRegistration:
98+
kubeletExtraArgs:
99+
- name: "node-ip"
100+
value: "10.100.0.2,fd00:1:2:3::3"
101+
```
102+
103+
また以下は、別のコントロールプレーンノードをクラスターに参加させるためのkubeadm[構成ファイル](/docs/reference/config-api/kubeadm-config.v1beta4/)`kubeadm-config.yaml`の例です。
104+
105+
106+
```yaml
107+
apiVersion: kubeadm.k8s.io/v1beta4
108+
kind: JoinConfiguration
109+
controlPlane:
110+
localAPIEndpoint:
111+
advertiseAddress: "10.100.0.2"
112+
bindPort: 6443
113+
discovery:
114+
bootstrapToken:
115+
apiServerEndpoint: 10.100.0.1:6443
116+
token: "clvldh.vjjwg16ucnhp94qr"
117+
caCertHashes:
118+
- "sha256:a4863cde706cfc580a439f842cc65d5ef112b7b2be31628513a9881cf0d9fe0e"
119+
# 上記の認証情報をクラスターの実際のトークンとCA証明書に一致するように変更
120+
nodeRegistration:
121+
kubeletExtraArgs:
122+
- name: "node-ip"
123+
value: "10.100.0.2,fd00:1:2:3::4"
124+
125+
```
126+
127+
JoinConfiguration.controlPlaneの`advertiseAddress`は、APIサーバーがリッスンしていることをアドバタイズするIPアドレスを指定します。
128+
`advertiseAddress`の値は`kubeadm join`の`--apiserver-advertise-address`フラグに相当します。
129+
130+
```shell
131+
kubeadm join --config=kubeadm-config.yaml
132+
```
133+
134+
### シングルスタッククラスターの作成
135+
136+
{{< note >}}
137+
デュアルスタックのサポートは、デュアルスタックアドレスを使用する必要があるという意味ではありません。
138+
デュアルスタックネットワーク機能が有効になっているシングルスタッククラスターをデプロイすることができます。
139+
{{< /note >}}
140+
141+
よりわかりやすいように、シングルスタックコントロールプレーンノードのkubeadm[構成ファイル](/docs/reference/config-api/kubeadm-config.v1beta4/)`kubeadm-config.yaml`の例を示します。
142+
143+
144+
```yaml
145+
apiVersion: kubeadm.k8s.io/v1beta4
146+
kind: ClusterConfiguration
147+
networking:
148+
podSubnet: 10.244.0.0/16
149+
serviceSubnet: 10.96.0.0/16
150+
```
151+
152+
## {{% heading "whatsnext" %}}
153+
154+
* [IPv4/IPv6デュアルスタックの検証](/ja/docs/tasks/network/validate-dual-stack)
155+
* [デュアルスタック](/ja/docs/concepts/services-networking/dual-stack/)クラスターネットワークについて読む
156+
* kubeadm[構成形式](/docs/reference/config-api/kubeadm-config.v1beta4/)についてもっと詳しく知る

0 commit comments

Comments
 (0)