Spec-Zone.ru › Ansible

модуль dellemc.openmanage.idrac_redfish_storage_controller — настройка физических дисков, виртуальных дисков и контроллера хранения

Примечание

Этот модуль входит в коллекцию dellemc.openmanage (версия 10.0.2).

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

Для установки используйте: ansible-galaxy collection install dellemc.openmanage. Для работы с этим модулем необходимы дополнительные требования; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: dellemc.openmanage.idrac_redfish_storage_controller.

Добавлено в dellemc.openmanage 2.1.0

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Этот модуль позволяет пользователям настраивать параметры физических дисков, виртуальных дисков и контроллера хранения.

Требования

На хосте, выполняющем этот модуль, должны быть соблюдены следующие требования.

  • python >= 3.9.6

Параметры

Параметр

Комментарии

apply_time

string

Время применения атрибутов.

Применяется только к атрибутам.

Immediate Позволяет пользователю немедленно перезагрузить хост и применить изменения. Применяется параметр job_wait.

OnReset Позволяет пользователю применить изменения при следующей перезагрузке хост-сервера.

AtMaintenanceWindowStart Позволяет применить изменения в начале окна обслуживания, указанного в maintenance_window.

InMaintenanceWindowOnReset Позволяет применить изменения после перезагрузки вручную, но в пределах окна обслуживания, указанного в maintenance_window.

Для 17G поддерживаются только Immediate и OnReset.

Варианты:

  • "Immediate" ← (по умолчанию)
  • "OnReset"
  • "AtMaintenanceWindowStart"
  • "InMaintenanceWindowOnReset"

attributes

dictionary

Словарь пар «атрибут контроллера — значение».

Эта функция поддерживается только в iDRAC9 с версией микропрограммы 6.00.00.00 и выше.

Для этой операции требуется controller_id.

Параметры apply_time и maintenance_window применяются к attributes.

attributes и command являются взаимоисключающими.

Список атрибутов см. по адресу https://I(idrac_ip/redfish/v1/Schemas/DellOemStorageController.json).

Для iDRAC 10 поддерживаются параметры BackgroundInitializationRatePercent и ReconstructRatePercent.

baseuri

string / обязательный

IP-адрес целевого контроллера внеполосного управления. Например: <ipaddress>:<port>.

ca_path

path

добавлено в dellemc.openmanage 5.0.0

Файл Privacy Enhanced Mail (PEM), содержащий сертификат ЦС для проверки.

command

string

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

ResetConfig — удаляет все виртуальные диски и снимает назначение всех горячих резервов на физических дисках. Для этой операции требуется controller_id.

AssignSpare — назначает физический диск выделенным или глобальным горячим резервом для виртуального диска. Для этой операции требуется target.

SetControllerKey — задает ключ на контроллерах, который используется для шифрования дисков при локальном управлении ключами (LKM). Для этой операции требуются controller_id, key и key_id.

RemoveControllerKey — удаляет ключ шифрования на контроллере. Для этой операции требуется controller_id.

ReKey — сбрасывает ключ на контроллере; при включенном режиме проверки всегда сообщает об обнаруженных изменениях. Для этой операции требуются controller_id, old_key, key_id и key.

UnassignSpare — снимает назначение глобального или выделенного горячего резерва. Для этой операции требуется target.

EnableControllerEncryption — включает локальное управление ключами (LKM) или защищенный корпоративный диспетчер ключей (SEKM) на контроллерах, поддерживающих шифрование дисков. Для этой операции требуются controller_id, key и key_id.

BlinkTarget — включает индикатор целевого виртуального диска или физического диска; при включенном режиме проверки всегда сообщает об обнаруженных изменениях. Для этой операции требуется target или volume_id.

UnBlinkTarget — выключает индикатор целевого виртуального диска или физического диска; при включенном режиме проверки всегда сообщает об обнаруженных изменениях. Для этой операции требуется target или volume_id.

ConvertToRAID — преобразует диск из режима non-Raid в Raid. Для этой операции требуется target.

ConvertToNonRAID — преобразует диск из режима Raid в non-Raid. Для этой операции требуется target.

ChangePDStateToOnline — переводит диск в состояние «в сети». Для этой операции требуется target.

ChangePDStateToOffline — переводит диск в состояние «не в сети». Для этой операции требуется target.

LockVirtualDisk — шифрует виртуальный диск. Для этой операции требуется volume_id.

OnlineCapacityExpansion — увеличивает размер виртуального диска. Для этой операции требуются volume_id и target или size.

