Конфигурация питания серверов Dell с помощью Ansible

Вопрос или проблема

Я пишу плейбук Ansible для настройки серверов Dell и не могу найти опцию “Восстановление питания AC” в “dellemc.openmanage”. Есть ли какие-либо варианты настройки восстановления питания AC в состояние ВКЛ в плейбуке Ansible? Я нашел модуль для настройки питания “redfish_powerstate”, но понял, что он будет работать только один раз (поскольку плейбук будет выполняться). Спасибо заранее

Ответ или решение

Для настройки опции "AC power recovery" на серверах Dell с использованием Ansible, действительно, можно использовать модули, которые позволяют управлять настройками через интерфейс Redfish. К сожалению, модуль dellemc.openmanage не предоставляет прямой поддержки для настройки данного параметра. Однако, вы можете достигнуть нужного результата с помощью модуля redfish_powerstate, если используете правильные запросы.

Вот пример того, как вы можете создать Ansible playbook для настройки параметра "AC power recovery":

---
- name: Настройка серверов Dell с использованием Ansible
  hosts: dell_servers
  gather_facts: no
  tasks:
    - name: Получение информации о системе
      dell.dellemc.openmanage.redfish_system_info:
        hostname: "{{ inventory_hostname }}"
        username: "{{ dell_username }}"
        password: "{{ dell_password }}"
      register: system_info

    - name: Настройка AC power recovery
      uri:
        url: "https://{{ inventory_hostname }}/redfish/v1/Managers/{{ system_info.json.ManagerID }}"
        method: PATCH
        user: "{{ dell_username }}"
        password: "{{ dell_password }}"
        validate_certs: no
        headers:
          Content-Type: "application/json"
        body: '{
          "PowerRestorePolicy": "AlwaysOn"
        }'
        body_format: json
      when: system_info is defined

    - name: Перезагрузка сервера для применения изменений
      dell.dellemc.openmanage.redfish_powerstate:
        hostname: "{{ inventory_hostname }}"
        username: "{{ dell_username }}"
        password: "{{ dell_password }}"
        state: "on"

Подробное объяснение:

  1. Получение информации о системе: Первый шаг заключается в использовании модуля dellemc.openmanage.redfish_system_info, чтобы получить информацию о сервере, включая ManagerID, который нужен для выполнения следующих запросов.

  2. Настройка AC power recovery: Второй шаг использует модуль uri для выполнения PATCH-запроса на Redfish API, чтобы изменить параметр PowerRestorePolicy на AlwaysOn. Убедитесь, что URL-адрес правильный, и что используемые учетные данные имеют необходимые разрешения для изменения настроек.

  3. Перезагрузка сервера: В последнем шаге используется модуль dellemc.openmanage.redfish_powerstate, чтобы включить сервер. Это необходимо, чтобы изменения вступили в силу, если сервер был выключен.

Примечание:

Перед выполнением playbook убедитесь, что все нужные зависимости установлены, а Ansible настроен для работы с вашими серверами Dell. Также протестируйте playbook на тестовом сервере, чтобы избежать возможных проблем на производственных системах.

Оцените материал
Добавить комментарий

Капча загружается...