8.4. データプレーンネットワークの作成
データプレーンネットワークを作成するには、NetConfig カスタムリソース (CR) を定義し、データプレーンネットワークのすべてのサブネットを指定します。データプレーン用に少なくとも 1 つのコントロールプレーンネットワークを定義する必要があります。また、VLAN ネットワークを定義して、internalapi、storage、external などのコンポーザブルネットワークのネットワーク分離を作成することもできます。各ネットワーク定義には IP アドレスの割り当てを含める必要があります。
NetConfig CRD 定義と仕様スキーマを表示するには、次のコマンドを使用します。
$ oc describe crd netconfig
$ oc explain netconfig.spec
手順
-
ワークステーションに
openstack_netconfig.yamlという名前のファイルを作成します。 openstack_netconfig.yamlに次の設定を追加して、NetConfigCR を作成します。apiVersion: network.openstack.org/v1beta1 kind: NetConfig metadata: name: openstacknetconfig namespace: openstackopenstack_netconfig.yamlファイルで、各データプレーンネットワークのトポロジーを定義します。デフォルトの Red Hat OpenStack Services on OpenShift (RHOSO) ネットワークを使用するには、各ネットワークの仕様を定義する必要があります。デフォルトの RHOSO ネットワークについては、Red Hat OpenStack Services on OpenShift のネットワーク を参照してください。注記事前プロビジョニング済みのデータプレーンノードを使用する場合は、コントロールプレーンのネットワークと IP アドレスが、事前プロビジョニング済みのデータプレーンノードと一致している必要があります。
ctlplaneネットワークがタグ付き VLAN を使用する場合は、VLAN ID が事前プロビジョニング済みデータプレーンノードの VLAN ID と一致している必要もあります。次の例では、データプレーン用の分離ネットワークを作成します。
spec: networks: - name: ctlplane dnsDomain: ctlplane.example.com subnets: - name: subnet1 allocationRanges: - end: 192.168.122.120 start: 192.168.122.100 - end: 192.168.122.200 start: 192.168.122.150 cidr: 192.168.122.0/24 gateway: 192.168.122.1 - name: internalapi dnsDomain: internalapi.example.com subnets: - name: subnet1 allocationRanges: - end: 172.17.0.250 start: 172.17.0.100 excludeAddresses: - 172.17.0.10 - 172.17.0.12 cidr: 172.17.0.0/24 vlan: 20 - name: external dnsDomain: external.example.com subnets: - name: subnet1 allocationRanges: - end: 10.0.0.250 start: 10.0.0.100 cidr: 10.0.0.0/24 gateway: 10.0.0.1 - name: storage dnsDomain: storage.example.com subnets: - name: subnet1 allocationRanges: - end: 172.18.0.250 start: 172.18.0.100 cidr: 172.18.0.0/24 vlan: 21 - name: tenant dnsDomain: tenant.example.com subnets: - name: subnet1 allocationRanges: - end: 172.19.0.250 start: 172.19.0.100 cidr: 172.19.0.0/24 vlan: 22-
spec.networks.name: ネットワークの名前 (例:ctlplane)。 -
spec.networks.subnets: IPv4 サブネット仕様。 -
spec.networks.subnets.name: サブネットの名前 (例:subnet1)。 -
spec.networks.subnets.allocationRanges:NetConfigallocationRange。allocationRangeが、MetalLBIPAddressPoolの範囲および IP アドレスプール範囲と重複しないようにしてください。 -
spec.networks.subnets.excludeAddresses: オプション: データプレーンノードで使用してはならない割り当て範囲の IP アドレスのリスト。 -
spec.networks.subnets.vlan: ネットワーク VLAN。デフォルトの RHOSO ネットワークについては、Red Hat OpenStack Services on OpenShift のネットワーク を参照してください。
-
-
openstack_netconfig.yaml定義ファイルを保存します。 データプレーンネットワークを作成します。
$ oc create -f openstack_netconfig.yaml -n openstackデータプレーンネットワークが作成されたことを確認するために、
openstacknetconfigリソースを表示します。$ oc get netconfig/openstacknetconfig -n openstackエラーが表示された場合は、基礎となる
network-attach-definitionとノードのネットワーク設定ポリシーを確認してください。$ oc get network-attachment-definitions -n openstack $ oc get nncp