SecureErase — безопасно удаляет все данные с физического диска. Этот параметр доступен для дисков с самошифрованием (SED), дисков с мгновенным стиранием (ISE) и устройств PCIe SSD (дисков и карт). Диски должны быть в состоянии готовности. Для этой операции требуются controller_id и target; target должен указывать на один физический диск. Если для безопасного стирания требуется перезагрузка, задание будет запланировано и будет ожидать указанное в job_wait_time количество секунд. Чтобы сократить время ожидания, задайте минимальное значение job_wait_time или установите для job_wait значение false.

EnableSecurity — включает безопасность на контроллере хранения. Применимо только для 17G и новее.

DisableSecurity — отключает безопасность на контроллере хранения. Применимо только для 17G и новее.

SetControllerKey, RemoveControllerKey, ReKey и EnableControllerEncryption поддерживаются только для 16G и более ранних поколений.

Для 17G и новее мигание индикатора виртуального диска не поддерживается.

Варианты:

  • "ResetConfig"
  • "AssignSpare"
  • "SetControllerKey"
  • "RemoveControllerKey"
  • "ReKey"
  • "UnassignSpare"
  • "EnableControllerEncryption"
  • "BlinkTarget"
  • "UnBlinkTarget"
  • "ConvertToRAID"
  • "ConvertToNonRAID"
  • "ChangePDStateToOnline"
  • "ChangePDStateToOffline"
  • "LockVirtualDisk"
  • "OnlineCapacityExpansion"
  • "SecureErase"
  • "EnableSecurity"
  • "DisableSecurity"

controller_id

string

Полный дескриптор устройства (FQDD) контроллера хранения. Например, «RAID.Slot.1-1».

Этот параметр обязателен, если значение command — ResetConfig, SetControllerKey, RemoveControllerKey, ReKey или EnableControllerEncryption.

Этот параметр обязателен для attributes.

job_wait

boolean

Определяет, должен ли модуль ожидать завершения задания.

Применяется для attributes, если apply_time имеет значение Immediate, а также если command имеет значение SecureErase.

Варианты:

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

job_wait_timeout

integer

Максимальное время ожидания завершения задания в секундах, после которого отслеживание задания прекращается.

Этот параметр применяется, если job_wait имеет значение true.

Примечание: если значение command — SecureErase и для безопасного стирания требуется перезагрузка, задание будет запланировано и будет ожидать указанное в job_wait_time количество секунд. Чтобы сократить время ожидания, задайте для job_wait_time меньшее значение или установите для job_wait значение false.

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

key

string

Новая парольная фраза ключа безопасности, которую контроллер с поддержкой шифрования использует для создания ключа шифрования. Контроллер использует ключ шифрования, чтобы блокировать или разблокировать доступ к диску с самошифрованием (SED). Для каждого контроллера можно создать только один ключ шифрования.

Этот параметр обязателен, если значение command — SetControllerKey, ReKey или EnableControllerEncryption, а значение mode — LKM.

Длина ключа не должна превышать 32 символа; развернутая форма специального символа считается одним символом.

Ключ должен содержать как минимум по одному символу каждого класса: заглавную букву, строчную букву, цифру и специальный символ.

key_id

string

Текстовая метка, заданная пользователем и связанная с парольной фразой.

Этот параметр обязателен, если значение command — SetControllerKey, ReKey или EnableControllerEncryption, а значение mode — LKM.

Длина key_id не должна превышать 32 символа; пробелы не допускаются.

maintenance_window

dictionary

Параметр для планирования окна обслуживания.

Обязателен, если значение apply_time — AtMaintenanceWindowStart или InMaintenanceWindowOnReset.

duration

integer

Продолжительность окна обслуживания в секундах.

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

start_time

string / обязательный

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

Формат: YYYY-MM-DDThh:mm:ss<offset>

<offset> — смещение текущего часового пояса, заданного в iDRAC, относительно UTC в формате +05:30 для IST.

mode

string

Режим шифрования контроллера с поддержкой шифрования.

Этот параметр применяется только, если значение command — ReKey или EnableControllerEncryption.

Для SEKM требуется лицензия на защищенный корпоративный диспетчер ключей в iDRAC.

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

Варианты:

  • "LKM" ← (по умолчанию)
  • "SEKM"

old_key

string

Парольная фраза ключа безопасности, используемая контроллером с поддержкой шифрования.

Этот параметр обязателен, если значение command — ReKey, а значение mode — LKM.

password

string

Пароль целевого контроллера внеполосного управления.

Если пароль не указан, используется переменная среды IDRAC_PASSWORD.

Пример: export IDRAC_PASSWORD=password

size

integer

Емкость виртуального диска, которую необходимо увеличить, в МБ.

Для size не поддерживаются режим проверки и идемпотентность.

Минимальное увеличение емкости в сети должно превышать текущий размер на 100 МБ.

