community.network.avi_gslb – Модуль для настройки Gslb Avi RESTful объекта
Примечание
Этот плагин входит в коллекцию community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Чтобы использовать его в книге задач, укажите: community.network.avi_gslb.
Обзор
- Этот модуль используется для настройки объекта Gslb
- Дополнительные примеры см. на странице https://github.com/avinetworks/devops
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- avisdk
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| api_context словарь | Контекст API Avi, который включает текущий идентификатор сессии и маркер CSRF. Это позволяет пользователю выполнить одно входное подключение и повторно использовать сессию. | ||
| api_version строка | По умолчанию: "16.4.4" | Версия API Avi для использования с Avi API и объектами. | |
| async_interval строка | Частота, с которой сообщения распространяются в vs mgr. Значение 0 отключает асинхронное поведение, и rpc отправляются непосредственно. Допустимые значения - 0-5. Поле введено в 18.2.3. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 0. | ||
| avi_api_patch_op строка |
| Операция патча для использования при использовании avi_api_update_method как патча. | |
| avi_api_update_method строка |
| Метод по умолчанию для обновления объекта - HTTP PUT. Установка на patch переопределит это поведение, чтобы использовать HTTP PATCH. | |
| avi_credentials словарь | Словарь Avi Credentials, который может быть использован вместо перечисления данных входа в систему контроллера Avi. | ||
| api_version строка | По умолчанию: "16.4.4" | Версия контроллера Avi | |
| controller строка | IP-адрес или SQDN контроллера | ||
| csrftoken строка | Маркер csrf API контроллера Avi для повторного использования существующей сессии с идентификатором сессии | ||
| password строка | Пароль пользователя Avi в контроллере Avi | ||
| port строка | Порт контроллера Avi | ||
| session_id строка | Идентификатор сессии API контроллера Avi для повторного использования существующей сессии с маркёром csrf | ||
| tenant строка | По умолчанию: "admin" | Тенент контроллера Avi | |
| tenant_uuid строка | UUID тенента контроллера Avi | ||
| timeout строка | По умолчанию: 300 | Таймаут запроса контроллера Avi | |
| token строка | Токен API контроллера Avi | ||
| username строка | Имя пользователя контроллера Avi | ||
| avi_disable_session_cache_as_fact логическое значение |
| Отключает кеширование информации о сессии avi как факта. | |
| clear_on_max_retries строка | Максимальное количество попыток, после которых удаленный сайт рассматривается как новый старт. При новом старте загружаются все конфигурации. Допустимые значения - 1-1024. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 20. | ||
| client_ip_addr_group строка | Группа для указания, являются ли IP-адреса клиентов общедоступными или частными. Поле введено в 17.1.2. | ||
| controller строка | По умолчанию: "" | IP-адрес или имя хоста контроллера. Значение по умолчанию - переменная среды AVI_CONTROLLER. | |
| description строка | Пользовательское описание объекта. | ||
| dns_configs строка | Конфигурация домена для gslb. FQDN gslb-сервиса должен соответствовать одному из этих поддоменов. | ||
| is_federated логическое значение |
| Это поле указывает, что этот объект дублируется в gslb-федерации. Поле введено в 17.1.3. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как True. | |
| leader_cluster_uuid строка / обязательно | Отметьте этот сайт как лидера gslb-конфигурации. Этот сайт среди сайтов Avi. | ||
| maintenance_mode логическое значение |
| Это поле отключает операции конфигурации на лидере для всех федеративных объектов. Операции cud на gslb, gslbservice, gslbgeodbprofile и других федеративных объектах будут отклонены. Отключение rest-api помогает в сценариях обновления, где мы не хотим операций синхронизации конфигурации в gslb-члене, когда член находится в процессе обновления. Эта конфигурация программно блокирует лидера от принятия новой gslb-конфигурации, когда сайты-члены проходят обновление. Поле введено в 17.2.1. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| name строка / обязательно | Имя объекта gslb. | ||
| password строка | По умолчанию: "" | Пароль пользователя Avi в контроллере Avi. Значение по умолчанию - переменная среды AVI_PASSWORD. | |
| send_interval строка | Частота, с которой члены группы общаются. Допустимые значения - 1-3600. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 15. | ||
| send_interval_prior_to_maintenance_mode строка | Пользователь может указать интервал отправки при входе в режим обслуживания. Действительность этого «интервала отправки обслуживания» ограничена только режимом обслуживания. При выходе из режима обслуживания восстанавливается исходный интервал отправки. Эта внутренняя переменная используется для хранения исходного интервала отправки. Поле введено в 18.2.3. | ||
| sites строка | Выберите участника сайта avi, входящего в состав этого gslb. | ||
| state строка |
| Состояние, которое должно быть применено к сущности. | |
| tenant строка | По умолчанию: "admin" | Название тенента, используемого для всех вызовов Avi API и контекста объекта. | |
| tenant_ref строка | Это ссылка на объект типа tenant. | ||
| tenant_uuid строка | По умолчанию: "" | UUID тенента, используемого для всех вызовов Avi API и контекста объекта. | |
| third_party_sites строка | Сайт участника третьей стороны, входящий в состав этого gslb. Поле введено в 17.1.1. | ||
| url строка | URL контроллера Avi для объекта. | ||
| username строка | По умолчанию: "" | Имя пользователя, используемое для доступа к контроллеру Avi. Значение по умолчанию - переменная среды AVI_USERNAME. | |
| uuid строка | Uuid объекта gslb. | ||
| view_id строка | Идентификатор представления используется в режиме смены лидера для различения разнесенных групп, имеющих одинаковое gslb-имя пространства. Каждая разнесенная группа сможет работать независимо, используя идентификатор представления. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 0. | ||
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления устройствами сети Avi см. на странице https://www.ansible.com/ansible-avi-networks.
Примеры
- name: Example to create Gslb object
community.network.avi_gslb:
name: "test-gslb"
avi_credentials:
username: '{{ username }}'
password: '{{ password }}'
controller: '{{ controller }}'
sites:
- name: "test-site1"
username: "gslb_username"
password: "gslb_password"
ip_addresses:
- type: "V4"
addr: "10.10.28.83"
enabled: True
member_type: "GSLB_ACTIVE_MEMBER"
port: 443
cluster_uuid: "cluster-d4ee5fcc-3e0a-4d4f-9ae6-4182bc605829"
- name: "test-site2"
username: "gslb_username"
password: "gslb_password"
ip_addresses:
- type: "V4"
addr: "10.10.28.86"
enabled: True
member_type: "GSLB_ACTIVE_MEMBER"
port: 443
cluster_uuid: "cluster-0c37ae8d-ab62-410c-ad3e-06fa831950b1"
dns_configs:
- domain_name: "test1.com"
- domain_name: "test2.com"
leader_cluster_uuid: "cluster-d4ee5fcc-3e0a-4d4f-9ae6-4182bc605829"
- name: Update Gslb site's configurations (Patch Add Operation)
community.network.avi_gslb:
avi_credentials:
username: '{{ username }}'
password: '{{ password }}'
controller: '{{ controller }}'
avi_api_update_method: patch
avi_api_patch_op: add
leader_cluster_uuid: "cluster-d4ee5fcc-3e0a-4d4f-9ae6-4182bc605829"
name: "test-gslb"
dns_configs:
- domain_name: "temp1.com"
- domain_name: "temp2.com"
gslb_sites_config:
- ip_addr: "10.10.28.83"
dns_vses:
- dns_vs_uuid: "virtualservice-f2a711cd-5e78-473f-8f47-d12de660fd62"
domain_names:
- "test1.com"
- "test2.com"
- ip_addr: "10.10.28.86"
dns_vses:
- dns_vs_uuid: "virtualservice-c1a63a16-f2a1-4f41-aab4-1e90f92a5e49"
domain_names:
- "temp1.com"
- "temp2.com"
- name: Update Gslb site's configurations (Patch Replace Operation)
community.network.avi_gslb:
avi_credentials:
username: "{{ username }}"
password: "{{ password }}"
controller: "{{ controller }}"
# On basis of cluster leader uuid dns_configs is set for that particular leader cluster
leader_cluster_uuid: "cluster-84aa795f-8f09-42bb-97a4-5103f4a53da9"
name: "test-gslb"
avi_api_update_method: patch
avi_api_patch_op: replace
dns_configs:
- domain_name: "test3.com"
- domain_name: "temp3.com"
gslb_sites_config:
# Ip address is mapping key for dns_vses field update. For the given IP address,
# dns_vses is updated.
- ip_addr: "10.10.28.83"
dns_vses:
- dns_vs_uuid: "virtualservice-7c947ed4-77f3-4a52-909c-4f12afaf5bb0"
domain_names:
- "test3.com"
- ip_addr: "10.10.28.86"
dns_vses:
- dns_vs_uuid: "virtualservice-799b2c6d-7f2d-4c3f-94c6-6e813b20b674"
domain_names:
- "temp3.com"
- name: Update Gslb site's configurations (Patch Delete Operation)
community.network.avi_gslb:
avi_credentials:
username: "{{ username }}"
password: "{{ password }}"
controller: "{{ controller }}"
# On basis of cluster leader uuid dns_configs is set for that particular leader cluster
leader_cluster_uuid: "cluster-84aa795f-8f09-42bb-97a4-5103f4a53da9"
name: "test-gslb"
avi_api_update_method: patch
avi_api_patch_op: delete
dns_configs:
gslb_sites_config:
- ip_addr: "10.10.28.83"
- ip_addr: "10.10.28.86"
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| obj словарь | успех, изменение | Объект Gslb (api/gslb) |
Авторы
- Gaurav Rastogi (@grastogi23) <grastogi@avinetworks.com>
© 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/community/network/avi_gslb_module.html