このページでは、Google Distributed Cloud の設定で使用される IP ブロック ファイルのフィールドについて説明します。
IP ブロック ファイルを使用して、一連のノードマシンと、マシンが接続されているネットワークを記述します。クラスタごとに個別の IP ブロック ファイルを作成します。管理クラスタ構成ファイルとユーザー クラスタ構成ファイルの両方に、network.ipMode.ipBlockFilePath というフィールドがあります。このフィールドには、IP ブロックの絶対パスまたは相対パスを指定します。
次の場合は、IP ブロック ファイルに IP アドレスとホスト名(必要な場合)のリストを記述します。
ユーザー クラスタ:
ユーザー クラスタ構成ファイルで
network.ipMode.typeが"static"に設定されている場合は、ユーザー クラスタの IP ブロック ファイルにワーカーノードの IP アドレスのリストを記述します。管理クラスタ構成ファイルで
infraConfigFilePathが構成されている場合(これによりトポロジ ドメインが有効になります)、ユーザー クラスタの IP ブロック ファイルに、コントロール プレーン ノードの IP アドレスのリストを記述します。ワーカーノードが DHCP を使用している場合でも、コントロール プレーン ノードの IP アドレスは常に静的 IP アドレスです。
管理クラスタ:
管理クラスタ構成ファイルで
infraConfigFilePathが構成されている場合(これによりトポロジ ドメインが有効になります)、管理クラスタの IP ブロック ファイルにコントロール プレーン ノードの IP アドレスのリストを記述します。1.16 以前の非 HA 管理クラスタ: 管理クラスタの IP ブロック ファイルに、コントロール プレーン ノードとアドオンノードの IP アドレスのリストを記述します。
1.16 以前の HA 管理クラスタ: IP ブロック ファイルに、アドオンノードの IP アドレスのリストを記述します。
1.29 以前の kubeception ユーザー クラスタ: 管理クラスタの IP ブロック ファイルに、ユーザー クラスタのコントロール プレーン ノードの IP アドレスのリストを記述します。
テンプレート
IP ブロック ファイルのフィールドへの入力
このセクションでは、IP ブロック ファイルの各フィールドについて説明します。
blocks
オブジェクトの配列。それぞれがホストのセットを説明します。
blocks[i].netmask
文字列。一連のホストのサブネット マスク。例:
blocks: - netmask: "255.255.252.0"
blocks[i].gateway
文字列。一連のホストのデフォルト ゲートウェイのアドレス。次に例を示します。
blocks: - netmask: "255.255.252.0" gateway: "172.16.23.254"
blocks[i].ips
オブジェクトの配列。各オブジェクトには、個別の IP アドレスまたは IP アドレスの CIDR ブロックがあります。
オブジェクトに個別の IP アドレスがある場合、ホスト名を指定することもできます。
ipを CIDR ブロックに設定する場合は、hostnameの値を指定しないでください。hostnameの値を指定しないと、Google Distributed Cloud はホスト名として vSphere の VM の名前を使用します。
blocks[i].isControlPlane
管理クラスタ構成ファイルで infraConfigFilePath が構成されていて、IP アドレスがコントロール プレーン ノードのものである場合は、isControlPlane: true を含めます。ユーザー クラスタのワーカーノードの場合は、デフォルト値が false であるため、false を指定するか、フィールドを省略します。
構成ファイルの例
このセクションでは、サンプル値が入力された構成をいくつか示します。
例 1
この例では、6 個の IP アドレス(2 個の個別のアドレスと 4 個のアドレスの CIDR ブロック)を指定しています。
blocks:
- netmask: "255.255.252.0"
gateway: "203.0.113.1"
ips:
- ip: 198.51.100.10
hostname: worker-node1
- ip: 198.51.100.11
hostname: worker-node2
- ip: 198.51.100.12/30 # 198.51.100.12 - 198.51.100.15
例 2
この例は、トポロジ ドメイン用に構成された IP ブロック ファイルを示しています。
blocks:
- netmask: 255.255.255.0
gateway: 100.115.222.254
ips:
- ip: 100.115.222.204
hostname: worker-1
- ip: 100.115.222.205
hostname: cp-1
isControlPlane: true
- ip: 100.115.222.206
hostname: cp-2
isControlPlane: true
- ip: 100.115.222.207
hostname: cp-3
isControlPlane: true
- ip: 100.115.222.220/28 # 100.115.222.208 - 100.115.222.223
- netmask: 255.255.255.0
gateway: 100.115.223.254
ips:
- ip: 100.115.223.206
hostname: worker-2
- ip: 100.115.223.220/28 # 100.115.223.208 - 100.115.223.223
- netmask: 255.255.255.0
gateway: 100.115.224.254
ips:
- ip: 100.115.224.206
hostname: worker-3
- ip: 100.115.224.220/28 # 100.115.224.208 - 100.115.224.223
この IP ブロック ファイルの例では、3 つのサブネットから IP アドレスが予約され、各サブネットは blocks[i] で表されます。blocks[i].gateway は IP ブロックの識別子として機能するため、重要です。同じ IP アドレスを、vSphere Infrastructure 構成ファイルの VSphereInfraConfig カスタム リソースの topologyDomains[i].network.gateway に追加します。
isControlPlane: true で構成された IP が 3 つあります。これは、これらの IP アドレスがコントロール プレーン ノード専用に予約されていることを示します。管理クラスタまたはユーザー クラスタの IP ブロック ファイルには、コントロール プレーン ノード用に予約された 3 つの IP アドレスが必要です。これらをクラスタのトポロジに従ってターゲット サブネットに予約します。
コントロール プレーン ノードは単一のトポロジ ドメインに存在する必要があるため、コントロール プレーン ノードの IP アドレスは同じ IP ブロックに存在する必要があります。