Если значение command — OnlineCapacityExpansion, параметры size и target являются взаимоисключающими.

target

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

list / элементы=string

Полный дескриптор устройства (FQDD) целевого физического диска.

Этот параметр обязателен, если значение command — AssignSpare, UnassisgnSpare, ChangePDStateToOnline, ChangePDStateToOffline, ConvertToRAID или ConvertToNonRAID.

Если volume_id не указан или пуст, этот физический диск будет назначен глобальным горячим резервом, если значение command — AssignSpare.

Если значение command — OnlineCapacityExpansion, параметры target и size являются взаимоисключающими.

Примечания: физическому диску можно назначить глобальный или выделенный горячий резерв только один раз; повторное назначение невозможно, если значение command — AssignSpare.

timeout

integer

добавлено в dellemc.openmanage 5.0.0

Тайм-аут на уровне сокета в секундах.

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

username

string

Имя пользователя целевого контроллера внеполосного управления.

Если имя пользователя не указано, используется переменная среды IDRAC_USERNAME.

Пример: export IDRAC_USERNAME=username

validate_certs

boolean

добавлено в dellemc.openmanage 5.0.0

Если задано значение false, SSL-сертификаты не проверяются.

Используйте false только в контролируемых вами средах, где применяются самоподписанные сертификаты.

До версии коллекции 5.0.0 параметр validate_certs по умолчанию имел значение false.

Варианты:

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

volume_id

list / элементы=string

Полный дескриптор устройства (FQDD) тома.

Применяется, если значение command — AssignSpare, BlinkTarget, UnBlinkTarget или LockVirtualDisk.

Если значение command — BlinkTarget или UnBlinkTarget, необходимо указать volume_id или target. Если указаны оба параметра, учитывается target.

Сведения о количестве томов, которым можно назначить горячий резерв, см. в документации iDRAC Redfish API.

x_auth_token

string

добавлено в dellemc.openmanage 9.3.0

Токен аутентификации.

Если x_auth_token не указан, используется переменная среды IDRAC_X_AUTH_TOKEN.

Пример: export IDRAC_X_AUTH_TOKEN=x_auth_token

Примечания

Примечание

  • Запускайте этот модуль в системе, имеющей прямой доступ к Dell iDRAC.
  • Этот модуль поддерживается в iDRAC9 и iDRAC 10.
  • Этот модуль поддерживает адреса IPv4 и IPv6.
  • Если значение command — ReKey, BlinkTarget или UnBlinkTarget, модуль всегда сообщает об обнаруженных изменениях.
  • Этот модуль поддерживает check_mode.

Примеры

---
- name: Assign dedicated hot spare
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    volume_id:
      - "Disk.Virtual.0:RAID.Slot.1-1"
    target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - assign_dedicated_hot_spare

- name: Assign global hot spare
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - assign_global_hot_spare

- name: Unassign hot spare
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1"
    command: UnassignSpare
  tags:
    - un-assign-hot-spare

- name: Set controller encryption key
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "SetControllerKey"
    controller_id: "RAID.Slot.1-1"
    key: "PassPhrase@123"
    key_id: "mykeyid123"
  tags:
    - set_controller_key

- name: Rekey in LKM mode
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "ReKey"
    controller_id: "RAID.Slot.1-1"
    key: "NewPassPhrase@123"
    key_id: "newkeyid123"
    old_key: "OldPassPhrase@123"
  tags:
    - rekey_lkm

- name: Rekey in SEKM mode
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "ReKey"
    controller_id: "RAID.Slot.1-1"
    mode: "SEKM"
  tags:
    - rekey_sekm

- name: Remove controller key
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "RemoveControllerKey"
    controller_id: "RAID.Slot.1-1"
  tags:
    - remove_controller_key

- name: Reset controller configuration
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "ResetConfig"
    controller_id: "RAID.Slot.1-1"
  tags:
    - reset_config

- name: Enable controller encryption
  idrac_redfish_storage_controller:
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    ca_path: "/path/to/ca_cert.pem"
    command: "EnableControllerEncryption"
    controller_id: "RAID.Slot.1-1"
    mode: "LKM"
    key: "your_Key@123"
    key_id: "your_Keyid@123"
  tags:
    - enable-encrypt

- name: Blink physical disk.
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: BlinkTarget
    target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - blink-target

- name: Blink virtual drive.
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: BlinkTarget
    volume_id: "Disk.Virtual.0:RAID.Slot.1-1"
  tags:
    - blink-volume

- name: Unblink physical disk.
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: UnBlinkTarget
    target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - unblink-target

- name: Unblink virtual drive.
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: UnBlinkTarget
    volume_id: "Disk.Virtual.0:RAID.Slot.1-1"
  tags:
    - unblink-drive

