Ce contenu n'est pas disponible dans la langue sélectionnée.

Chapter 4. Ansible IPMI modules in RHEL


4.1. The rhel_mgmt collection

The Intelligent Platform Management Interface (IPMI) is a specification for a set of standard protocols to communicate with baseboard management controller (BMC) devices. The IPMI modules allow you to enable and support hardware management automation. The IPMI modules are available in:

  • The rhel_mgmt Collection. The package name is ansible-collection-redhat-rhel_mgmt.
  • The RHEL 7.9 AppStream, as part of the new ansible-collection-redhat-rhel_mgmt package.

The following IPMI modules are available in the rhel_mgmt collection:

  • ipmi_boot: Management of boot device order
  • ipmi_power: Power management for machine

The mandatory parameters used for the IPMI Modules are:

  • ipmi_boot parameters:
Expand
Module nameDescription

name

Hostname or ip address of the BMC

password

Password to connect to the BMC

bootdev

Device to be used on next boot

* network

* floppy

* hd

* safe

* optical

* setup

* default

User

Username to connect to the BMC

  • ipmi_power parameters:
Expand
Module nameDescription

name

BMC Hostname or IP address

password

Password to connect to the BMC

user

Username to connect to the BMC

State

Check if the machine is on the desired status

* on

* off

* shutdown

* reset

* boot

4.2. Installing the rhel mgmt Collection using the CLI

You can install the rhel_mgmt Collection using the command line.

Prerequisites

  • The ansible-core package is installed.

Procedure

  • Install the collection via RPM package:

    # yum install ansible-collection-redhat-rhel_mgmt
    Copy to Clipboard Toggle word wrap

    After the installation is finished, the IPMI modules are available in the redhat.rhel_mgmt Ansible collection.

4.3. Example using the ipmi_boot module

The following example shows how to use the ipmi_boot module in a playbook to set a boot device for the next boot. For simplicity, the examples use the same host as the Ansible control host and managed host, thus executing the modules on the same host where the playbook is executed.

Prerequisites

  • The rhel_mgmt collection is installed.
  • The pyghmi library in the python3-pyghmi package is installed in one of the following locations:

    • The host where you execute the playbook.
    • The managed host. If you use localhost as the managed host, install the python3-pyghmi package on the host where you execute the playbook instead.
  • The IPMI BMC that you want to control is accessible via network from the host where you execute the playbook, or the managed host (if not using localhost as the managed host). Note that the host whose BMC is being configured by the module is generally different from the host where the module is executing (the Ansible managed host), as the module contacts the BMC over the network using the IPMI protocol.
  • You have credentials to access BMC with an appropriate level of access.

Procedure

  1. Create a new playbook.yml file with the following content:

    ---
    - name: Sets which boot device will be used on next boot
      hosts: localhost
        tasks:
        - redhat.rhel_mgmt.ipmi_boot:
           name: bmc.host.example.com
             user: admin_user
             password: basics
             bootdev: hd
    Copy to Clipboard Toggle word wrap
  2. Execute the playbook against localhost:

    # ansible-playbook playbook.yml
    Copy to Clipboard Toggle word wrap

As a result, the output returns the value “success”.

4.4. Example using the ipmi_power module

This example shows how to use the ipmi_boot module in a playbook to check if the system is turned on. For simplicity, the examples use the same host as the Ansible control host and managed host, thus executing the modules on the same host where the playbook is executed.

Prerequisites

  • The rhel_mgmt collection is installed.
  • The pyghmi library in the python3-pyghmi package is installed in one of the following locations:

    • The host where you execute the playbook.
    • The managed host. If you use localhost as the managed host, install the python3-pyghmi package on the host where you execute the playbook instead.
  • The IPMI BMC that you want to control is accessible via network from the host where you execute the playbook, or the managed host (if not using localhost as the managed host). Note that the host whose BMC is being configured by the module is generally different from the host where the module is executing (the Ansible managed host), as the module contacts the BMC over the network using the IPMI protocol.
  • You have credentials to access BMC with an appropriate level of access.

Procedure

  1. Create a new playbook.yml file with the following content:

    ---
    - name: Turn the host on
      hosts: localhost
        tasks:
        - redhat.rhel_mgmt.ipmi_power:
           name: bmc.host.example.com
             user: admin_user
             password: basics
             state: on
    Copy to Clipboard Toggle word wrap
  2. Execute the playbook:

    # ansible-playbook playbook.yml
    Copy to Clipboard Toggle word wrap

The output returns the value “true”.

Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2026 Red Hat
Retour au début