第4章 デプロイ後の Bare Metal サービスの設定
本項では、デプロイ後のオーバークラウドの設定に必要な手順について説明します。
4.1. OpenStack Networking の設定
DHCP、PXE ブート、およびその他の必要な場合に OpenStack Networking が Bare Metal サービスと通信するように設定します。ベアメタルネットワークを設定するには、2 とおりの方法があります。
- Ironic Conductor サービス用にフラットなベアメタルネットワークを使用する。このネットワークは、コントロールプレーンネットワーク上の Ironic サービスにルーティングする必要があります。
- カスタムのコンポーザブルネットワークを使用して、オーバークラウドに Ironic サービスを実装する。
本項の手順に従って、ベアメタルマシンのプロビジョニングに使用する単一のフラットなネットワーク向けに OpenStack Networking を設定するか、あるいは未使用の分離ネットワークまたはフラットネットワークに依存しない新たなコンポーザブルネットワークを設定します。この設定では、ML2 プラグインと Open vSwitch エージェントを使用します。
以下の手順に記載するすべてのステップを、OpenStack Networking サービスをホストするサーバーに root ユーザーとしてログインして実行します。
4.1.1. OpenStack Networking がフラットなベアメタルネットワーク上の Bare Metal サービスと通信するための設定
Identity に管理ユーザーとしてアクセスするためのシェルを設定します。
$ source ~/overcloudrc
ベアメタルインスタンスをプロビジョニングするためのフラットなネットワークを作成します。
$ openstack network create \ --provider-network-type flat \ --provider-physical-network baremetal \ --share NETWORK_NAME
NETWORK_NAME は、このネットワークの名前に置き換えます。仮想ネットワークの実装先となる物理ネットワークの名前 (この場合は
baremetal
) は、以前の手順で~/templates/network-environment.yaml
ファイルのNeutronBridgeMappings
パラメーターで設定されています。フラットネットワーク上にサブネットを作成します。
$ openstack subnet create \ --network NETWORK_NAME \ --subnet-range NETWORK_CIDR \ --ip-version 4 \ --gateway GATEWAY_IP \ --allocation-pool start=START_IP,end=END_IP \ --dhcp SUBNET_NAME
以下の値を置き換えてください。
- SUBNET_NAME は、サブネットの名前に置き換えます。
- NETWORK_NAME は、以前のステップで作成済みのプロビジョニングネットワークの名前に置き換えます。
- NETWORK_CIDR は、サブネットが示す IP アドレスブロックの Classless Inter-Domain Routing (CIDR) 表記に置き換えます。START_IP で始まり END_IP で終る範囲で指定する IP アドレスブロックは、NETWORK_CIDR で指定されている IP アドレスブロックの範囲内に入る必要があります。
- GATEWAY_IP は、新しいサブネットのゲートウェイとして機能するルーターインターフェースの IP アドレスまたはホスト名に置き換えます。このアドレスは、NETWORK_CIDR で指定されている IP アドレスブロック内で、かつ START_IP で始まり END_IP で終わる範囲で指定されている IP アドレスブロック外でなければなりません。
- START_IP は、Floating IP アドレスを確保する新規サブネット内の IP アドレス範囲の開始アドレスを示す IP アドレスに置き換えます。
- END_IP は、Floating IP アドレスを確保する新規サブネット内の IP アドレス範囲の終了アドレスを示す IP アドレスに置き換えます。
ネットワークとサブネット用のルーターを作成して、OpenStack Networking サービスがメタデータ要求に応答するようにします。
$ openstack router create ROUTER_NAME
ROUTER_NAME
は、ルーターの名前に置き換えます。サブネットを新しいルーターに接続します。
$ openstack router add subnet ROUTER_NAME BAREMETAL_SUBNET
ROUTER_NAME をルーターの名前に、BAREMETAL_SUBNET を以前のステップで作成したサブネットの ID または名前に、それぞれ置き換えます。これにより、
cloud-init
からのメタデータ要求に対応すると共に、ノードを設定することができます。
4.1.2. OpenStack Networking がカスタムコンポーザブルベアメタルネットワーク上の Bare Metal サービスと通信するための設定
デプロイメント中に作成する
OcProvisioning
ネットワークと一致する VLAN ID で、VLAN ネットワークを作成します。クリーニングネットワークのデフォルト名と一致するように、新しいネットワークの名前をprovisioning
と設定します。(overcloud) [stack@host01 ~]$ openstack network create \ --share \ --provider-network-type vlan \ --provider-physical-network datacentre \ --provider-segment 205 provisioning
オーバークラウドネットワークの名前が
provisioning
ではない場合には、コントローラーにログインし、以下のコマンドを実行して名前を変更し、ネットワークを再起動します。heat-admin@overcloud-controller-0 ~]$ sudo vi /var/lib/config-data/puppet-generated/ironic/etc/ironic/ironic.conf
heat-admin@overcloud-controller-0 ~]$ sudo podman restart ironic_conductor