- name: Convert physical disk to RAID
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "ConvertToRAID"
    target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - convert-raid

- name: Convert physical disk to non-RAID
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "ConvertToNonRAID"
    target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - convert-non-raid

- name: Change physical disk state to online.
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "ChangePDStateToOnline"
    target: "Disk.Bay.1:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - pd-state-online

- name: Change physical disk state to offline.
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "ChangePDStateToOnline"
    target: "Disk.Bay.1:Enclosure.Internal.0-1:RAID.Slot.1-1"
  tags:
    - pd-state-offline

- name: Lock virtual drive
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: "LockVirtualDisk"
    volume_id: "Disk.Virtual.0:RAID.SL.3-1"
  tags:
    - lock

- name: Online Capacity Expansion of a volume using target
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    ca_path: "/path/to/ca_cert.pem"
    command: "OnlineCapacityExpansion"
    volume_id: "Disk.Virtual.0:RAID.Integrated.1-1"
    target:
      - "Disk.Bay.2:Enclosure.Internal.0-0:RAID.Integrated.1-1"
  tags:
    - oce_target

- name: Online Capacity Expansion of a volume using size
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    ca_path: "/path/to/ca_cert.pem"
    command: "OnlineCapacityExpansion"
    volume_id: "Disk.Virtual.0:RAID.Integrated.1-1"
    size: 362785
  tags:
    - oce_size

- name: Set controller attributes.
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    controller_id: "RAID.Slot.1-1"
    attributes:
      ControllerMode: "HBA"
    apply_time: "OnReset"
  tags:
    - controller-attribute

- name: Configure controller attributes at Maintenance window
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    controller_id: "RAID.Slot.1-1"
    attributes:
      CheckConsistencyMode: Normal
      CopybackMode: "Off"
      LoadBalanceMode: Disabled
    apply_time: AtMaintenanceWindowStart
    maintenance_window:
      start_time: "2022-09-30T05:15:40-05:00"
      duration: 1200

- name: Perform Secure Erase operation on SED drive
  dellemc.openmanage.idrac_redfish_storage_controller:
    baseuri: "192.168.0.1:443"
    username: "user_name"
    password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    controller_id: "RAID.Slot.1-1"
    command: "SecureErase"
    target: "Disk.Bay.1:Enclosure.Internal.0-1:RAID.Slot.1-1"

Возвращаемые значения

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

Ключ

Описание

error_info

dictionary

Сведения об ошибке HTTP.

Возвращается: при ошибке HTTP

Пример: {"error": {"@Message.ExtendedInfo": [{"Message": "Unable to run the method because the requested HTTP method is not allowed.", "MessageArgs": [], "MessageArgs@odata.count": 0, "MessageId": "iDRAC.1.6.SYS402", "RelatedProperties": [], "RelatedProperties@odata.count": 0, "Resolution": "Enter a valid HTTP method and retry the operation. For information about valid methods, see the Redfish Users Guide available on the support site.", "Severity": "Informational"}], "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information"}}

msg

string

Общий статус операции настройки контроллера хранения.

Возвращается: всегда

Пример: "Successfully submitted the job that performs the AssignSpare operation"

status

dictionary

Статус отправленного задания.

Возвращается: всегда

Пример: {"ActualRunningStartTime": "2022-02-09T04:42:41", "ActualRunningStopTime": "2022-02-09T04:44:00", "CompletionTime": "2022-02-09T04:44:00", "Description": "Job Instance", "EndTime": "TIME_NA", "Id": "JID_444033604418", "JobState": "Completed", "JobType": "RealTimeNoRebootConfiguration", "Message": "Job completed successfully.", "MessageArgs": [], "MessageId": "PR19", "Name": "Configure: RAID.Integrated.1-1", "PercentComplete": 100, "StartTime": "2022-02-09T04:42:40", "TargetSettingsURI": null}

task

dictionary

Идентификатор и URI-ресурс созданного задания.

Возвращается: при успешном выполнении

Пример: {"id": "JID_XXXXXXXXXXXXX", "uri": "/redfish/v1/Managers/iDRAC.Embedded.1/Oem/Dell/Jobs/JID_XXXXXXXXXXXXX"}

Авторы

  • Jagadeesh N V (@jagadeeshnv)
  • Felix Stephen (@felixs88)
  • Husniya Hameed (@husniya_hameed)
  • Abhishek Sinha (@ABHISHEK-SINHA10)
  • Shivam Sharma (@ShivamSh3)
  • Trisha Datta (@trisha-dell)

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

  • Отслеживание проблем
  • Домашняя страница
  • Репозиторий (исходный код)

© 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/dellemc/openmanage/idrac_redfish_storage_controller_module.html

Spec-Zone.ru

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