1.3. Bare Metal Provisioning サービス用コントローラーノードの設定


以下の手順は、Bare Metal Provisioning Database の作成 セクションを除き、root ユーザーとして Red Hat OpenStack Platform デプロイメント内のすべてのコントローラーノードで実行する必要があります。この手順は、すべてデータベースを共有しているため、1 つのコントローラーで実行する必要があります。

コントローラーノードで Bare Metal Provisioning ネットワークが Open vSwitch に接続されていることを確認し、OpenStack デプロイメントがそれに到達できるようにする必要があります。

  1. Open vSwitch にブリッジを追加します。

    # ovs-vsctl add-br br-ironic
    # ovs-vsctl add-port br-ironic IRONIC_PROVISIONING_NIC
    # ovs-vsctl show
    Copy to Clipboard Toggle word wrap

    ここでは、br-ironic はブリッジの名前であり、IRONIC_PROVISIONING_NIC はベアメタルプロビジョニングネットワークに接続されている NIC です。

    ovs-vsctl show コマンドを使用すると、関連付けられたポートで新しいブリッジが作成されていることを確認できますが、br-int 統合ブリッジに新しいブリッジへのパッチがないことがわかります。

  2. 統合ブリッジに新しいブリッジを追加するには、以下のプラグインファイルを更新する必要があります。

    1. 以下のように ML2 設定ファイル /etc/neutron/plugins/ml2/ml2_conf.ini を更新します。

      • type_drivers パラメーターについては、ドライバー間で flat がリストされていることを確認します(例: type_drivers = vxlan,vlan,flat,gre )。これはコンマ区切りのリストです。
      • mechanism_drivers パラメーターについては、mechanism_drivers = openvswitch など、ドライバー間で openvswitch オプションが表示されていることを確認します。これはコンマ区切りのリストです。
      • flat_networks パラメーターについては、Bare Metal Provisioning ネットワークを参照する名前を作成します(例: ironicnet )。flat_networks =datacentre,ironicnet など、この名前が一覧表示されている flat_networks にリストされていることを確認します。これはコンマ区切りのリストです。
      • Bare Metal Provisioning ネットワークに VLAN を使用している場合は、ironicnet:VLAN_START:VLAN_END の形式で network_vlan_ranges パラメーターを追加します(例: network_vlan_ranges =datacentre:1:1000 )。これはコンマ区切りのリストです。
      • enable_security_group パラメーターはすでに有効になっているはずです。ただし、設定されていない場合は、値を True に変更します(例: enable_security_group = True )。
    2. /etc/neutron/plugins/ml2/openvswitch_agent.ini ファイルで bridge_mappings パラメーターを見つけ、以下のように更新します。

      bridge_mappings =datacentre:br-ex,ironicnet:br-ironic
      Copy to Clipboard Toggle word wrap

      このコンマ区切りのキーと値のペアの値は、Bare Metal Provisioning ネットワークの名前を、ネットワークに接続されている物理デバイスにマッピングします。

  3. neutron-openvswitch-agent.service を再起動して、統合ブリッジの一部として br-ironic ブリッジを表示します。

    # systemctl restart neutron-openvswitch-agent.service
    Copy to Clipboard Toggle word wrap
  4. neutron-server.service を再起動して、新規接続を検出します。

    # systemctl restart neutron-server.service
    Copy to Clipboard Toggle word wrap
    注記

    このステップを実行しなかった場合には、OpenStack Networking サービス内で Bare Metal Provisioning ネットワークを作成しようとすると、要求されたフラットネットワークが存在しないというメッセージが表示されて失敗します。

1.3.1. ベアメタルプロビジョニングデータベースの作成

Bare Metal Provisioning が使用するデータベースおよびデータベースユーザーを作成します。この手順のすべての手順は、root ユーザーとしてログインし、データベースサーバーで実行する必要があります。

ベアメタルプロビジョニングデータベースの作成

  1. データベースサービスに接続します。

    # mysql -u root
    Copy to Clipboard Toggle word wrap
  2. ironic データベースを作成します。

    mysql> CREATE DATABASE ironic CHARACTER SET utf8;
    Copy to Clipboard Toggle word wrap
  3. ironic データベースユーザーを作成し、ユーザーに ironic データベースへのアクセスを許可します。

    mysql> GRANT ALL PRIVILEGES ON ironic.* TO 'ironic'@'%' IDENTIFIED BY 'PASSWORD';
    mysql> GRANT ALL PRIVILEGES ON ironic.* TO 'ironic'@'localhost' IDENTIFIED BY 'PASSWORD';
    Copy to Clipboard Toggle word wrap

    PASSWORD を、このユーザーとしてデータベースサーバーでの認証に使用されるセキュアなパスワードに置き換えます。

  4. データベースの権限をフラッシュして、すぐに有効になるようにします。

    mysql> FLUSH PRIVILEGES;
    Copy to Clipboard Toggle word wrap
  5. mysql クライアントを終了します。

    mysql> quit
    Copy to Clipboard Toggle word wrap

