kubernetes-the-hard-way/docs/ja/11-pod-network-routes.md

2.3 KiB
Raw Blame History

Podネットワークルートのプロビジョニング

ードにスケジュールされたPodは、ードのPod CIDR範囲からIPアドレスを受け取ります。この時点では、ネットワークルートが欠如しているため、異なるード上で実行されている他のPodと通信することはできません。

このラボでは、各ワーカーードのPod CIDR範囲をードの内部IPアドレスにマッピングするルートを作成します。

Kubernetesネットワーキングモデルを実装する他の方法もあります。

ルーティングテーブル

このセクションでは、kubernetes-the-hard-way VPCネットワークにルートを作成するために必要な情報を収集します。

各ワーカーインスタンスの内部IPアドレスとPod CIDR範囲を表示します

{
  SERVER_IP=$(grep server machines.txt | cut -d " " -f 1)
  NODE_0_IP=$(grep node-0 machines.txt | cut -d " " -f 1)
  NODE_0_SUBNET=$(grep node-0 machines.txt | cut -d " " -f 4)
  NODE_1_IP=$(grep node-1 machines.txt | cut -d " " -f 1)
  NODE_1_SUBNET=$(grep node-1 machines.txt | cut -d " " -f 4)
}
ssh root@server <<EOF
  ip route add ${NODE_0_SUBNET} via ${NODE_0_IP}
  ip route add ${NODE_1_SUBNET} via ${NODE_1_IP}
EOF
ssh root@node-0 <<EOF
  ip route add ${NODE_1_SUBNET} via ${NODE_1_IP}
EOF
ssh root@node-1 <<EOF
  ip route add ${NODE_0_SUBNET} via ${NODE_0_IP}
EOF

検証

ssh root@server ip route
default via XXX.XXX.XXX.XXX dev ens160
10.200.0.0/24 via XXX.XXX.XXX.XXX dev ens160
10.200.1.0/24 via XXX.XXX.XXX.XXX dev ens160
XXX.XXX.XXX.0/24 dev ens160 proto kernel scope link src XXX.XXX.XXX.XXX
ssh root@node-0 ip route
default via XXX.XXX.XXX.XXX dev ens160
10.200.1.0/24 via XXX.XXX.XXX.XXX dev ens160
XXX.XXX.XXX.0/24 dev ens160 proto kernel scope link src XXX.XXX.XXX.XXX
ssh root@node-1 ip route
default via XXX.XXX.XXX.XXX dev ens160
10.200.0.0/24 via XXX.XXX.XXX.XXX dev ens160
XXX.XXX.XXX.0/24 dev ens160 proto kernel scope link src XXX.XXX.XXX.XXX

次: スモークテスト