ngine_io.cloudstack.instance inventory – Apache CloudStack instance inventory source
Примечание
Этот плагин инвентаризации входит в состав коллекции ngine_io.cloudstack (версия 2.5.0).
Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install ngine_io.cloudstack. Для использования этого плагина инвентаризации необходимы дополнительные требования. Подробнее см. Требования.
Чтобы использовать его в playbook, укажите: ngine_io.cloudstack.instance.
Добавлена в ngine_io.cloudstack 2.1.0
Описание
- Получение хостов инвентаризации из Apache CloudStack
- Позволяет фильтровать и группировать хосты инвентаризации.
- Использует файл конфигурации YAML, заканчивающийся либо cloudstack-instances.yml, либо cloudstack-instances.yaml, для установки значений параметров (см. также примеры).
Требования
Ниже перечислены требования к локальному контроллеру, на котором выполняется этот инвентарь.
- python >= 2.6
- cs >= 0.9.0
Параметры
Параметр | Комментарии |
|---|---|
api_http_method строка | Метод HTTP, используемый для запроса к API-точке входа. Если не указано, используется переменная среды Выбираемые значения:
Конфигурация:
|
api_key строка / обязательно | Ключ API CloudStack API. Если не указано, используется переменная среды Конфигурация:
|
api_secret строка / обязательно | Секретный ключ CloudStack API. Если не задано, используется переменная среды Конфигурация:
|
api_timeout целое число | Таймаут HTTP в секундах. Если не задано, используется переменная среды По умолчанию: Конфигурация:
|
api_url строка / обязательно | URL CloudStack API, например https://cloud.example.com/client/api. Если не указано, используется переменная среды Конфигурация:
|
api_verify_ssl_cert строка | Проверить сертификат CA. Если не указано, используется переменная среды Конфигурация:
|
compose словарь | Создать переменные из выражений Jinja2. По умолчанию: |
filter_by_domain строка | Возвращать только экземпляры в указанном домене. |
|
trailing_separator boolean added in ansible-core 2.12 |
Установите это значение в Этот параметр взаимоисключает Варианты:
|
leading_separator boolean added in ansible-core 2.11 | Используйте совместно с keyed_groups. По умолчанию, группа с ключом, у которой нет префикса или разделителя, будет иметь имя, начинающееся с подчёркивания. Это происходит потому, что по умолчанию префикс — “” и разделитель — “_”. Установите этот параметр в значение False, чтобы опустить ведущее подчёркивание (или другой разделитель), если префикс не задан. Если имя группы получено из отображения, разделитель по-прежнему используется для конкатенации элементов. Чтобы вообще не использовать разделитель в имени группы, установите разделитель для группы с ключом в пустую строку. Варианты:
|
plugin string / обязательно | Токен, гарантирующий, что это исходный файл для плагина «instance». Варианты:
|
strict boolean | Если Поскольку в выражениях можно использовать факты, они могут не всегда быть доступны, и эти ошибки мы игнорируем по умолчанию. Варианты:
|
use_extra_vars boolean added in ansible-core 2.11 | Слияние дополнительных переменных в доступные переменные для композиции (самый высокий приоритет). Варианты:
Настройка:
|
validate_certs boolean added in ngine_io.cloudstack 2.4.0 | Если Если не указано, используется переменная среды Это следует использовать только на сайтах под собственным контролем, использующих самозаверяющие сертификаты. Варианты:
|
Примечания
Примечание
- Подробное руководство по модулям cloudstack можно найти в Руководстве по CloudStack.
- Этот модуль поддерживает режим проверки.
Примеры
# inventory_cloudstack.yml file in YAML format
# Example command line: ansible-inventory --list -i cloudstack-instances.yml
plugin: ngine_io.cloudstack.instance
# Use the default ip as ansible_host
hostname: v4_default_ip
# Return only instances related to the VPC vpc1 and in the zone EU
filter_by_vpc: vpc1
filter_by_zone: EU
# Group instances with a disk_offering as storage
# Create a group dmz for instances connected to the dmz network
groups:
storage: disk_offering is defined
dmz: "'dmz' in networks"
# Group the instances by network, with net_network1 as name of the groups
# Group the instanes by custom tag sla, groups like sla_value for tag sla
keyed_groups:
- prefix: net
key: networks
- prefix: sla
key: tags.sla
Ссылки на сборку
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/ngine_io/cloudstack/instance_inventory.html