1.3.2. Bare Metal Provisioning 用 OpenStack Compute サービスの設定

Bare Metal Provisioning ドライバー用に Compute サービスを設定します。このドライバーを使用すると、Compute は仮想マシンのプロビジョニングに使用されるのと同じ API を使用して物理マシンをプロビジョニングできます。各 openstack-nova-compute ノードには指定できるドライバーは 1 つだけです。Bare Metal Provisioning ドライバーを持つノードは、物理マシンのみをプロビジョニングできます。Bare Metal Provisioning ドライバーを使用してすべてのベアメタルノードをプロビジョニングするには、1 つの openstack-nova-compute ノードを割り当てることを推奨します。次の手順はすべて、root ユーザーとしてログインし、選択したコンピュートノードで実行する必要があります。

ベアメタルプロビジョニング用の OpenStack Compute の設定

  1. Bare Metal Provisioning スケジューラーのホストマネージャーを使用するように Compute を設定します。

    # openstack-config --set /etc/nova/nova.conf \
       DEFAULT scheduler_host_manager nova.scheduler.ironic_host_manager.IronicHostManager
    Copy to Clipboard Toggle word wrap
  2. Compute スケジューラーがインスタンスの変更を追跡できないようにします。

    # openstack-config --set /etc/nova/nova.conf DEFAULT scheduler_tracks_instance_changes false
    Copy to Clipboard Toggle word wrap
  3. 以下のようにデフォルトのフィルターを設定します。

    # openstack-config --set /etc/nova/nova.conf DEFAULT baremetal_scheduler_default_filters AvailabilityZoneFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter
    Copy to Clipboard Toggle word wrap
  4. Compute がデフォルトの Bare Metal Provisioning スケジューリングフィルターを使用するように設定します。

    # openstack-config --set /etc/nova/nova.conf \
       DEFAULT scheduler_use_baremetal_filters True
    Copy to Clipboard Toggle word wrap
  5. Bare Metal Provisioning に正しい認証情報を使用するように Compute を設定します。

    # openstack-config --set /etc/nova/nova.conf \
       ironic admin_username ironic
    # openstack-config --set /etc/nova/nova.conf \
       ironic admin_password PASSWORD
    # openstack-config --set /etc/nova/nova.conf \
       ironic admin_url http://IDENTITY_IP:35357/v2.0
    # openstack-config --set /etc/nova/nova.conf \
       ironic admin_tenant_name service
    # openstack-config --set /etc/nova/nova.conf \
       ironic api_endpoint http://IRONIC_API_IP:6385/v1
    Copy to Clipboard Toggle word wrap

    以下の値を置き換えます。

    • PASSWORD を、Bare Metal Provisioning が Identity での認証に使用するパスワードに置き換えます。
    • IDENTITY_IP は、ID をホストするサーバーの IP アドレスまたはホスト名に置き換えます。
    • IRONIC_API_IP は、Bare Metal Provisioning API サービスをホストするサーバーの IP アドレスまたはホスト名に置き換えます。
  6. ironic コンピュートノードで nova データベースの認証情報を設定します。

    # openstack-config --set /etc/nova/nova.conf database connection "mysql+pymysql://nova:NOVA_DB_PASSWORD@DB_IP/nova"
    Copy to Clipboard Toggle word wrap
  7. コンピュートコントローラーノードで Compute スケジューラーサービスを再起動します。

    # systemctl restart openstack-nova-scheduler.service
    Copy to Clipboard Toggle word wrap
  8. コンピュートノードでコンピュートサービスを再起動します。

    # systemctl restart openstack-nova-compute.service
    Copy to Clipboard Toggle word wrap

1.3.3. OpenStack Networking DHCP エージェントを設定して iPXE 要求にタグを付ける

iPXE からの OpenStack Networking の DHCP 要求には、ipxe という DHCP タグを用意して、クライアントが boot.ipxe スクリプトを取得するために HTTP 操作を実行する必要があることを DHCP サーバーに知らせる必要があります。そのためには、OpenStack Networking DHCP Agent サービスで使用される dnsmasq 設定ファイルに dhcp-userclass エントリーを追加します。

  1. オーバークラウドコントローラーで、DHCP エージェントが使用している dnsmasq ファイルを確認します。

    # grep ^dnsmasq_config_file /etc/neutron/dhcp_agent.ini
    
    dnsmasq_config_file =/etc/neutron/dnsmasq-neutron.conf
    Copy to Clipboard Toggle word wrap
  2. このファイルを編集して、ファイルの最後に以下の行を追加します。

    # Create the "ipxe" tag if request comes from iPXE user class
    
    dhcp-userclass=set:ipxe,iPXE
    Copy to Clipboard Toggle word wrap
  3. ファイルを保存して、OpenStack Networking DHCP エージェントサービスを再起動します。

    # systemctl restart neutron-dhcp-agent.service
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat