3.4. コントロールプレーンへの Bare Metal Provisioning サービス (ironic) の追加


Red Hat OpenStack Services on OpenShift (RHOSO) デプロイメントで Bare Metal Provisioning サービス (ironic) を有効にするには、ironic サービスをコントロールプレーンに追加して、必要に応じて設定する必要があります。

手順

  1. ワークステーションで OpenStackControlPlane カスタムリソース (CR) ファイル openstack_control_plane.yaml を開きます。
  2. 次の cellTemplates 設定を nova サービス設定に追加します。

      nova:
        apiOverride:
          route: {}
        template:
          ...
          secret: osp-secret
          cellTemplates:
            cell0:
              cellDatabaseAccount: nova-cell0
              hasAPIAccess: true
            cell1:
              cellDatabaseAccount: nova-cell1
              cellDatabaseInstance: openstack-cell1
              cellMessageBusInstance: rabbitmq-cell1
              hasAPIAccess: true
              novaComputeTemplates:
                compute-ironic: 
    1
    
                  computeDriver: ironic.IronicDriver
    1
    Compute サービスの名前。名前には 20 文字の制限があり、小文字の英数字と - 記号のみを含めることができます。
  3. ironic サービスを有効にし、接続するネットワークを指定します。

    spec:
      ...
      ironic:
        enabled: true
        template:
          rpcTransport: oslo
          databaseInstance: openstack
          ironicAPI:
            replicas: 1
            override:
              service:
                internal:
                  metadata:
                    annotations:
                      metallb.universe.tf/address-pool: ctlplane
                      metallb.universe.tf/allow-shared-ip: ctlplane
                      metallb.universe.tf/loadBalancerIPs: 192.168.122.80
                  spec:
                    type: LoadBalancer
          ironicConductors:
          - replicas: 1
            storageRequest: 10G
            networkAttachments:
            - baremetal 
    1
    
            provisionNetwork: baremetal 
    2
    
          ironicInspector:
            replicas: 0 
    3
    
            networkAttachments:
            - baremetal 
    4
    
            inspectionNetwork: baremetal 
    5
    
          ironicNeutronAgent:
            replicas: 1
          secret: osp-secret
    1
    ironicConductor Pod に使用するために、ベアメタルネットワーク向けの RHOCP の準備 で分離されたベアメタルネットワーク用に作成した NetworkAttachmentDefinition CR の名前。
    2
    ベアメタルネットワークの作成 でプロビジョニングネットワークとして使用するために作成した Networking サービス (neutron) ネットワークの名前。
    3
    ironicInspector サービスを使用せずに Bare Metal Provisioning サービスをデプロイできます。サービスをデプロイするには、replicas の数を 1 に設定します。
    4
    ironicInspector Pod に使用するために、ベアメタルネットワーク向けの RHOCP の準備 で分離されたベアメタルネットワーク用に作成した NetworkAttachmentDefinition CR の名前。
    5
    ベアメタルネットワークの作成 で検査ネットワークとして使用するために作成した Networking サービス (neutron) ネットワークの名前。Ironic Inspector API はポート 5050 でリッスンします。
  4. Bare Metal Provisioning サービスがベアメタルノードのプロビジョニング、クリーニング、検査、およびレスキューに使用するネットワークを指定します。

    spec:
      ...
      ironic:
        ...
          ironicConductors:
          - replicas: 1
            storageRequest: 10G
            networkAttachments:
            - baremetal
            provisionNetwork: baremetal
            customServiceConfig: |
              [neutron]
              cleaning_network = <network_UUID>
              provisioning_network = <network_UUID>
              inspection_network = <network_UUID>
              rescuing_network = <network_UUID>
  5. OVN マッピングを設定します。

      ovn:
        template:
          ovnController:
            ...
            nicMappings: 
    1
    
              datacentre: ocpbr
              baremetal: baremetal
    1
    物理ネットワークプロバイダーを NodeNetworkConfigurationPolicy (nncp) CR で定義されたインターフェイス名にマッピングするキーと値のペアのリスト。
  6. コントロールプレーンを更新します。

    $ oc apply -f openstack_control_plane.yaml -n openstack
  7. RHOCP が OpenStackControlPlane CR に関連するリソースを作成するまで待機します。次のコマンドを実行して、ステータスを確認します。

    $ oc get openstackcontrolplane -n openstack
    NAME 						STATUS 	MESSAGE
    openstack-control-plane 	Unknown 	Setup started

    ステータスが "Setup complete" であれば、OpenStackControlPlane リソースが作成されています。

    ヒント

    デプロイの進行状況を追跡するには、get コマンドの末尾に -w オプションを追加します。

  8. openstack namespace 内の Pod を確認して、コントロールプレーンがデプロイされていることを確認します。

    $ oc get pods -n openstack

    すべての Pod が完了または実行中の状態であれば、コントロールプレーンがデプロイされています。

検証

  1. OpenStackClient Pod へのリモートシェル接続を開きます。

    $ oc rsh -n openstack openstackclient
  2. 内部サービスエンドポイントが各サービスに登録されていることを確認します。

    $ openstack endpoint list -c 'Service Name' -c Interface -c URL --service ironic
    +--------------+-----------+---------------------------------------------------------------+
    | Service Name | Interface | URL                                                           |
    +--------------+-----------+---------------------------------------------------------------+
    | ironic       | internal  | http://ironic-internal.openstack.svc:9292                     |
    | ironic       | public    | http://ironic-public-openstack.apps.ostest.test.metalkube.org |
    +--------------+-----------+---------------------------------------------------------------+
  3. openstackclient Pod を終了します。

    $ exit
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る