os_ironic - Создание/удаление ресурсов Bare Metal из OpenStack
Новое в версии 2.0.
Описание
- Создание или удаление узлов Ironic из OpenStack.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- jsonpatch
- python >= 2.7
- shade
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| api_timeout | Сколько времени (в секундах) уровень сокета должен ждать перед таймаутом вызовов API. Если этот параметр опущен, он не будет передан в библиотеку requests. | ||
| auth | Словарь, содержащий информацию об авторизации, необходимую стратегии плагина авторизации облака. Для плагина по умолчанию password, он будет содержать auth_url, username, password, project_name и любую информацию о доменах, если облако их поддерживает. Для других плагинов этот параметр должен содержать параметры, необходимые этому плагину авторизации. Этот параметр не требуется, если задан параметр cloud или присутствуют переменные среды OpenStack OS_*. | ||
| auth_type | Имя плагина авторизации для использования. Если облако использует что-то отличное от аутентификации по паролю, здесь должно быть указано имя плагина, а содержимое параметра auth должно быть соответствующим образом обновлено. | ||
| availability_zone | Игнорируется. Присутствует для обратной совместимости. | ||
| cacert | Путь к пакету сертификатов CA, который можно использовать для проверки запросов API SSL. | ||
| cert | Путь к клиентскому сертификату, который нужно использовать в ходе SSL-транзакции. | ||
| chassis_uuid | Значение по умолчанию: None | Связывает узел с предварительно определённым шасси. | |
| cloud | Наименованное облако или конфигурация облака для работы с ним. Если cloud является строкой, она ссылается на конфигурацию облака по имени, как определено в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если задан параметр auth или присутствуют переменные среды OpenStack OS_* . Если cloud является словарем, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | ||
| driver обязательно | Значение по умолчанию: None | Имя драйвера Ironic, которое нужно использовать с этим узлом. | |
| driver_info | Информация для драйвера данного сервера. Будет отличаться в зависимости от используемого драйвера. Любой подполе, которое заполняется, будет проверен во время создания. | ||
| management обязательно | Информация, необходимая для взаимодействия с интерфейсом управления данным сервером. Возможно, она будет совмещена с power_info в некоторых случаях. | ||
| console | Информация, необходимая для подключения к последовательному консоли этого сервера. Не все драйверы поддерживают это. | ||
| power обязательно | Информация, необходимая для включения/выключения этого сервера. Часто включает такие вещи, как имя пользователя IPMI, пароль и IP-адрес. | ||
| deploy | Информация, необходимая для непосредственной развертки этого сервера без использования Nova. ЭТО НЕ РЕКОМЕНДУЕТСЯ. | ||
| interface (добавлено в 2.3) |
| Тип URL конечной точки для извлечения из каталога сервисов. псевдонимы: endpoint_type | |
| ironic_url | Значение по умолчанию: None | Если используется режим noauth, то это обязательно, и здесь должен быть URL-адрес конечной точки для API Ironic. Используйте вместе с параметрами "auth" и "auth_type", установленными в None. | |
| key | Путь к клиентскому ключу, который нужно использовать в ходе SSL-транзакции. | ||
| name | Значение по умолчанию: None | Уникальный идентификатор имени для ресурса. | |
| nics обязательно | Список сетевых адаптеров, например, " - mac: aa:bb:cc:aa:bb:cc" | ||
| properties | Определение физических характеристик этого сервера, используемых для планирования. | ||
| cpu_arch | Значение по умолчанию: x86_64 | Архитектура процессора (x86_64, i686, ...) | |
| ram | Значение по умолчанию: 1 | Объём оперативной памяти этого компьютера в МБ | |
| disk_size | Значение по умолчанию: 1 | Размер первого накопителя этого компьютера (обычно /dev/sda) в ГБ | |
| cpus | Значение по умолчанию: 1 | Количество ядер процессора этого компьютера | |
| region_name | Имя региона. | ||
| skip_update_of_driver_password | Значение по умолчанию: no | Позволяет коду, который утверждает изменения в узлах, пропустить обновление, если изменение — это единственная строка, содержащая поле пароля. Начиная с Kilo, по умолчанию пароли всегда маскируются в запросах к API, что означает, что логика всегда пытается повторно утвердить поле пароля. | |
| state |
| Указывает желаемое состояние ресурса | |
| timeout | Значение по умолчанию: 180 | Сколько времени Ansible должен ждать запрашиваемого ресурса. | |
| uuid | Значение по умолчанию: None | Глобально уникальный идентификатор (UUID) для ресурса. Будет сгенерирован автоматически, если не указан, а указано имя. Определение UUID всегда имеет приоритет над значением имени. | |
| verify |
| Нужно ли проверять запросы API SSL. До версии 2.3 это по умолчанию было True. псевдонимы: validate_certs | |
| wait |
| Должен ли Ansible ждать, пока запрашиваемый ресурс будет завершен. | |
Примечания
Примечание
- Можно использовать стандартные переменные окружения OpenStack, например,
OS_USERNAME, вместо явного указания значений. - Информация об авторизации управляется os-client-config, что означает, что значения могут быть взяты из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных среды, а в последнюю очередь — из явных параметров в задачах. Дополнительную информацию можно найти на странице http://docs.openstack.org/developer/os-client-config
Примеры
# Enroll a node with some basic properties and driver info
- os_ironic:
cloud: "devstack"
driver: "pxe_ipmitool"
uuid: "00000000-0000-0000-0000-000000000002"
properties:
cpus: 2
cpu_arch: "x86_64"
ram: 8192
disk_size: 64
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"
Статус
Этот модуль помечен как экспериментальный, что означает, что гарантии обратной совместимости интерфейса нет.
Автор
- Monty Taylor (@emonty)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/os_ironic_module.html