Модуль community.general.xcc_redfish_command — управление контроллерами Lenovo Out-Of-Band с помощью API Redfish
Примечание
Этот модуль входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните команду ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general.
Чтобы использовать её в плейбуке, укажите: community.general.xcc_redfish_command.
Добавлено в community.general 2.4.0
Краткое описание
- Формирует URI Redfish локально и отправляет их удалённым контроллерам OOB для выполнения действия, получения информации или обновления атрибута конфигурации.
- Управляет виртуальными носителями.
- Поддерживает получение информации с помощью метода GET.
- Поддерживает обновление атрибута конфигурации с помощью метода PATCH.
- Поддерживает выполнение действия с помощью метода POST.
Параметры
Параметр | Комментарии |
|---|---|
auth_token string | Токен безопасности для аутентификации на контроллере OOB. |
baseuri string / обязательный | Базовый URI контроллера OOB. |
ca_path path добавлено в community.general 10.6.0 | Файл в формате PEM, содержащий сертификат CA для проверки. Используется только при условии |
category string / обязательный | Категория для выполнения на контроллере OOB. |
ciphers list / элементы=string добавлено в community.general 10.6.0 | Шифры TLS/SSL, используемые для запроса. Если указан список, все шифры объединяются по порядку с помощью Подробнее см. в разделе Формат списка шифров OpenSSL. Доступные шифры зависят от версий Python и OpenSSL/LibreSSL. |
command list / элементы=string / обязательный | Список команд для выполнения на контроллере OOB. |
password string | Пароль для аутентификации на контроллере OOB. |
request_body dictionary | Тело запроса для PATCH или POST. |
resource_id string | Идентификатор System, Manager или Chassis, который нужно изменить. |
resource_uri string | URI ресурса для получения, PATCH или POST. |
timeout integer | Время ожидания в секундах для запросов URL к контроллеру OOB. По умолчанию: |
username string | Имя пользователя для аутентификации на контроллере OOB. |
validate_certs boolean добавлено в community.general 10.6.0 | Если Установите значение Варианты:
|
virtual_media dictionary | Параметры команд VirtualMedia. |
|
image_url string |
URL образа для подключения или извлечения. |
|
inserted boolean |
Указывает, считается ли образ подключённым после завершения команды. Варианты:
|
|
media_types list / элементы=string |
Список типов носителей, подходящих для образа. По умолчанию: |
|
password string |
Пароль для доступа к URL образа. |
|
transfer_method string |
Метод передачи, используемый для образа. |
|
transfer_protocol_type string |
Сетевой протокол, используемый для образа. |
|
username string |
Имя пользователя для доступа к URL образа. |
|
write_protected boolean |
Указывает, считается ли носитель защищённым от записи. Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: нет | Может работать в режиме |
diff_mode | Поддержка: нет | В режиме diff возвращает сведения о том, что изменилось (или, возможно, требует изменения в |
Примеры
- name: Insert Virtual Media
community.general.xcc_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: "1"
- name: Eject Virtual Media
community.general.xcc_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: "1"
- name: Eject all Virtual Media
community.general.xcc_redfish_command:
category: Manager
command: VirtualMediaEject
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
resource_id: "1"
- name: Get ComputeSystem Oem property SystemStatus via GetResource command
community.general.xcc_redfish_command:
category: Raw
command: GetResource
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
resource_uri: "/redfish/v1/Systems/1"
register: result
- ansible.builtin.debug:
msg: "{{ result.redfish_facts.data.Oem.Lenovo.SystemStatus }}"
- name: Get Oem DNS setting via GetResource command
community.general.xcc_redfish_command:
category: Raw
command: GetResource
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
resource_uri: "/redfish/v1/Managers/1/NetworkProtocol/Oem/Lenovo/DNS"
register: result
- name: Print fetched information
ansible.builtin.debug:
msg: "{{ result.redfish_facts.data }}"
- name: Get Lenovo FoD key collection resource via GetCollectionResource command
community.general.xcc_redfish_command:
category: Raw
command: GetCollectionResource
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
resource_uri: "/redfish/v1/Managers/1/Oem/Lenovo/FoD/Keys"
register: result
- name: Print fetched information
ansible.builtin.debug:
msg: "{{ result.redfish_facts.data_list }}"
- name: Update ComputeSystem property AssetTag via PatchResource command
community.general.xcc_redfish_command:
category: Raw
command: PatchResource
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
resource_uri: "/redfish/v1/Systems/1"
request_body:
AssetTag: "new_asset_tag"
- name: Perform BootToBIOSSetup action via PostResource command
community.general.xcc_redfish_command:
category: Raw
command: PostResource
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
resource_uri: "/redfish/v1/Systems/1/Actions/Oem/LenovoComputerSystem.BootToBIOSSetup"
request_body: {}
- name: Perform SecureBoot.ResetKeys action via PostResource command
community.general.xcc_redfish_command:
category: Raw
command: PostResource
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
resource_uri: "/redfish/v1/Systems/1/SecureBoot/Actions/SecureBoot.ResetKeys"
request_body:
ResetKeysType: DeleteAllKeys
- name: Create session
community.general.redfish_command:
category: Sessions
command: CreateSession
baseuri: "{{ baseuri }}"
username: "{{ username }}"
password: "{{ password }}"
register: result
- name: Update Manager DateTimeLocalOffset property using security token for auth
community.general.xcc_redfish_command:
category: Raw
command: PatchResource
baseuri: "{{ baseuri }}"
auth_token: "{{ result.session.token }}"
resource_uri: "/redfish/v1/Managers/1"
request_body:
DateTimeLocalOffset: "+08:00"
- 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 }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
msg string | Сообщение, связанное с выполненным действием или действиями. Возвращается: при ошибке или успешном выполнении действия/обновления Пример: |
redfish_facts dictionary | Содержимое ресурса. Возвращается: если command == GetResource или command == GetCollectionResource Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/xcc_redfish_command_module.html