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 локально и отправляет их удалённым контроллерам вне зоны доступа для выполнения действия.
- Управляет контроллером вне зоны доступа, например, перезагрузкой, управлением журналов.
- Управляет пользователями контроллера вне зоны доступа, например, добавлением, удалением, обновлением.
- Управляет питанием системы, например, включением, выключением, плавной и принудительной перезагрузкой.
Параметры
Параметр | Комментарии |
|---|---|
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 | Режим загрузки при использовании переопределения. Варианты:
|
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 | Режим применения при сбросе к значениям по умолчанию. Варианты:
|
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, используемого в заголовке Используйте этот параметр только для исправления некорректной реализации поставщика, где Варианты:
|
timeout integer | Тайм-аут в секундах для HTTP-запросов к контроллеру OOB. Значение по умолчанию для этого параметра было изменено с По умолчанию: |
uefi_target string | Целевой загрузчик UEFI, когда bootdevice равен “UefiTarget”. |
update_apply_time string added in community.general 6.1.0 | Время применения обновления. Варианты:
|
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 |
Указывает, что изображение обрабатывается как вставленное после завершения команды. Варианты:
|
|
media_types list / elements=string |
Список типов носителей, подходящих для изображения. По умолчанию: |
|
password string |
Пароль для доступа к URL изображения. |
|
transfer_method string |
Метод передачи, который нужно использовать с изображением. |
|
transfer_protocol_type string |
Сеть протокол для использования с образом. |
|
username string |
Имя пользователя для доступа к URL-адресу изображения. |
|
write_protected boolean |
Указывает, что носитель обрабатывается как защищённый от записи. Выбор:
|
wait boolean добавлено в community.general 9.1.0 | Заблокировать до готовности службы. Выбор:
|
wait_timeout integer добавлено в community.general 9.1.0 | Время ожидания готовности службы, прежде чем отказаться. По умолчанию: |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: нет | Может работать в |
diff_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 | Сообщения с результатом действия или описанием ошибки Возвращаемое значение: всегда Пример: |
return_values dictionary добавлено в community.general 6.1.0 | Словарь, содержащий данные ответа, специфичные для команды, из действия. Возвращаемое значение: при успехе Пример: |
Ссылки на коллекцию
© 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