os_stack – Добавление/Удаление стека Heat
Новое в версии 2.2.
Обзор
- Добавление или удаление стека в OpenStack Heat
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- openstacksdk
- python >= 2.7
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout целое число | Сколько времени должен ждать уровень сокетов, прежде чем истечет время ожидания для вызовов API. Если это значение опущено, в библиотеку запросов ничего не будет передано. | |
| auth словарь | Словарь, содержащий информацию об авторизации, необходимую стратегии плагина авторизации облака. Для плагина по умолчанию password, он будет содержать auth_url, username, password, project_name и любую информацию о доменах (например, os_user_domain_name или os_project_domain_name), если облако их поддерживает. Для других плагинов этот параметр должен содержать параметры, необходимые для плагина авторизации. Этот параметр не нужен, если указано имя облака или присутствуют переменные окружения OpenStack OS_*. | |
| auth_type строка | Имя плагина авторизации, который нужно использовать. Если облако использует что-то помимо парольной аутентификации, имя плагина должно быть указано здесь, и содержимое параметра auth должно быть соответствующим образом обновлено. | |
| availability_zone - | Игнорируется. Присутствует для обратной совместимости | |
| ca_cert строка | Путь к пакету сертификата CA, который может использоваться для проверки запросов SSL API. псевдонимы: cacert | |
| client_cert строка | Путь к клиенту сертификат, который нужно использовать в рамках транзакции SSL. псевдонимы: cert | |
| client_key строка | Путь к ключу клиента, который нужно использовать в рамках транзакции SSL. псевдонимы: key | |
| cloud сырые данные | Именованное облако или конфигурация облака для работы. Если cloud – строка, она ссылается на конфигурацию именованного облака, определенную в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если предоставлен параметр auth или присутствуют переменные окружения OpenStack OS_*. Если cloud – словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | |
| environment - | Список файлов окружения, которые следует использовать для создания стека. | |
| interface строка добавлено в 2.3 |
| Тип URL конечной точки для извлечения из каталога служб. псевдонимы: endpoint_type |
| name - / обязательно | Имя стека, который нужно создать, имя может содержать символы и цифры, но без пробелов. | |
| parameters - | Словарь параметров для создания стека. | |
| region_name строка | Имя региона. | |
| rollback логическое значение |
| Откат создания стека |
| state - |
| Укажите желаемое состояние ресурса |
| tag - добавлено в 2.5 | Тег для стека, который должен быть создан, имя может содержать символы и цифры, но без пробелов. | |
| template - | Путь к файлу шаблона, который нужно использовать для создания стека. | |
| timeout целое число | По умолчанию: 3600 | Максимальное время в секундах для ожидания создания стека. |
| 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, затем из стандартных переменных окружения, а затем из явных параметров в playbooks. Дополнительную информацию можно найти по адресу https://docs.openstack.org/openstacksdk/
Примеры
---
- name: create stack
ignore_errors: True
register: stack_create
os_stack:
name: "{{ stack_name }}"
tag: "{{ tag_name }}"
state: present
template: "/path/to/my_stack.yaml"
environment:
- /path/to/resource-registry.yaml
- /path/to/environment.yaml
parameters:
bmc_flavor: m1.medium
bmc_image: CentOS
key_name: default
private_net: "{{ private_net_param }}"
node_count: 2
name: undercloud
image: CentOS
my_flavor: m1.large
external_net: "{{ external_net_param }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| id строка | всегда | Идентификатор стека. Пример: 97a3f543-8136-4570-920e-fd7605c989d6 | |
| stack сложное | всегда | информация о стеке | |
| action строка | Действие, может быть Create или Update. Пример: CREATE | ||
| creation_time строка | Время выполнения действия. Пример: 2016-07-05T17:38:12Z | ||
| description строка | Описание стека, предоставленное в шаблоне. Пример: Шаблон для создания нового экземпляра и сетей | ||
| id строка | Идентификатор стека. Пример: 97a3f543-8136-4570-920e-fd7605c989d6 | ||
| identifier строка | Идентификатор текущего действия стека. Пример: test-stack/97a3f543-8136-4570-920e-fd7605c989d6 | ||
| links список словарей | Ссылки на текущий стек. Пример: [{'href': 'http://foo:8004/v1/7f6a/stacks/test-stack/97a3f543-8136-4570-920e-fd7605c989d6'}] | ||
| name строка | Имя стека Пример: test-stack | ||
| outputs список словарей | Выходные данные, возвращенные стеком. Пример: {'description': 'IP-адрес сервера1 в частной сети', 'output_key': 'server1_private_ip', 'output_value': '10.1.10.103'} | ||
| parameters словарь | Параметры текущего стека Пример: {'OS::project_id': '7f6a3a3e01164a4eb4eecb2ab7742101', 'OS::stack_id': '97a3f543-8136-4570-920e-fd7605c989d6', 'OS::stack_name': 'test-stack', 'stack_status': 'CREATE_COMPLETE', 'stack_status_reason': 'Операция CREATE стека выполнена успешно', 'status': 'COMPLETE', 'template_description': 'Шаблон для создания нового экземпляра и сетей', 'timeout_mins': 60, 'updated_time': null} | ||
Состояние
- Этот модуль не гарантирует обратной совместимости. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Mathieu Bultel (@matbu)
- Steve Baker (@steveb)
Подсказка
Если вы заметите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/os_stack_module.html