openstack.cloud.image – Добавление/удаление образов из OpenStack Cloud
Примечание
Этот плагин входит в состав коллекции openstack.cloud (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install openstack.cloud
Для использования в playbook, укажите: openstack.cloud.image
Описание
- Добавление или удаление образов из хранилища образов OpenStack
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- openstacksdk
- openstacksdk >= 0.12.0
- python >= 3.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout целое число | Сколько времени должна ждать сетевая сокета перед таймаутом API-вызовов. Если это опущено, ничего не будет передано в библиотеку запросов. | |
| auth словарь | Словарь, содержащий информацию об авторизации, необходимую стратегии плагина авторизации облака. Для плагина password по умолчанию он будет содержать auth_url, username, password, project_name и любую информацию о доменах (например, user_domain_name или project_domain_name), если облако их поддерживает. Для других плагинов этот параметр должен содержать любые необходимые параметры плагина авторизации. Этот параметр не нужен, если указано имя облака или присутствуют переменные среды OpenStack OS_*. | |
| auth_type строка | Имя плагина авторизации для использования. Если облако использует что-то помимо парольной аутентификации, имя плагина должно быть указано здесь, а содержимое параметра auth должно быть соответствующим образом обновлено. | |
| availability_zone строка | Игнорируется. Присутствует для обратной совместимости | |
| ca_cert строка | Путь к пакету сертификатов CA, который может использоваться при проверке SSL API-запросов. псевдонимы: cacert | |
| checksum строка | Контрольная сумма образа | |
| client_cert строка | Путь к клиенту сертификату для использования в рамках SSL транзакции. псевдонимы: cert | |
| client_key строка | Путь к ключу клиента для использования в рамках SSL транзакции. псевдонимы: key | |
| cloud сырой | Именованное облако или конфигурация облака для работы. Если cloud является строкой, она ссылается на именованную конфигурацию облака, как определено в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если предоставлен auth или присутствуют переменные среды OpenStack OS_*. Если cloud является словарем, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | |
| container_format строка |
| Формат контейнера |
| disk_format строка |
| Формат диска, который загружается |
| filename строка | Путь к файлу, который необходимо загрузить | |
| id строка | Идентификатор образа при загрузке образа | |
| interface строка |
| Тип URL конечной точки для получения из каталога служб. псевдонимы: endpoint_type |
| is_public логическое значение |
| Можно ли получить доступ к образу публично. Обратите внимание, что для публикации образа по умолчанию требуется роль администратора. |
| kernel строка | Имя существующего образа ядра, которое будет связано с этим образом | |
| min_disk целое число | Минимальное дисковое пространство (в ГБ), необходимое для загрузки этого образа | |
| min_ram целое число | Минимальный объем ОЗУ (в МБ), необходимый для загрузки этого образа | |
| name строка / обязательно | Имя образа при загрузке - или имя/ID образа при удалении | |
| owner строка | Владелец образа | |
| properties словарь | По умолчанию: {} | Дополнительные свойства, которые необходимо связать с этим образом |
| protected логическое значение |
| Запретить удаление образа |
| ramdisk строка | Имя существующего образа ramdisk, который будет связан с этим образом | |
| region_name строка | Имя региона. | |
| state строка |
| Ресурс должен быть присутствовать или отсутствовать. |
| timeout целое число | По умолчанию: 180 | Сколько времени Ansible должен ждать запрашиваемого ресурса. |
| validate_certs логическое значение |
| Нужно ли проверять API-запросы SSL. До Ansible 2.3 это по умолчанию было yes.псевдонимы: verify |
| volume строка | ID тома для создания образа. Том должен быть в состоянии AVAILABLE. | |
| wait логическое значение |
| Ansible должен ждать завершения запрашиваемого ресурса. |
Примечания
Примечание
- Можно использовать стандартные переменные среды OpenStack, такие как
OS_USERNAME, вместо явного указания значений. - Информация об авторизации управляется openstacksdk, что означает, что значения могут поступать из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных среды, а затем из явных параметров в сценариях. Более подробную информацию можно найти по адресу https://docs.openstack.org/openstacksdk/
Примеры
# Upload an image from a local file named cirros-0.3.0-x86_64-disk.img
- openstack.cloud.image:
auth:
auth_url: https://identity.example.com
username: admin
password: passme
project_name: admin
openstack.cloud.identity_user_domain_name: Default
openstack.cloud.project_domain_name: Default
name: cirros
container_format: bare
disk_format: qcow2
state: present
filename: cirros-0.3.0-x86_64-disk.img
kernel: cirros-vmlinuz
ramdisk: cirros-initrd
properties:
cpu_arch: x86_64
distro: ubuntu
# Create image from volume attached to an instance
- name: create volume snapshot
openstack.cloud.volume_snapshot:
auth:
"{{ auth }}"
display_name: myvol_snapshot
volume: myvol
force: yes
register: myvol_snapshot
- name: create volume from snapshot
openstack.cloud.volume:
auth:
"{{ auth }}"
size: "{{ myvol_snapshot.snapshot.size }}"
snapshot_id: "{{ myvol_snapshot.snapshot.id }}"
display_name: myvol_snapshot_volume
wait: yes
register: myvol_snapshot_volume
- name: create image from volume snapshot
openstack.cloud.image:
auth:
"{{ auth }}"
volume: "{{ myvol_snapshot_volume.volume.id }}"
name: myvol_image
Авторы
- OpenStack Ansible 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/image_module.html