openstack.cloud.baremetal_node – Создание/удаление ресурсов Bare Metal из OpenStack
Примечание
Этот плагин входит в коллекцию openstack.cloud (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install openstack.cloud.
Для использования в плейбуке укажите: openstack.cloud.baremetal_node.
Обзор
- Создание или удаление узлов Ironic из OpenStack.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- jsonpatch
- openstacksdk
- openstacksdk >= 0.12.0
- python >= 3.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| api_timeout целое число | Сколько времени должен ждать уровень сокета, прежде чем отбросить вызов API из-за истечения времени. Если этот параметр опущен, ничего не будет передано в библиотеку requests. | ||
| auth словарь | Словарь, содержащий информацию об авторизации, необходимую для стратегии плагина авторизации облака. Для стандартного плагина password, он должен содержать auth_url, username, password, project_name и любую информацию о доменах (например, user_domain_name или project_domain_name), если их поддерживает облако. Для других плагинов, этот параметр должен содержать параметры, необходимые для данного плагина авторизации. Этот параметр не нужен, если предоставлен параметр cloud или присутствуют переменные окружения OpenStack OS_*. | ||
| auth_type строка | Имя плагина авторизации для использования. Если облако использует что-то кроме парольной аутентификации, имя плагина должно быть указано здесь, а содержимое параметра auth должно быть соответствующим образом обновлено. | ||
| availability_zone строка | Игнорируется. Присутствует для обратной совместимости | ||
| ca_cert строка | Путь к пакету сертификатов CA, который может использоваться для проверки запросов SSL API. псевдонимы: cacert | ||
| chassis_uuid строка | Связывает узел с предварительно определенным корпусом. | ||
| client_cert строка | Путь к клиенту сертификата для использования в рамках транзакции SSL. псевдонимы: cert | ||
| client_key строка | Путь к ключу клиента для использования в рамках транзакции SSL. псевдонимы: key | ||
| cloud сырой | Именованное облако или конфигурация облака для работы. Если cloud - строка, она ссылается на конфигурацию именованного облака, определённую в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если предоставлен auth или присутствуют переменные окружения OpenStack OS_* . Если cloud – словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | ||
| driver строка | Имя драйвера Ironic для использования с этим узлом. Требуется, когда state=present
| ||
| driver_info словарь / обязательный | Информация для драйвера этого сервера. Будет меняться в зависимости от используемого драйвера. Любое заполненное подполе будет валидировано при создании. | ||
| console строка | Информация, необходимая для подключения к последовательному консоли этого сервера. Не все драйверы поддерживают это. | ||
| deploy строка | Информация, необходимая для развертывания этого сервера напрямую, без использования Nova. ЭТО НЕ РЕКОМЕНДУЕТСЯ. | ||
| management строка / обязательный | Информация, необходимая для взаимодействия с интерфейсом управления этого сервера. Может быть разделена с power_info в некоторых случаях. | ||
| power строка / обязательный | Информация, необходимая для включения/выключения этого сервера. Часто включает такие вещи, как имя пользователя IPMI, пароль и IP-адрес. | ||
| interface строка |
| Тип URL конечной точки для извлечения из каталога служб. псевдонимы: endpoint_type | |
| ironic_url строка | Если используется режим noauth, этот параметр требуется для задания URL конечной точки для API Ironic. Используйте с параметрами "auth" и "auth_type" равными None. | ||
| name строка | Уникальный идентификатор имени для ресурса. | ||
| nics список / элементы=словарь / обязательный | Список сетевых интерфейсных карт, например, " - mac: aa:bb:cc:aa:bb:cc" | ||
| mac строка / обязательный | MAC-адрес сетевого интерфейсного адаптера. | ||
| properties словарь | Определение физических характеристик этого сервера, используемых для планирования. | ||
| capabilities строка | Значение по умолчанию: "" | специальные возможности для узла, такие как boot_option, node_role и т. д. (см. https://docs.openstack.org/ironic/latest/install/advanced.html для получения дополнительной информации) | |
| cpu_arch строка | Значение по умолчанию: "x86_64" | Архитектура процессора (x86_64, i686, ...) | |
| cpus строка | Значение по умолчанию: 1 | Количество ядер процессора у этой машины | |
| disk_size строка | Значение по умолчанию: 1 | размер первого хранилища на этой машине (обычно /dev/sda), в ГБ | |
| ram строка | Значение по умолчанию: 1 | объём ОЗУ этой машины, в МБ | |
| root_device строка | Значение по умолчанию: "" | Указатели устройства корневого диска для развертывания. См. https://docs.openstack.org/ironic/latest/install/advanced.html#specifying-the-disk-for-deployment-root-device-hints для разрешенных указателей. | |
| region_name строка | Имя региона. | ||
| skip_update_of_masked_password логический |
| Разрешает коду, который должен утверждать изменения узлов, пропустить обновление, если изменение состоит из одной строки с полем пароля. Начиная с Kilo, по умолчанию пароли всегда маскируются в запросах к API, что означает, что логика всегда пытается повторно утвердить поле пароля. skip_update_of_driver_password - устаревший псевдоним и будет удалён в openstack.cloud 2.0.0.псевдонимы: skip_update_of_driver_password | |
| state строка |
| Указывает желаемое состояние ресурса | |
| timeout целое число | Значение по умолчанию: 180 | Сколько времени Ansible должен ждать запрошенного ресурса. | |
| uuid строка | уникальный глобальный идентификатор (UUID) для ресурса. Будет сгенерирован автоматически, если не указан, и указано имя. Определение UUID всегда имеет приоритет над значением имени. | ||
| validate_certs логический |
| Проверять ли SSL запросы к API. До Ansible 2.3 по умолчанию было yes.псевдонимы: verify | |
| wait логический |
| Должен ли Ansible ждать, пока запрошенный ресурс не будет завершён. | |
Примечания
Примечание
- Можно использовать стандартные переменные окружения OpenStack, такие как
OS_USERNAME, вместо явного задания значений. - Информация об авторизации управляется openstacksdk, что означает, что значения могут поступать из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных окружения, и, наконец, из явных параметров в сценариях. Более подробную информацию можно найти по адресу https://docs.openstack.org/openstacksdk/
Примеры
# Enroll a node with some basic properties and driver info
- openstack.cloud.baremetal_node:
cloud: "devstack"
driver: "pxe_ipmitool"
uuid: "00000000-0000-0000-0000-000000000002"
properties:
cpus: 2
cpu_arch: "x86_64"
ram: 8192
disk_size: 64
capabilities: "boot_option:local"
root_device:
wwn: "0x4000cca77fc4dba1"
nics:
- mac: "aa:bb:cc:aa:bb:cc"
- mac: "dd:ee:ff:dd:ee:ff"
driver_info:
power:
ipmi_address: "1.2.3.4"
ipmi_username: "admin"
ipmi_password: "adminpass"
chassis_uuid: "00000000-0000-0000-0000-000000000001"
Авторы
- Рабочая группа Ansible OpenStack SIG
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/openstack/cloud/baremetal_node_module.html