ngine_io.cloudstack.cs_network – Управляет сетями в облаках на основе Apache CloudStack.
Примечание
Этот плагин входит в коллекцию ngine_io.cloudstack (версия 1.1.0).
Для его установки используйте: ansible-galaxy collection install ngine_io.cloudstack
Для использования в книге задач укажите: ngine_io.cloudstack.cs_network
Новое в версии 0.1.0: из ngine_io.cloudstack
Обзор
- Создание, обновление, перезапуск и удаление сетей.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- cs >= 0.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account строка | Аккаунт, к которому относится сеть. | |
| acl строка | Имя списка управления доступом для уровня сети VPC. | |
| acl_type строка |
| Тип управления доступом для сети. Если не указано, Cloudstack по умолчанию будет использовать account для изолированных сетейи domain для общих сетей.Рассматривается только при создании. |
| api_http_method строка |
| HTTP-метод, используемый для запроса конечной точки API. Если не задано, используется переменная среды CLOUDSTACK_METHOD. В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания. Значение по умолчанию - get, если не указано. |
| api_key строка | Ключ API CloudStack API. Если не задано, используется переменная среды CLOUDSTACK_KEY. В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания. | |
| api_region строка | Значение по умолчанию: "cloudstack" | Имя раздела ini в файле cloustack.ini.Если не задано, используется переменная среды CLOUDSTACK_REGION. |
| api_secret строка | Секретный ключ CloudStack API. Если не задано, используется переменная среды CLOUDSTACK_SECRET. В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания. | |
| api_timeout целое число | Таймаут HTTP в секундах. Если не задано, используется переменная среды CLOUDSTACK_TIMEOUT. В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания. Значение по умолчанию 10 секунд, если не указано. | |
| api_url строка | URL CloudStack API, например, https://cloud.example.com/client/api. Если не задано, используется переменная среды CLOUDSTACK_ENDPOINT. В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания. | |
| api_verify_ssl_cert строка | Файл сертификата CA-авторитета. Если не задано, используется переменная среды CLOUDSTACK_VERIFY. В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания. Значение по умолчанию - null, если не указано. | |
| cidr_ipv6 строка | CIDR IPv6 сети, должен быть не менее /64. Рассматривается только при создании. | |
| clean_up логическое |
| Очистка старых элементов сети. Рассматривается только при state=restarted. |
| display_text строка | Текст для отображения сети. Если не указано, name будет использоваться как display_text. | |
| domain строка | Домен, к которому относится сеть. | |
| end_ip строка | Конечный IPv4-адрес сети. Если не указано, используется значение start_ip. Рассматривается только при создании. | |
| end_ipv6 строка | Конечный IPv6-адрес сети. Если не указано, используется значение start_ipv6. Рассматривается только при создании. | |
| gateway строка | Шлюз сети. Обязательно для общих сетей и изолированных сетей, если они принадлежат VPC. Рассматривается только при создании. | |
| gateway_ipv6 строка | Шлюз IPv6 сети. Обязательно для общих сетей. Рассматривается только при создании. | |
| isolated_pvlan строка | Изолированный частный VLAN для этой сети. | |
| name строка / обязательно | Имя сети (регистрозависимое). | |
| netmask строка | Маска сети. Обязательно для общих сетей и изолированных сетей, если они принадлежат VPC. Рассматривается только при создании. | |
| network_domain строка | Домен сети. | |
| network_offering строка | Имя предложения для сети. Обязательно, если state=present. | |
| poll_async логическое |
| Ожидание асинхронных задач до завершения. |
| project строка | Имя проекта, в котором должна быть развернута сеть. | |
| start_ip строка | Начальный IPv4-адрес сети. Рассматривается только при создании. | |
| start_ipv6 строка | Начальный IPv6-адрес сети. Рассматривается только при создании. | |
| state строка |
| Состояние сети. |
| subdomain_access логическое |
| Определяет, разрешено ли доменам-поддоменам использовать сети, предназначенные для их родительских домена(ов). Должно использоваться с acl_type=domain. Рассматривается только при создании. |
| tags список / элементы=словарь | Список тегов. Теги — список словарей, содержащих ключи key и value. Для удаления всех тегов установите пустой список, например, tags: []. псевдонимы: тег | |
| vlan строка | Идентификатор или VID сети. | |
| vpc строка | Имя VPC сети. | |
| zone строка | Имя зоны, в которой должна быть развернута сеть. Если не задано, используется зона по умолчанию. |
Примечания
Примечание
- Ansible использует метод конфигурации библиотеки
cs, если учетные данные не предоставлены аргументамиapi_url,api_key,api_secret. Конфигурация читается из нескольких мест, в следующем порядке.CLOUDSTACK_ENDPOINT,CLOUDSTACK_KEY,CLOUDSTACK_SECRETиCLOUDSTACK_METHOD. Переменные средыCLOUDSTACK_TIMEOUT. Переменная средыCLOUDSTACK_CONFIG, указывающая на файл.ini. Файлcloudstack.iniв текущей рабочей директории. Файл.cloudstack.iniв домашней директории пользователя. Допускается указание нескольких учетных данных и конечных точек с помощью разделов ini в файлеcloudstack.ini. Используйте аргументapi_regionдля выбора имени раздела, по умолчанию используется разделcloudstack. Дополнительная информация доступна на https://github.com/exoscale/cs. - Подробное руководство по модулям Cloudstack можно найти в Руководстве по облаку CloudStack.
- Этот модуль поддерживает режим проверки.
Примеры
- name: Create a network
ngine_io.cloudstack.cs_network:
name: my network
zone: gva-01
network_offering: DefaultIsolatedNetworkOfferingWithSourceNatService
network_domain: example.com
- name: Create a VPC tier
ngine_io.cloudstack.cs_network:
name: my VPC tier 1
zone: gva-01
vpc: my VPC
network_offering: DefaultIsolatedNetworkOfferingForVpcNetworks
gateway: 10.43.0.1
netmask: 255.255.255.0
acl: my web acl
- name: Update a network
ngine_io.cloudstack.cs_network:
name: my network
display_text: network of domain example.local
network_domain: example.local
- name: Restart a network with clean up
ngine_io.cloudstack.cs_network:
name: my network
clean_up: yes
state: restarted
- name: Remove a network
ngine_io.cloudstack.cs_network:
name: my network
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| account строка | успех | Аккаунт, к которому относится сеть. Пример: example account |
| acl строка | успех | Имя списка управления доступом (ACL) для уровня сети VPC. Пример: Мой ACL |
| acl_id строка | успех | Идентификатор списка управления доступом (ACL) для уровня сети VPC. Пример: dfafcd55-0510-4b8c-b6c5-b8cedb4cfd88 |
| acl_type строка | успех | Тип доступа сети (Домен, Аккаунт). Пример: Аккаунт |
| broadcast_domain_type строка | успех | Тип домена широковещательной передачи сети. Пример: Vlan |
| cidr строка | успех | CIDR IPv4 сети. Пример: 10.101.64.0/24 |
| cidr_ipv6 строка | если доступно | CIDR IPv6 сети. Пример: 2001:db8::/64 |
| display_text строка | успех | Текст для отображения сети. Пример: web project |
| dns1 строка | успех | IP-адрес первого сервера имен. Пример: 1.2.3.4 |
| dns2 строка | успех | IP-адрес второго сервера имен. Пример: 1.2.3.4 |
| domain строка | успех | Домен, к которому относится сеть. Пример: ROOT |
| gateway строка | успех | IPv4 шлюз. Пример: 10.101.64.1 |
| gateway_ipv6 строка | если доступно | IPv6 шлюз. Пример: 2001:db8::1 |
| id строка | успех | UUID сети. Пример: 04589590-ac63-4ffc-93f5-b698b8ac38b6 |
| is_persistent логический тип | успех | Является ли сеть постоянной. |
| is_system логический тип | успех | Является ли сеть связанной с системой. |
| name строка | успех | Имя сети. Пример: web project |
| netmask строка | успех | IPv4 маска сети. Пример: 255.255.255.0 |
| network_domain строка | успех | Домен сети. Пример: example.local |
| network_offering строка | успех | Имя предложения сети. Пример: DefaultIsolatedNetworkOfferingWithSourceNatService |
| network_offering_availability строка | успех | Доступность предложения сети, из которого создана сеть. Пример: Необязательно |
| network_offering_conserve_mode логический тип | успех | Включен ли режим сохранения IP в предложении сети. |
| network_offering_display_text строка | успех | Текст для отображения предложения сети. Пример: Предложение для изолированных сетей VPC с включенной службой Source Nat |
| project строка | успех | Имя проекта. Пример: Production |
| state строка | успех | Состояние сети (Выделено, Реализовано, Настроено). Пример: Выделено |
| tags список / элементы=строка | успех | Список тегов ресурсов, связанных с сетью. Пример: [ { "ключ": "foo", "значение": "bar" } ] |
| traffic_type строка | успех | Тип трафика сети. Пример: Гость |
| type строка | успех | Тип сети. Пример: Изолированная |
| vpc строка | если доступно | Имя VPC. Пример: Моя VPC |
| zone строка | успех | Имя зоны. Пример: ch-gva-2 |
Авторы
- René Moser (@resmo)
© 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/ngine_io/cloudstack/cs_network_module.html