第23章 rhel_mgmt コレクションを使用した IPMI と Redfish によるリモート管理


Intelligent Platform Management Interface (IPMI) と Redfish API を使用すると、管理者はオペレーティングシステムが実行されていない場合でもホストをリモートで管理できます。rhel_mgmt Ansible コレクションは、IPMI と Redfish を使用してブートデバイスの設定などの特定のリモート操作を実行するモジュールを提供します。

23.1. rhel_mgmt.ipmi_boot モジュールを使用したブートデバイスの設定

redhat.rhel_mgmt コレクションの ipmi_boot モジュールを使用して、ホストのブートデバイスを設定できます。このモジュールは、Intelligent Platform Management Interface (IPMI) を使用してこの操作を実行します。

重要

この Ansible モジュールを使用する場合、3 つのホストが関係します。コントロールノード、管理対象ノード、および実際の IPMI 操作が適用されるベースボード管理コントローラー (BMC) を備えたホストです。コントロールノードは、管理対象ノード上で Playbook を実行します。管理対象ホストはリモートの BMC に接続して IPMI 操作を実行します。たとえば、Playbook で hosts: managed-node-01.example.comname: server.example.com を設定すると、managed-node-01.example.comserver.example.com の IPMI を使用して設定を変更します。

前提条件

  • コントロールノードと管理対象ノードの準備が完了している
  • 管理対象ノードで Playbook を実行できるユーザーとしてコントロールノードにログインしている。
  • 管理対象ノードへの接続に使用するアカウントに、そのノードに対する sudo 権限がある。
  • ansible-collection-redhat-rhel_mgmt パッケージがコントロールノードにインストールされている。
  • BMC にアクセスするための認証情報がある。また、この認証情報に設定を変更する権限がある。
  • 管理対象ノードがネットワーク経由でリモートの BMC にアクセスできる。

手順

  1. 機密性の高い変数を暗号化されたファイルに保存します。

    1. vault を作成します。

      $ ansible-vault create ~/vault.yml
      New Vault password: <vault_password>
      Confirm New Vault password: <vault_password>
      Copy to Clipboard Toggle word wrap
    2. ansible-vault create コマンドでエディターが開いたら、機密データを <key>: <value> 形式で入力します。

      ipmi_usr: <username>
      ipmi_pwd: <password>
      Copy to Clipboard Toggle word wrap
    3. 変更を保存して、エディターを閉じます。Ansible は vault 内のデータを暗号化します。
  2. 次の内容を含む Playbook ファイル (例: ~/playbook.yml) を作成します。

    ---
    - name: Set the boot device by using IPMI
      hosts: managed-node-01.example.com
      vars_files:
        - ~/vault.yml
      tasks:
        - name: Install python3-pyghmi prerequisite
          ansible.builtin.dnf:
            name: python3-pyghmi
            state: latest
    
        - name: Set the boot device to hd
          redhat.rhel_mgmt.ipmi_boot:
            name: <bmc_hostname_or_ip_address>
            port: <bmc_port_number>
            user: "{{ ipmi_usr }}"
            password: "{{ ipmi_pwd }}"
            bootdev: hd
            persistent: true
    Copy to Clipboard Toggle word wrap

    サンプル Playbook で指定されている設定は次のとおりです。

    name: <bmc_hostname_or_ip_address>
    BMC のホスト名または IP アドレスを定義します。これは、管理対象ノードがアクションを実行するホストの BMC です。
    port: <bmc_port_number>
    Remote Management Control Protocol (RMCP) のポート番号を設定します。デフォルトは 623 です。
    bootdev: <value>

    ブートデバイスを設定します。以下の値のいずれかを選択できます。

    • hd: ハードディスクから起動します。
    • network: ネットワークから起動します。
    • optical: DVD-ROM などの光学ドライブから起動します。
    • floppy: フロッピーディスクから起動します。
    • safe: ハードドライブからセーフモードで起動します。
    • setup: BIOS または UEFI で起動します。
    • default: IPMI 経由で指示されたブートデバイスの要求をすべて削除します。
    persistent: <true|false>
    定義した設定をリモートホストで今後のすべてのブートに使用するか、次回のブートにのみ使用するかを設定します。デフォルトでは、この変数は false に設定されています。すべての BMC がブートデバイスの永続的な設定をサポートしているわけではないことに注意してください。

    Playbook で使用されるすべての変数の詳細は、コントロールノードで ansible-doc redhat.rhel_mgmt.ipmi_boot コマンドを使用して、モジュールのドキュメントを参照してください。

  3. Playbook の構文を検証します。

    $ ansible-playbook --ask-vault-pass --syntax-check ~/playbook.yml
    Copy to Clipboard Toggle word wrap

    このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。

  4. Playbook を実行します。

    $ ansible-playbook --ask-vault-pass ~/playbook.yml
    Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る