Spec-Zone.ru › Ansible

community.general.redfish_command модуль — Управляет контроллерами вне зоны доступа с использованием API Redfish

Примечание

Этот модуль входит в коллекцию community.general (версия 9.5.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.general.

Для использования в книге задач укажите: community.general.redfish_command.

  • Описание
  • Параметры
  • Атрибуты
  • Примеры
  • Возвращаемые значения

Описание

  • Создаёт Redfish URI локально и отправляет их удалённым контроллерам вне зоны доступа для выполнения действия.
  • Управляет контроллером вне зоны доступа, например, перезагрузкой, управлением журналов.
  • Управляет пользователями контроллера вне зоны доступа, например, добавлением, удалением, обновлением.
  • Управляет питанием системы, например, включением, выключением, плавной и принудительной перезагрузкой.
END_OF_DOCUMENT_MARKER

Параметры

Параметр

Комментарии

account_properties

словарь

добавлен в community.general 0.2.0

Свойства службы учетной записи для обновления.

По умолчанию: {}

account_types

псевдонимы: account_accounttypes

список / элементы=строка

добавлен в community.general 7.2.0

Массив типов учетных записей, которые необходимо применить к учетной записи пользователя.

auth_token

строка

добавлен в community.general 2.3.0

Токен безопасности для аутентификации на контроллере OOB.

baseuri

строка / обязательно

Базовый URI контроллера OOB.

bios_attributes

словарь

добавлен в community.general 6.4.0

Атрибуты BIOS, которые необходимо проверить на данном сервере.

boot_next

строка

Цель BootNext, когда bootdevice — “UefiBootNext”.

boot_override_mode

строка

добавлен в community.general 3.5.0

Режим загрузки при использовании переопределения.

Варианты:

  • "Legacy"
  • "UEFI"

bootdevice

строка

Устройство загрузки при настройке конфигурации загрузки.

category

строка / обязательно

Категория для выполнения на контроллере OOB.

ciphers

список / элементы=строка

добавлен в community.general 9.2.0

Шифры SSL/TLS для использования в запросе.

При предоставлении списка все шифры соединяются в порядке с помощью :.

Для получения дополнительной информации см. Формат списка шифров OpenSSL.

Доступные шифры зависят от версий Python и OpenSSL/LibreSSL.

command

список / элементы=строка / обязательно

Список команд для выполнения на контроллере OOB.

id

псевдонимы: account_id

строка

ID учетной записи для удаления/изменения.

Также может использоваться при создании учетной записи для решения проблем поставщика, когда ID нового пользователя требуется в запросе POST.

new_password

псевдонимы: account_password

строка

Новый пароль учетной записи для добавления/изменения.

new_username

псевдонимы: account_username

строка

Имя пользователя учетной записи для добавления/удаления/изменения.

oem_account_types

псевдонимы: account_oemaccounttypes

список / элементы=строка

добавлен в community.general 7.2.0

Массив типов OEM учетных записей для применения к учетной записи пользователя.

password

строка

Пароль для аутентификации на контроллере OOB.

reset_to_defaults_mode

строка

добавлен в community.general 8.6.0

Режим применения при сбросе к значениям по умолчанию.

Варианты:

  • "ResetAll"
  • "PreserveNetworkAndUsers"
  • "PreserveNetwork"

resource_id

строка

добавлен в community.general 0.2.0

ID системы, менеджера или шасси для изменения.

roleid

псевдонимы: account_roleid

строка

Роль учетной записи для добавления/изменения.

session_uri

строка

добавлен в community.general 2.3.0

URI ресурса сессии.

strip_etag_quotes

boolean

added in community.general 3.7.0

Удаляет окружающие кавычки тега etag, используемого в заголовке If-Match запросов PATCH.

Используйте этот параметр только для исправления некорректной реализации поставщика, где If-Match соответствует только строке тега etag без кавычек.

Варианты:

  • false ← (по умолчанию)
  • true

timeout

integer

Тайм-аут в секундах для HTTP-запросов к контроллеру OOB.

Значение по умолчанию для этого параметра было изменено с 10 на 60 в community.general 9.0.0.

По умолчанию: 60

uefi_target

string

Целевой загрузчик UEFI, когда bootdevice равен “UefiTarget”.

update_apply_time

string

added in community.general 6.1.0

Время применения обновления.

Варианты:

  • "Immediate"
  • "OnReset"
  • "AtMaintenanceWindowStart"
  • "InMaintenanceWindowOnReset"
  • "OnStartUpdateRequest"

update_creds

dictionary

added in community.general 0.2.0

Данные для получения образа обновления.

password

string

Пароль для получения образа обновления.

username

string

Имя пользователя для получения образа обновления.

update_handle

string

added in community.general 6.1.0

Идентификатор для проверки статуса текущего обновления.

update_image_file

path

added in community.general 7.1.0

Имя файла образа с необязательным путем.

update_image_uri

string

added in community.general 0.2.0

URI образа для обновления.

update_oem_params

dictionary

added in community.general 7.5.0

Свойства для HTTP-обновлений с помощью Multipart Push.

update_protocol

string

added in community.general 0.2.0

Протокол для обновления.

update_targets

list / elements=string

added in community.general 0.2.0

Список URI целевых ресурсов для применения обновления.

По умолчанию: []

update_username

aliases: account_updatename

string

added in community.general 0.2.0

Новое имя пользователя для обновления account_username.

username

string

Имя пользователя для аутентификации на контроллере OOB.

virtual_media

dictionary

added in community.general 0.2.0

Параметры для команд VirtualMedia.

image_url

string

URL изображения для вставки или извлечения.

inserted

boolean

Указывает, что изображение обрабатывается как вставленное после завершения команды.

Варианты:

  • false
  • true ← (по умолчанию)

media_types

list / elements=string

Список типов носителей, подходящих для изображения.

По умолчанию: []

password

string

Пароль для доступа к URL изображения.

transfer_method

string

Метод передачи, который нужно использовать с изображением.

END_OF_DOCUMENT_MARKER

transfer_protocol_type

string

Сеть протокол для использования с образом.

username

string

Имя пользователя для доступа к URL-адресу изображения.

write_protected

boolean

Указывает, что носитель обрабатывается как защищённый от записи.

Выбор:

  • false
  • true ← (по умолчанию)

wait

boolean

добавлено в community.general 9.1.0

Заблокировать до готовности службы.

Выбор:

  • false ← (по умолчанию)
  • true

wait_timeout

integer

добавлено в community.general 9.1.0

Время ожидания готовности службы, прежде чем отказаться.

По умолчанию: 120

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: нет

Может работать в check_mode и возвращать прогноз о статусе изменений без изменения целевого объекта.

diff_mode

Поддержка: нет

Вернёт детали изменений (или, возможно, требующих изменения в check_mode), когда режим отличается.

Примеры

- name: Restart system power gracefully
  community.general.redfish_command:
    category: Systems
    command: PowerGracefulRestart
    resource_id: 437XR1138R2
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Turn system power off
  community.general.redfish_command:
    category: Systems
    command: PowerForceOff
    resource_id: 437XR1138R2

- name: Restart system power forcefully
  community.general.redfish_command:
    category: Systems
    command: PowerForceRestart
    resource_id: 437XR1138R2

- name: Shutdown system power gracefully
  community.general.redfish_command:
    category: Systems
    command: PowerGracefulShutdown
    resource_id: 437XR1138R2

- name: Turn system power on
  community.general.redfish_command:
    category: Systems
    command: PowerOn
    resource_id: 437XR1138R2

- name: Reboot system power
  community.general.redfish_command:
    category: Systems
    command: PowerReboot
    resource_id: 437XR1138R2

- name: Set one-time boot device to {{ bootdevice }}
  community.general.redfish_command:
    category: Systems
    command: SetOneTimeBoot
    resource_id: 437XR1138R2
    bootdevice: "{{ bootdevice }}"
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Set one-time boot device to UefiTarget of "/0x31/0x33/0x01/0x01"
  community.general.redfish_command:
    category: Systems
    command: SetOneTimeBoot
    resource_id: 437XR1138R2
    bootdevice: "UefiTarget"
    uefi_target: "/0x31/0x33/0x01/0x01"
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Set one-time boot device to BootNext target of "Boot0001"
  community.general.redfish_command:
    category: Systems
    command: SetOneTimeBoot
    resource_id: 437XR1138R2
    bootdevice: "UefiBootNext"
    boot_next: "Boot0001"
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Set persistent boot device override
  community.general.redfish_command:
    category: Systems
    command: EnableContinuousBootOverride
    resource_id: 437XR1138R2
    bootdevice: "{{ bootdevice }}"
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Set one-time boot to BiosSetup
  community.general.redfish_command:
    category: Systems
    command: SetOneTimeBoot
    boot_next: BiosSetup
    boot_override_mode: Legacy
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Disable persistent boot device override
  community.general.redfish_command:
    category: Systems
    command: DisableBootOverride

- name: Set system indicator LED to blink using security token for auth
  community.general.redfish_command:
    category: Systems
    command: IndicatorLedBlink
    resource_id: 437XR1138R2
    baseuri: "{{ baseuri }}"
    auth_token: "{{ result.session.token }}"

- name: Add user
  community.general.redfish_command:
    category: Accounts
    command: AddUser
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    new_username: "{{ new_username }}"
    new_password: "{{ new_password }}"
    roleid: "{{ roleid }}"

- name: Add user with specified account types
  community.general.redfish_command:
    category: Accounts
    command: AddUser
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    new_username: "{{ new_username }}"
    new_password: "{{ new_password }}"
    roleid: "{{ roleid }}"
    account_types:
    - Redfish
    - WebUI

- name: Add user using new option aliases
  community.general.redfish_command:
    category: Accounts
    command: AddUser
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"
    account_password: "{{ account_password }}"
    account_roleid: "{{ account_roleid }}"

- name: Delete user
  community.general.redfish_command:
    category: Accounts
    command: DeleteUser
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"

- name: Disable user
  community.general.redfish_command:
    category: Accounts
    command: DisableUser
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"

- name: Enable user
  community.general.redfish_command:
    category: Accounts
    command: EnableUser
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"

- name: Add and enable user
  community.general.redfish_command:
    category: Accounts
    command: AddUser,EnableUser
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    new_username: "{{ new_username }}"
    new_password: "{{ new_password }}"
    roleid: "{{ roleid }}"

- name: Update user password
  community.general.redfish_command:
    category: Accounts
    command: UpdateUserPassword
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"
    account_password: "{{ account_password }}"

- name: Update user role
  community.general.redfish_command:
    category: Accounts
    command: UpdateUserRole
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"
    roleid: "{{ roleid }}"

- name: Update user name
  community.general.redfish_command:
    category: Accounts
    command: UpdateUserName
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"
    account_updatename: "{{ account_updatename }}"

- name: Update user name
  community.general.redfish_command:
    category: Accounts
    command: UpdateUserName
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_username: "{{ account_username }}"
    update_username: "{{ update_username }}"

- name: Update AccountService properties
  community.general.redfish_command:
    category: Accounts
    command: UpdateAccountServiceProperties
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    account_properties:
      AccountLockoutThreshold: 5
      AccountLockoutDuration: 600

- name: Clear Manager Logs with a timeout of 20 seconds
  community.general.redfish_command:
    category: Manager
    command: ClearLogs
    resource_id: BMC
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    timeout: 20

- name: Create session
  community.general.redfish_command:
    category: Sessions
    command: CreateSession
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
  register: result

- name: Set chassis indicator LED to blink using security token for auth
  community.general.redfish_command:
    category: Chassis
    command: IndicatorLedBlink
    resource_id: 1U
    baseuri: "{{ baseuri }}"
    auth_token: "{{ result.session.token }}"

- name: Delete session using security token created by CreateSesssion above
  community.general.redfish_command:
    category: Sessions
    command: DeleteSession
    baseuri: "{{ baseuri }}"
    auth_token: "{{ result.session.token }}"
    session_uri: "{{ result.session.uri }}"

- name: Clear Sessions
  community.general.redfish_command:
    category: Sessions
    command: ClearSessions
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Simple update
  community.general.redfish_command:
    category: Update
    command: SimpleUpdate
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    update_image_uri: https://example.com/myupdate.img

- name: Simple update with additional options
  community.general.redfish_command:
    category: Update
    command: SimpleUpdate
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    update_image_uri: //example.com/myupdate.img
    update_protocol: FTP
    update_targets:
      - /redfish/v1/UpdateService/FirmwareInventory/BMC
    update_creds:
      username: operator
      password: supersecretpwd

- name: Multipart HTTP push update; timeout is 600 seconds to allow for a
    large image transfer
  community.general.redfish_command:
    category: Update
    command: MultipartHTTPPushUpdate
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    timeout: 600
    update_image_file: ~/images/myupdate.img

- name: Multipart HTTP push with additional options; timeout is 600 seconds
    to allow for a large image transfer
  community.general.redfish_command:
    category: Update
    command: MultipartHTTPPushUpdate
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    timeout: 600
    update_image_file: ~/images/myupdate.img
    update_targets:
      - /redfish/v1/UpdateService/FirmwareInventory/BMC
    update_oem_params:
      PreserveConfiguration: false

- name: Perform requested operations to continue the update
  community.general.redfish_command:
    category: Update
    command: PerformRequestedOperations
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    update_handle: /redfish/v1/TaskService/TaskMonitors/735

- name: Insert Virtual Media
  community.general.redfish_command:
    category: Systems
    command: VirtualMediaInsert
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    virtual_media:
      image_url: 'http://example.com/images/SomeLinux-current.iso'
      media_types:
        - CD
        - DVD
    resource_id: 1

- name: Insert Virtual Media
  community.general.redfish_command:
    category: Manager
    command: VirtualMediaInsert
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    virtual_media:
      image_url: 'http://example.com/images/SomeLinux-current.iso'
      media_types:
        - CD
        - DVD
    resource_id: BMC

- name: Eject Virtual Media
  community.general.redfish_command:
    category: Systems
    command: VirtualMediaEject
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    virtual_media:
      image_url: 'http://example.com/images/SomeLinux-current.iso'
    resource_id: 1

- name: Eject Virtual Media
  community.general.redfish_command:
    category: Manager
    command: VirtualMediaEject
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    virtual_media:
      image_url: 'http://example.com/images/SomeLinux-current.iso'
    resource_id: BMC

- name: Restart manager power gracefully
  community.general.redfish_command:
    category: Manager
    command: GracefulRestart
    resource_id: BMC
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"

- name: Restart manager power gracefully and wait for it to be available
  community.general.redfish_command:
    category: Manager
    command: GracefulRestart
    resource_id: BMC
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    wait: True

- name: Restart manager power gracefully
  community.general.redfish_command:
    category: Manager
    command: PowerGracefulRestart
    resource_id: BMC

- name: Turn manager power off
  community.general.redfish_command:
    category: Manager
    command: PowerForceOff
    resource_id: BMC

- name: Restart manager power forcefully
  community.general.redfish_command:
    category: Manager
    command: PowerForceRestart
    resource_id: BMC

- name: Shutdown manager power gracefully
  community.general.redfish_command:
    category: Manager
    command: PowerGracefulShutdown
    resource_id: BMC

- name: Turn manager power on
  community.general.redfish_command:
    category: Manager
    command: PowerOn
    resource_id: BMC

- name: Reboot manager power
  community.general.redfish_command:
    category: Manager
    command: PowerReboot
    resource_id: BMC

- name: Factory reset manager to defaults
  community.general.redfish_command:
    category: Manager
    command: ResetToDefaults
    resource_id: BMC
    reset_to_defaults_mode: ResetAll

- name: Verify BIOS attributes
  community.general.redfish_command:
    category: Systems
    command: VerifyBiosAttributes
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    bios_attributes:
      SubNumaClustering: "Disabled"
      WorkloadProfile: "Virtualization-MaxPerformance"

Значения возврата

Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:

Ключ

Описание

msg

string

Сообщения с результатом действия или описанием ошибки

Возвращаемое значение: всегда

Пример: "Action was successful"

return_values

dictionary

добавлено в community.general 6.1.0

Словарь, содержащий данные ответа, специфичные для команды, из действия.

Возвращаемое значение: при успехе

Пример: {"update_status": {"handle": "/redfish/v1/TaskService/TaskMonitors/735", "messages": [], "resets_requested": [], "ret": true, "status": "New"}}

Авторы

  • Jose Delarosa (@jose-delarosa)
  • T S Kushal (@TSKushal)

Ссылки на коллекцию

  • Система отслеживания задач
  • Репозиторий (источники)
  • Задать вопрос
  • Отправить отчет об ошибке
  • Запросить новую функцию
  • Общение

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/redfish_command_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API