community.network.avi_virtualservice – Модуль для настройки объекта VirtualService Avi RESTful
Примечание
Этот плагин входит в коллекцию community.network (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в плейбуке укажите: community.network.avi_virtualservice.
Обзор
- Этот модуль используется для конфигурации объекта VirtualService.
- Дополнительные примеры см. на https://github.com/avinetworks/devops
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- avisdk
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| active_standby_se_tag строка | Эта конфигурация применяется только в том случае, если виртуальная служба находится в режиме резервного копирования активного резервного копирования и включено распределение нагрузки между активным и резервным режимами. Это поле используется для маркировки виртуальной службы, чтобы виртуальные службы с одинаковой меткой использовали один и тот же активный движок службы. Виртуальные службы с различными метками будут иметь разные активные движки служб. Если один из движков служб в группе движков служб выйдет из строя, все виртуальные службы будут использовать один и тот же активный движок службы. Перераспределение виртуальных служб может быть ручным или автоматическим при восстановлении вышедшего из строя движка службы. Перераспределение основано на свойстве автоматического перераспределения группы движков служб. Варианты перечисления — ACTIVE_STANDBY_SE_1, ACTIVE_STANDBY_SE_2. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как ACTIVE_STANDBY_SE_1. | ||
| allow_invalid_client_cert булево |
| Обработать запрос даже если предоставлен недействительный сертификат клиента. Для обработки таких запросов необходимо использовать API datascript. Поле введено в версии 18.2.3. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| analytics_policy строка | Определяет настройки аналитики для приложения. | ||
| analytics_profile_ref строка | Указывает настройки, связанные с аналитикой. Это ссылка на объект типа analyticsprofile. | ||
| api_context словарь | Контекст API Avi, включающий текущий идентификатор сеанса и маркер CSRF. Это позволяет пользователю выполнить единый вход и повторно использовать сеанс. | ||
| api_version строка | Значение по умолчанию: "16.4.4" | Версия API Avi для использования с API Avi и объектами. | |
| apic_contract_graph строка | Имя контракта/графа, связанного с виртуальной службой. Должно быть в формате <имя_контракта> <имя_графа>. Это применимо только для режима интеграции служб с контроллером cisco apic. Поле введено в 17.2.12, 18.1.2. | ||
| application_profile_ref строка | Включить функции, специфичные для прикладного уровня, для виртуальной службы. Это ссылка на объект типа applicationprofile. | ||
| auto_allocate_floating_ip булево |
| Автоматическое выделение плавающего/упругого IP-адреса из инфраструктуры облака. Поле устарело в версии 17.1.1. | |
| auto_allocate_ip булево |
| Автоматическое выделение VIP-адреса из предоставленной подсети. Поле устарело в версии 17.1.1. | |
| availability_zone строка | Зона доступности для размещения виртуальной службы. Поле устарело в версии 17.1.1. | ||
| avi_allocated_fip булево |
| (внутреннее использование) выделение FIP Avi в инфраструктуре облака. Поле устарело в версии 17.1.1. | |
| avi_allocated_vip булево |
| (внутреннее использование) выделение VIP Avi в инфраструктуре облака. Поле устарело в версии 17.1.1. | |
| avi_api_patch_op строка |
| Операция исправления, используемая при использовании avi_api_update_method как исправление. | |
| avi_api_update_method строка |
| Метод по умолчанию для обновления объекта — HTTP PUT. Установка в patch переопределит это поведение, чтобы использовать HTTP PATCH. | |
| avi_credentials словарь | Словарь учетных данных Avi, который можно использовать вместо перечисления данных входа в контроллер Avi. | ||
| api_version строка | Значение по умолчанию: "16.4.4" | Версия контроллера Avi | |
| controller строка | IP-адрес или FQDN контроллера Avi | ||
| csrftoken строка | Токен csrf контроллера Avi API для повторного использования существующего сеанса с идентификатором сеанса | ||
| password строка | Пароль контроллера 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 в качестве факта. | |
| azure_availability_set строка | (внутреннее использование) применимо только для Azure. Набор доступности Azure, к которому связана эта VS. Внутренне устанавливается подключением к облаку. Поле введено в 17.2.12, 18.1.2. | ||
| bulk_sync_kvcache булево |
| (эта функция находится в стадии бета-тестирования). Синхронизация кэша значений ключей с новым сеансом при масштабировании VS. Например, сеансы SSL хранятся в кэше значений ключей VS. При масштабировании VS информация о сеансе SSL синхронизируется с новым SE, что позволяет повторно использовать существующие сеансы SSL на новом SE. Поле введено в 17.2.7, 18.1.1. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| client_auth строка | Настройки аутентификации HTTP для защищенных ресурсов. | ||
| close_client_conn_on_config_update булево |
| Закрыть подключение клиента при обновлении конфигурации VS. Поле введено в 17.2.4. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| cloud_config_cksum строка | Контрольная сумма конфигурации облака для VS. Внутренне устанавливается подключением к облаку. | ||
| cloud_ref строка | Это ссылка на объект типа cloud. | ||
| cloud_type строка | Варианты перечисления — cloud_none, cloud_vcenter, cloud_openstack, cloud_aws, cloud_vca, cloud_apic, cloud_mesos, cloud_linuxserver, cloud_docker_ucp, cloud_rancher, cloud_oshift_k8s, cloud_azure, cloud_gcp. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как CLOUD_NONE. | ||
| connections_rate_limit строка | Ограничить скорость входящих подключений к этой виртуальной службе. | ||
| content_rewrite строка | Профиль, используемый для сопоставления и переписывания строк в теле запроса и/или ответа. | ||
| controller строка | Значение по умолчанию: "" | IP-адрес или имя хоста контроллера. Значение по умолчанию — переменная окружения AVI_CONTROLLER. | |
| created_by строка | Имя создателя. | ||
| delay_fairness булево |
| Выберите алгоритм для справедливости QoS. Это определяет, как несколько виртуальных служб, разделяющих одни и те же движки служб, будут упорядочивать трафик при перегрузке сети. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| description строка | Пользовательское описание объекта. | ||
| discovered_network_ref строка | (внутреннее использование) обнаруженные сети, обеспечивающие возможность доступа для IP-адреса виртуальной службы, направленной на клиента. Это поле устарело. Это ссылка на объект типа сеть. Поле устарело в версии 17.1.1. | ||
| discovered_networks string | (internal-use) открытые сети, обеспечивающие доступность внешнего IP-адреса виртуальной службы. Это поле используется внутри Avi, не редактируется пользователем. Поле устарело в версии 17.1.1. | ||
| discovered_subnet string | (internal-use) открытые подсети, обеспечивающие доступность внешнего IP-адреса виртуальной службы. Это поле устарело. Поле устарело в версии 17.1.1. | ||
| dns_info string | Данные, специфичные для обнаружения служб, включая полное доменное имя, тип и время жизни записи DNS. Обратите внимание, что разрешено использовать только одно из настроек fqdn и dns_info. | ||
| dns_policies string | Политики DNS, применяемые к трафику DNS виртуальной службы. Поле добавлено в версии 17.1.1. | ||
| east_west_placement boolean |
| Принудительное размещение на всех SE в группе служб (только режим Mesos). Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| enable_autogw boolean |
| Трафик ответа клиентам будет отправлен обратно на исходный MAC-адрес соединения, а не статически отправлен на шлюз по умолчанию. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как True. | |
| enable_rhi boolean |
| Включить инъекцию состояния маршрута, используя конфигурацию BGP в контексте VRF. | |
| enable_rhi_snat boolean |
| Включить инъекцию состояния маршрута для адреса плавающего IP, перенаправленного по источнику, используя конфигурацию BGP в контексте VRF. | |
| enabled boolean |
| Включить или отключить виртуальную службу. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как True. | |
| error_page_profile_ref string | Профиль страницы ошибок, который будет использоваться для этой виртуальной службы. Этот профиль используется для отправки настраиваемой страницы ошибок клиенту, сгенерированной прокси-сервером. Это ссылка на объект типа errorpageprofile. Поле добавлено в версии 17.2.4. | ||
| floating_ip string | Плавающий IP-адрес для ассоциации с этой виртуальной службой. Поле устарело в версии 17.1.1. | ||
| floating_subnet_uuid string | Если auto_allocate_floating_ip имеет значение true и существует более одной подсети плавающих IP-адресов, то подсеть для выделения адреса плавающего IP-адреса. Это поле применимо только в случае, если виртуальная служба принадлежит облаку OpenStack или AWS. В облаках OpenStack или AWS необходимо при выборе автовыделения плавающего IP-адреса. Поле устарело в версии 17.1.1. | ||
| flow_dist string | Критерии распределения потоков между SE. Варианты перечисления — LOAD_AWARE, CONSISTENT_HASH_SOURCE_IP_ADDRESS, CONSISTENT_HASH_SOURCE_IP_ADDRESS_AND_PORT. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как LOAD_AWARE. | ||
| flow_label_type string | Критерии для маркировки потоков. Варианты перечисления — NO_LABEL, APPLICATION_LABEL, SERVICE_LABEL. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как NO_LABEL. | ||
| fqdn string | Разрешаемый DNS, полное доменное имя виртуальной службы. Разрешено использовать только одну из конфигураций «fqdn» и «dns_info». | ||
| host_name_xlate string | Перевести имя хоста, отправленное серверам, на это значение. Перевести имя хоста, отправленное серверами, обратно на значение, используемое клиентом. | ||
| http_policies string | Применяемые политики HTTP к трафику данных виртуальной службы. | ||
| ign_pool_net_reach boolean |
| Игнорировать ограничения на доступность сети серверов пула для размещения виртуальной службы. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| ip_address string | IP-адрес виртуальной службы. Поле устарело в версии 17.1.1. | ||
| ipam_network_subnet string | Подсеть и/или сеть для выделения IP-адреса виртуальной службы модулем поставщика IPAM. Поле устарело в версии 17.1.1. | ||
| l4_policies string | Применяемые политики L4 к трафику данных виртуальной службы. Поле добавлено в версии 17.2.7. | ||
| limit_doser boolean |
| Ограничить потенциальных атакующих DoS, которые значительно превышают max_cps_per_client, до доли max_cps_per_client на некоторое время. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| max_cps_per_client string | Максимальное количество подключений в секунду на IP-адрес клиента. Допустимые значения — 10–1000. Специальные значения — 0 — «неограниченно». Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 0. | ||
| microservice_ref string | Микрослужба, представляющая виртуальную службу. Это ссылка на объект типа microservice. | ||
| min_pools_up string | Минимальное количество активных пулов для обозначения vs как активного. Поле добавлено в версии 18.2.1, 17.2.12. | ||
| name string / обязательно | Имя виртуальной службы. | ||
| network_profile_ref string | Определяет настройки сети, такие как протокол, TCP или UDP, и связанные параметры для протокола. Это ссылка на объект типа networkprofile. | ||
| network_ref string | Вручную переопределить сеть, в которой размещена виртуальная служба. Это ссылка на объект типа network. Поле устарело в версии 17.1.1. | ||
| network_security_policy_ref string | Политики сетевой безопасности для виртуальной службы. Это ссылка на объект типа networksecuritypolicy. | ||
| nsx_securitygroup string | Список групп безопасности NSX, представляющих клиентов, которые могут получить доступ к виртуальному IP-адресу виртуальной службы. Поле добавлено в версии 17.1.1. | ||
| password string | По умолчанию: "" | Пароль пользователя Avi в контроллере Avi. Значение по умолчанию — переменная среды AVI_PASSWORD. | |
| performance_limits string | Необязательные настройки, которые определяют ограничения производительности, такие как максимальное количество подключений или пропускная способность. | ||
| pool_group_ref string | Группа пулов — объект, содержащий пулы. Это ссылка на объект типа poolgroup. | ||
| pool_ref string | Пул — объект, содержащий целевые серверы и связанные атрибуты, такие как балансировка нагрузки и персистентность. Это ссылка на объект типа pool. | ||
| port_uuid string | (internal-use) сетевой порт, назначенный IP-адресу виртуальной службы. Поле устарело в версии 17.1.1. | ||
| remove_listening_port_on_vs_down boolean |
| Удалить порт прослушивания, если виртуальная служба выключена. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| requests_rate_limit string | Ограничить скорость входящих запросов для этой виртуальной службы. | ||
| saml_sp_config string | Настройка SAML для конкретного приложения. Поле добавлено в версии 18.2.3. | ||
| scaleout_ecmp boolean |
| Отключить перераспределение потоков между сервисными движками для виртуальной службы. Включить, если сама сеть выполняет хэширование потоков с помощью ECMP в средах, таких как GCP. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| se_group_ref string | Группа сервисных движков, используемая для этой виртуальной службы. Переход в новую группу се оказывает прерывистое действие на существующие соединения для этой vs. Это ссылка на объект типа serviceenginegroup. | ||
| security_policy_ref string | Политика безопасности, применяемая к трафику виртуальной службы. Эта политика используется для выполнения мер безопасности, таких как смягчение атак распределенного отказа в обслуживании (DDoS). Это ссылка на объект типа securitypolicy. Поле добавлено в версии 18.2.1. | ||
| server_network_profile_ref string | Определяет профиль сетевых настроек для серверной стороны подключений, проксируемых через TCP. Оставьте пустым, чтобы использовать те же настройки, что и для клиентской стороны соединения. Это ссылка на объект типа networkprofile. | ||
| service_metadata string | Метаданные, относящиеся к службе, предоставляемой этой виртуальной службой. В средах openshift/kubernetes хранится информация о подсистемах egress. Любой пользовательский ввод в это поле будет перезаписан Avi vantage. | ||
| service_pool_select string | Выбор пула на основе порта назначения. | ||
| services string | Список служб, определённых для этой виртуальной службы. | ||
| sideband_profile string | Настройка канала для использования для этой виртуальной службы. Может использоваться для передачи трафика на VIP каналов для внешней проверки и т. п. | ||
| snat_ip string | Перенаправленные статические адреса источников для соединения с серверами на upstream. | ||
| sp_pool_refs string | Группы GSLB, используемые для управления функциональностью сохранения состояния сайта. Каждый пул сохранения состояния сайта содержит виртуальные сервисы во всех других сайтах, которые автоматически генерируются менеджером GSLB. Это поле только для чтения для пользователя. Это ссылка на объект типа пула. Поле введено в 17.2.2. | ||
| ssl_key_and_certificate_refs string | Выберите или создайте один или два сертификата (ec и/или rsa), которые будут представлены для подключений, завершённых ssl/tls. Это ссылка на объект типа sslkeyandcertificate. | ||
| ssl_profile_ref string | Определяет набор версий ssl и шифров для принятия подключений, завершённых ssl/tls. Это ссылка на объект типа sslprofile. | ||
| ssl_profile_selectors string | Выберите профиль ssl на основе соответствия IP-адресу клиента. Поле введено в 18.2.3. | ||
| ssl_sess_cache_avg_size string | Ожидаемое количество записей кэша ssl-сессий (может быть превышено). Допустимые значения: 1024-16383. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 1024. | ||
| sso_policy string | Политика аутентификации и авторизации клиента для виртуальной службы. Поле устарело в 18.2.3. Поле введено в 18.2.1. | ||
| sso_policy_ref string | Прикреплённая к виртуальной службе политика sso. Это ссылка на объект типа ssopolicy. Поле введено в 18.2.3. | ||
| state string |
| Состояние, которое должно быть применено к объекту. | |
| static_dns_records string | Список статических записей DNS, применённых к этой виртуальной службе. Это статические записи, и мониторинг работоспособности не выполняется для IP-адресов. | ||
| subnet string | Подсеть, обеспечивающая доступность IP виртуальной службы, ориентированной на клиента. Поле устарело в 17.1.1. | ||
| subnet_uuid string | Представляет подсеть для выделения адреса IP виртуальной службы при auto_allocate_ip=true. Применимо только в облаках openstack или aws. Это поле необходимо, если auto_allocate_ip=true. Поле устарело в 17.1.1. | ||
| tenant string | По умолчанию: "admin" | Имя клиента, используемого для всех вызовов API Avi и контекста объекта. | |
| tenant_ref string | Ссылка на объект типа tenant. | ||
| tenant_uuid string | По умолчанию: "" | UUID клиента, используемого для всех вызовов API Avi и контекста объекта. | |
| topology_policies string | Политики топологии, применяемые к трафику DNS виртуальной службы на основе алгоритма топологии GSLB. Поле введено в 18.2.3. | ||
| traffic_clone_profile_ref string | Сетевой сервер или список серверов для клонирования трафика. Это ссылка на объект типа trafficcloneprofile. Поле введено в 17.1.1. | ||
| traffic_enabled boolean |
| Переключатель для включения трафика виртуальной службы на назначенные сервисные движки. Эта настройка эффективна только при установленном флаге enabled в true. Поле введено в 17.2.8. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как True. | |
| type string | Укажите, является ли это обычной виртуальной службой или она является родительской или дочерней по отношению к виртуальной службе с поддержкой SNI. Варианты перечисления — VS_TYPE_NORMAL, VS_TYPE_VH_PARENT, VS_TYPE_VH_CHILD. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как VS_TYPE_NORMAL. | ||
| url string | URL контроллера Avi для объекта. | ||
| use_bridge_ip_as_vip boolean |
| Использовать IP-адрес моста в качестве VIP на каждом хосте в развертываниях mesos. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| use_vip_as_snat boolean |
| Использовать виртуальный IP-адрес в качестве IP-адреса перенаправления для мониторинга работоспособности и отправки трафика на серверы backend вместо IP-адреса интерфейса сервисного движка. Ограничение включения этого параметра состоит в том, что виртуальная служба не может быть настроена в режиме активное-активное HA. Для HA и бесперебойного обновления необходимо использовать многократное решение на базе DNS. Поле введено в 17.1.9, 17.2.3. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| username string | По умолчанию: "" | Имя пользователя, используемое для доступа к контроллеру Avi. Значение по умолчанию — переменная среды AVI_USERNAME. | |
| uuid string | UUID виртуальной службы. | ||
| vh_domain_name string | Точное имя, запрошенное из поля имени домена tls hello клиента с поддержкой SNI. Если это совпадает, родительский VS перенаправит подключение на этот дочерний VS. | ||
| vh_parent_vs_uuid string | Указывает виртуальную службу, действующую в качестве родительской виртуальной службы для виртуального хостинга (SNI). | ||
| vip string | Список IP-адресов виртуальной службы. При создании «совместно используемой виртуальной службы» используйте vsvip_ref для указания на общие ресурсы. Поле введено в 17.1.1. | ||
| vrf_context_ref string | Контекст виртуального маршрутизирующего контекста, к которому привязана виртуальная служба. Используется для обеспечения изоляции набора сетей, к которым подключено приложение. Это ссылка на объект типа vrfcontext. | ||
| vs_datascripts string | Сценарии обработки данных, применяемые к трафику данных виртуальной службы. | ||
| vsvip_cloud_config_cksum string | Контрольная сумма конфигурации облака для vsvip. Внутренне устанавливается соединителем облака. Поле введено в 17.2.9, 18.1.2. | ||
| vsvip_ref string | В основном используется при создании совместно используемых виртуальных служб, это поле ссылается на ресурсы, которые могут быть совместно использованы в рамках нескольких виртуальных служб. Это ссылка на объект типа vsvip. Поле введено в 17.1.1. | ||
| waf_policy_ref string | Политика WAF для виртуальной службы. Это ссылка на объект типа wafpolicy. Поле введено в 17.2.1. | ||
| weight string | Вес качества обслуживания, назначаемый трафику, передаваемому из этой виртуальной службы. Более высокий вес придаст приоритет трафику по сравнению с другими виртуальными службами, использующими те же сервисные движки. Допустимые значения: 1-128. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 1. | ||
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления устройствами сети Avi см. на странице https://www.ansible.com/ansible-avi-networks.
Примеры
- name: Create SSL Virtual Service using Pool testpool2
community.network.avi_virtualservice:
controller: 10.10.27.90
username: admin
password: AviNetworks123!
name: newtestvs
state: present
performance_limits:
max_concurrent_connections: 1000
services:
- port: 443
enable_ssl: true
- port: 80
ssl_profile_ref: '/api/sslprofile?name=System-Standard'
application_profile_ref: '/api/applicationprofile?name=System-Secure-HTTP'
ssl_key_and_certificate_refs:
- '/api/sslkeyandcertificate?name=System-Default-Cert'
ip_address:
addr: 10.90.131.103
type: V4
pool_ref: '/api/pool?name=testpool2'
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращено | Описание |
|---|---|---|
| obj словарь | успех, изменено | Объект VirtualService (api/virtualservice) |
Авторы
- Gaurav Rastogi (@grastogi23) <grastogi@avinetworks.com>
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/network/avi_virtualservice_module.html