community.network.avi_virtualservice – Модуль для настройки объекта VirtualService Avi RESTful
Примечание
Этот плагин является частью коллекции community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в плейбуке укажите: community.network.avi_virtualservice.
Обзор
- Этот модуль используется для конфигурации объекта VirtualService
- дополнительные примеры на https://github.com/avinetworks/devops
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- avisdk
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| active_standby_se_tag строка | Эта конфигурация применяется только в том случае, если виртуальная служба находится в режиме резервирования active-standby и включено распределение нагрузки между активными и резервными. Это поле используется для маркировки виртуальной службы, чтобы виртуальные службы с одинаковой меткой использовали один и тот же активный движок сервиса. Виртуальные службы с разными метками будут иметь разные активные движки сервиса. Если один из движков сервиса в группе движков сервиса выходит из строя, все виртуальные службы будут использовать один и тот же активный движок сервиса. Перераспределение виртуальных служб может быть ручным или автоматическим при восстановлении вышедшего из строя движка сервиса. Перераспределение основано на свойстве автоматического перераспределения группы движков сервиса. Варианты перечисления — 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-токен API контроллера Avi для повторного использования существующего сеанса с идентификатором сеанса | ||
| password строка | Пароль контроллера Avi | ||
| port строка | Порт контроллера Avi | ||
| session_id строка | Идентификатор сеанса API контроллера Avi для повторного использования существующего сеанса с csrftoken | ||
| 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, к которому связана данная виртуальная служба. Внутренне устанавливается соединителем облака. Поле добавлено в версиях 17.2.12, 18.1.2. | ||
| bulk_sync_kvcache логическое значение |
| (это бета-функция). Синхронизация кэша ключевых значений с новым сеансом при масштабировании виртуальной службы. Например, сессии SSL хранятся с помощью кэша ключевых значений виртуальной службы. При масштабировании виртуальной службы информация о сессии SSL синхронизируется с новым движком сервиса, что позволяет повторно использовать существующие сессии SSL на новом движке сервиса. Поле добавлено в версиях 17.2.7, 18.1.1. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| client_auth строка | Настройка аутентификации HTTP для защищенных ресурсов. | ||
| close_client_conn_on_config_update логическое значение |
| Закрыть клиентское соединение при обновлении конфигурации виртуальной службы. Поле добавлено в версии 17.2.4. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| cloud_config_cksum строка | Контрольная сумма конфигурации облака для виртуальной службы. Внутренне устанавливается соединителем облака. | ||
| cloud_ref строка | Ссылка на объект типа облака. | ||
| 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 | (внутреннее использование) обнаруженные сети, обеспечивающие доступность для виртуального IP-адреса клиентской службы. Это поле используется внутри avi и не может быть отредактировано пользователем. Поле устарело в версии 17.1.1. | ||
| discovered_subnet string | (внутреннее использование) обнаруженные подсети, обеспечивающие доступность для виртуального IP-адреса клиентской службы. Это поле устарело. Поле устарело в версии 17.1.1. | ||
| dns_info string | Данные, специфичные для обнаружения служб, включая полное доменное имя, тип и время жизни записи DNS. Обратите внимание, что разрешено использовать только одно из значений fqdn и dns_info. | ||
| dns_policies string | Политики DNS, применяемые к трафику DNS виртуальной службы. Поле добавлено в версии 17.1.1. | ||
| east_west_placement boolean |
| Принудительное размещение на всех се в группе служб (только режим mesos). Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| enable_autogw boolean |
| Трафик ответов клиентам будет отправлен обратно по исходному MAC-адресу подключения, а не статически отправлен по шлюзу по умолчанию. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как True. | |
| enable_rhi boolean |
| Включить инъекцию состояния маршрута с помощью конфигурации bgp в контексте vrf. | |
| enable_rhi_snat boolean |
| Включить инъекцию состояния маршрута для плавающего IP-адреса с исходным NAT с помощью конфигурации 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 требуется при выборе auto_allocate_floating_ip. Поле устарело в версии 17.1.1. | ||
| flow_dist string | Критерии распределения потоков между се. Варианты перечисления — 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 | (внутреннее использование) сетевой порт, назначенный 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 | Группа движков служб, используемых для этой виртуальной службы. Переход в новую группу движков служб приведет к прерыванию существующих подключений для этой виртуальной службы. Это ссылка на объект типа serviceenginegroup. | ||
| security_policy_ref string | Политика безопасности, применяемая к трафику виртуальной службы. Эта политика используется для выполнения действий по безопасности, таких как смягчение атак типа распределенного отказа в обслуживании (DoS), и т. д. Это ссылка на объект типа securitypolicy. Поле добавлено в версии 18.2.1. | ||
| server_network_profile_ref string | Определяет профиль сетевых настроек для серверной части проксированных tcp-соединений. Оставьте пустым, чтобы использовать те же настройки, что и клиентская сторона соединения. Это ссылка на объект типа networkprofile. | ||
| service_metadata string | Метаданные, относящиеся к предоставляемой данной виртуальной службой услуге. В средах openshift/kubernetes хранится информация о pod'ах egress. Любой ввод пользователя в это поле будет перезаписан avi vantage. | ||
| service_pool_select string | Выбор пула на основе порта назначения. | ||
| services string | Список служб, определенных для данной виртуальной службы. | ||
| sideband_profile string | Настройка sideband, используемая для данной виртуальной службы. Может использоваться для отправки трафика на sideband виртуальные IP-адреса для внешнего анализа и т.д. | ||
| snat_ip string | Виртуальные плавающие адреса источника для подключения к серверам по upstream. | ||
| sp_pool_refs string | Группы Gslb, используемые для управления функциональностью site-persistence. Каждый пул site-persistence содержит виртуальные службы во всех других сайтах, автоматически сгенерированные менеджером gslb. Это поле для чтения только для пользователя. Это ссылка на объект типа pool. Поле введено в 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 | Default: "admin" | Имя арендатора, используемого для всех вызовов API Avi и контекста объекта. | |
| tenant_ref string | Это ссылка на объект типа tenant. | ||
| tenant_uuid string | Default: "" | UUID арендатора, используемого для всех вызовов API Avi и контекста объекта. | |
| topology_policies string | Политики топологии, применяемые к DNS-трафику виртуальной службы на основе алгоритма топологии gslb. Поле введено в 18.2.3. | ||
| traffic_clone_profile_ref string | Серверная сеть или список серверов для клонирования трафика. Это ссылка на объект типа trafficcloneprofile. Поле введено в 17.1.1. | ||
| traffic_enabled boolean |
| Ключ для включения трафика виртуальной службы на назначенные движки сервисов. Эта настройка эффективна только при включенном флаге enabled. Поле введено в 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-адреса SNAT для мониторинга состояния и отправки трафика на сервера-бекенды вместо IP-адреса интерфейса движка службы. Особенностью включения этого параметра является то, что виртуальная служба не может быть настроена в режиме актив-актив HA. Для целей HA и бесперебойного обновления необходимо использовать многоадресное решение на основе DNS. Поле введено в 17.1.9, 17.2.3. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| username string | Default: "" | Имя пользователя, используемое для доступа к контроллеру Avi. Значение по умолчанию - переменная среды AVI_USERNAME. | |
| uuid string | UUID виртуальной службы. | ||
| vh_domain_name string | Точное имя, запрошенное из поля имени домена tls hello клиента с поддержкой SNI. Если это совпадение, родительская VS перенаправит соединение на эту дочернюю VS. | ||
| vh_parent_vs_uuid string | Указывает виртуальную службу, действующую как родительская виртуальная служба с поддержкой виртуального хостинга (SNI). | ||
| vip string | Список IP-адресов виртуальной службы. При создании 'shared vs', используйте 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 | В основном используется при создании shared vs, это поле ссылается на сущности, которые могут быть совместно использованы между виртуальными службами. Это ссылка на объект типа 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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/network/avi_virtualservice_module.html