avi_virtualservice – Модуль для настройки VirtualService Avi RESTful Объекта
Описание
- Этот модуль используется для настройки объекта VirtualService
- больше примеров на https://github.com/avinetworks/devops
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- avisdk
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| active_standby_se_tag - | Эта конфигурация применяется только в том случае, если виртуальная служба находится в режиме резервирования активного/резервного состояния legacy и включена распределение нагрузки между активными и резервными. Это поле используется для маркировки виртуальной службы, чтобы виртуальные службы с одинаковой меткой использовали один и тот же активный сервис-движок. Виртуальные службы с различными метками будут иметь разные активные сервис-движки. Если один из сервис-движков в группе сервис-движков выходит из строя, все виртуальные службы будут использовать один и тот же активный сервис-движок. Перераспределение виртуальных служб может быть ручным или автоматическим при восстановлении вышедшего из строя сервис-движка. Перераспределение основано на свойстве автоматического перераспределения группы сервис-движков. Варианты перечисления — ACTIVE_STANDBY_SE_1, ACTIVE_STANDBY_SE_2. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как ACTIVE_STANDBY_SE_1. | ||
| allow_invalid_client_cert boolean добавлено в 2.9 |
| Обрабатывать запрос, даже если представлен недействительный сертификат клиента. Для обработки таких запросов необходимо использовать API datascript. Поле введено в 18.2.3. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| analytics_policy - | Определяет настройки аналитики для приложения. | ||
| analytics_profile_ref - | Указывает настройки, связанные с аналитикой. Это ссылка на объект типа analyticsprofile. | ||
| api_context dictionary добавлено в 2.5 | Контекст API Avi, включающий текущий идентификатор сеанса и маркер CSRF. Это позволяет пользователю выполнить единый вход и повторно использовать сеанс. | ||
| api_version string | Значение по умолчанию: "16.4.4" | Версия API Avi для использования с API Avi и объектами. | |
| apic_contract_graph - добавлено в 2.9 | Имя контракта/графа, связанного с виртуальной службой. Должно быть в формате «имя_контракта» «имя_графа». Применимо только для режима интеграции служб с контроллером cisco apic. Поле введено в 17.2.12, 18.1.2. | ||
| application_profile_ref - | Включить функции, специфичные для прикладного уровня, для виртуальной службы. Это ссылка на объект типа applicationprofile. | ||
| auto_allocate_floating_ip boolean |
| Автоматическое выделение плавающего/упругого IP-адреса из инфраструктуры облака. Поле устарело в 17.1.1. | |
| auto_allocate_ip boolean |
| Автоматическое выделение VIP-адреса из указанной подсети. Поле устарело в 17.1.1. | |
| availability_zone - | Зона доступности для размещения виртуальной службы. Поле устарело в 17.1.1. | ||
| avi_allocated_fip boolean |
| (для внутреннего использования) IP-адрес, выделенный Avi в инфраструктуре облака. Поле устарело в 17.1.1. | |
| avi_allocated_vip boolean |
| (для внутреннего использования) VIP-адрес, выделенный Avi в инфраструктуре облака. Поле устарело в 17.1.1. | |
| avi_api_patch_op - добавлено в 2.5 |
| Операция обновления для использования при использовании avi_api_update_method в режиме patch. | |
| avi_api_update_method - добавлено в 2.5 |
| Метод обновления объекта по умолчанию — HTTP PUT. Установка в значение patch переопределит это поведение для использования HTTP PATCH. | |
| avi_credentials dictionary добавлено в 2.5 | Словарь учетных данных Avi, который может использоваться вместо перечисления данных входа в контроллер Avi. | ||
| api_version - | Значение по умолчанию: "16.4.4" | Версия контроллера Avi | |
| controller - | IP-адрес или SQDN контроллера Avi | ||
| csrftoken - | Маркер csrftoken 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 boolean добавлено в 2.6 |
| Отключает кеширование информации о сеансе Avi в качестве факта. | |
| azure_availability_set - добавлено в 2.9 | (для внутреннего использования), применимо только для Azure. Набор доступности Azure, к которому связана эта виртуальная служба. Внутренне устанавливается соединителем облака. Поле введено в 17.2.12, 18.1.2. | ||
| bulk_sync_kvcache boolean добавлено в 2.6 |
| (это бета-функция). Синхронизировать кеш значений ключей с новым сеансом при масштабировании виртуальной службы. Например, сеансы SSL хранятся с помощью кеша значений ключей виртуальной службы. При масштабировании виртуальной службы информация о сеансе SSL синхронизируется с новым сервис-движком, что позволяет повторно использовать существующие сеансы SSL на новом сервис-движке. Поле введено в 17.2.7, 18.1.1. Значение по умолчанию, если оно не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| client_auth - | Конфигурация аутентификации HTTP для защищенных ресурсов. | ||
| close_client_conn_on_config_update boolean добавлено в 2.5 |
| Закрыть подключение клиента при обновлении конфигурации виртуальной службы. Поле введено в 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 string | По умолчанию: "" | IP-адрес или имя хоста контроллера. Значение по умолчанию — переменная среды AVI_CONTROLLER. | |
| created_by - | Имя создателя. | ||
| delay_fairness boolean |
| Выбор алгоритма для обеспечения справедливости QoS. Это определяет, как несколько виртуальных служб, использующих одни и те же сервисные движки, будут назначать приоритет трафику при перегрузке сети. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| description - | Определяемое пользователем описание объекта. | ||
| discovered_network_ref - | (для внутреннего использования) обнаруженные сети, обеспечивающие доступность IP-адреса виртуальной службы для клиентов. Это поле устарело. Это ссылка на объект типа сеть. Поле устарело в версии 17.1.1. | ||
| discovered_networks - | (для внутреннего использования) обнаруженные сети, обеспечивающие доступность IP-адреса виртуальной службы для клиентов. Это поле используется внутри Avi и не редактируется пользователем. Поле устарело в версии 17.1.1. | ||
| discovered_subnet - | (для внутреннего использования) обнаруженные подсети, обеспечивающие доступность IP-адреса виртуальной службы для клиентов. Это поле устарело. Поле устарело в версии 17.1.1. | ||
| dns_info - | Данные, специфичные для службы обнаружения служб, включая полное доменное имя, тип и время жизни записи DNS. Обратите внимание, что разрешено только одно из значений: fqdn и dns_info. | ||
| dns_policies - добавлен в 2.4 | Применяемые политики 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 - добавлен в 2.5 | Профиль страницы ошибок, используемый для данной виртуальной службы. Этот профиль используется для отправки на клиент пользовательской страницы ошибок, сгенерированной прокси-сервером. Это ссылка на объект типа errorpageprofile. Поле введено в версии 17.2.4. | ||
| floating_ip - | Плавающий IP-адрес для ассоциации с этой виртуальной службой. Поле устарело в версии 17.1.1. | ||
| floating_subnet_uuid - | Если auto_allocate_floating_ip имеет значение true, и существует более одной подсети плавающего IP-адреса, то подсети для выделения плавающего IP-адреса. Это поле применимо только в том случае, если виртуальная служба принадлежит облаку OpenStack или AWS. В облаках OpenStack или AWS требуется, когда выбран auto_allocate_floating_ip. Поле устарело в версии 17.1.1. | ||
| flow_dist - | Критерии распределения потоков между серверами. Варианты перечисления — LOAD_AWARE, CONSISTENT_HASH_SOURCE_IP_ADDRESS, CONSISTENT_HASH_SOURCE_IP_ADDRESS_AND_PORT. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как LOAD_AWARE. | ||
| flow_label_type - | Критерии для маркировки потоков. Варианты перечисления — NO_LABEL, APPLICATION_LABEL, SERVICE_LABEL. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как NO_LABEL. | ||
| fqdn - | Разрешаемое DNS, полное доменное имя виртуальной службы. Разрешено только одно из значений: 'fqdn' и 'dns_info'. | ||
| host_name_xlate - | Преобразовать имя хоста, отправленное на серверы, в это значение. Преобразовать имя хоста, отправленное серверами, обратно в значение, используемое клиентом. | ||
| http_policies - | Применяемые политики HTTP к трафику данных виртуальной службы. | ||
| ign_pool_net_reach boolean |
| Игнорировать ограничения на доступность сети пула серверов для размещения виртуальной службы. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| ip_address - | IP-адрес виртуальной службы. Поле устарело в версии 17.1.1. | ||
| ipam_network_subnet - | Подсеть и/или сеть для выделения IP-адреса виртуальной службы модулем поставщика IPAM. Поле устарело в версии 17.1.1. | ||
| l4_policies - добавлен в 2.6 | Применяемые политики L4 к трафику данных виртуальной службы. Поле введено в версии 17.2.7. | ||
| limit_doser boolean |
| Ограничить потенциальных атакующих DoS, которые значительно превышают max_cps_per_client, до части max_cps_per_client на некоторое время. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| max_cps_per_client - | Максимальное количество подключений в секунду на IP-адрес клиента. Допустимые значения: 10-1000. Специальные значения: 0 — "неограниченно". Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 0. | ||
| microservice_ref - | Микросервис, представляющий виртуальную службу. Это ссылка на объект типа microservice. | ||
| min_pools_up - added in 2.9 | Минимальное количество активных пулов для маркировки vs как активного. Поле введено в 18.2.1, 17.2.12. | ||
| name - / обязательно | Имя виртуальной службы. | ||
| network_profile_ref - | Определяет сетевые параметры, такие как протокол, tcp или udp, и связанные параметры для протокола. Это ссылка на объект типа networkprofile. | ||
| network_ref - | Вручную переопределяет сеть, на которой размещена виртуальная служба. Это ссылка на объект типа network. Поле устарело в 17.1.1. | ||
| network_security_policy_ref - | Политики сетевой безопасности для виртуальной службы. Это ссылка на объект типа networksecuritypolicy. | ||
| nsx_securitygroup - added in 2.4 | Список nsx групп сервисов, представляющих клиентов, которые могут получить доступ к виртуальному IP-адресу виртуальной службы. Поле введено в 17.1.1. | ||
| password строка | По умолчанию: "" | Пароль пользователя Avi в контроллере Avi. Значение по умолчанию — переменная окружения AVI_PASSWORD. | |
| performance_limits - | Необязательные параметры, которые определяют ограничения производительности, такие как максимальное количество подключений или пропускная способность. | ||
| pool_group_ref - | Группа пулов — это объект, содержащий пулы. Это ссылка на объект типа poolgroup. | ||
| pool_ref - | Пул — это объект, содержащий серверы назначения и связанные атрибуты, такие как балансировка нагрузки и сохранение состояния. Это ссылка на объект типа pool. | ||
| port_uuid - | (внутреннее использование) сетевой порт, назначенный виртуальному IP-адресу виртуальной службы. Поле устарело в 17.1.1. | ||
| remove_listening_port_on_vs_down булево |
| Удалить порт прослушивания, если виртуальная служба неактивна. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| requests_rate_limit - | Ограничить скорость входящих запросов для этой виртуальной службы. | ||
| saml_sp_config - added in 2.9 | Настройка saml конфигурации, специфичная для приложения. Поле введено в 18.2.3. | ||
| scaleout_ecmp булево |
| Отключить перераспределение потоков между движками службы для виртуальной службы. Включить, если сама сеть выполняет хеширование потоков с ecmp в таких средах, как gcp. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| se_group_ref - | Группа движков службы, используемая для этой виртуальной службы. Переход в новую группу движков нарушает существующие подключения для данной vs. Это ссылка на объект типа serviceenginegroup. | ||
| security_policy_ref - added in 2.9 | Политика безопасности, применяемая к трафику виртуальной службы. Эта политика используется для выполнения таких действий по безопасности, как смягчение атак распределённого отказа в обслуживании (DDoS). Это ссылка на объект типа securitypolicy. Поле введено в 18.2.1. | ||
| server_network_profile_ref - | Определяет профиль сетевых настроек для серверной стороны проксированных соединений TCP. Оставить пустым, чтобы использовать те же настройки, что и для клиентской стороны соединения с vs. Это ссылка на объект типа networkprofile. | ||
| service_metadata - added in 2.4 | Метаданные, относящиеся к службе, предоставляемой этой виртуальной службой. В средах openshift/kubernetes сохраняется информация о выходящих подсистемах. Любой пользовательский ввод в это поле будет перезаписан Avi vantage. | ||
| service_pool_select - | Выбрать пул на основе порта назначения. | ||
| services - | Список служб, определённых для этой виртуальной службы. | ||
| sideband_profile - added in 2.4 | Настройка sideband, используемая для данной virtualservice. Может использоваться для отправки трафика в sideband vips для внешнего анализа и т.д. | ||
| snat_ip - | Виртуальный адрес источника (адреса) для соединения с серверами по входящему каналу. | ||
| sp_pool_refs - added in 2.5 | GSLB пулы, используемые для управления функциональностью сохранения сайта. Каждый пул сохранения сайта содержит виртуальные сервисы во всех других сайтах, автоматически сгенерированные менеджером gslb. Это поле только для чтения для пользователя. Это ссылка на объект типа pool. Поле введено в 17.2.2. | ||
| ssl_key_and_certificate_refs - | Выбрать или создать один или два сертификата, ec и/или rsa, которые будут представлены для соединений ssl/tls с завершением на стороне клиента. Это ссылка на объект типа sslkeyandcertificate. | ||
| ssl_profile_ref - | Определяет набор версий ssl и шифров, принимаемых для соединений ssl/tls с завершением на стороне клиента. Это ссылка на объект типа sslprofile. | ||
| ssl_profile_selectors - added in 2.9 | Выбрать профиль ssl на основе соответствия IP-адреса клиента. Поле введено в 18.2.3. | ||
| ssl_sess_cache_avg_size - | Ожидаемое количество записей кэша ssl-сессий (возможно превышение). Допустимые значения - 1024-16383. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 1024. | ||
| sso_policy - added in 2.9 | Политика аутентификации и авторизации клиента для виртуальной службы. Поле устарело в 18.2.3. Поле введено в 18.2.1. | ||
| sso_policy_ref - added in 2.9 | Политика SSO, прикреплённая к виртуальной службе. Это ссылка на объект типа ssopolicy. Поле введено в 18.2.3. | ||
| state - |
| Состояние, которое должно быть применено к сущности. | |
| static_dns_records - | Список статических записей DNS, применённых к этой виртуальной службе. Это статические записи, и никакой проверки работоспособности не выполняется по отношению к IP-адресам. | ||
| subnet - | Подсеть, обеспечивающая доступность IP-адреса виртуальной службы, обращённого к клиенту. Поле устарело в 17.1.1. | ||
| subnet_uuid - | Представляет подсеть для выделения IP-адреса виртуальной службы при auto_allocate_ip = true. Применимо только в облаках OpenStack или AWS. Это поле обязательно, если auto_allocate_ip = true. Поле устарело в 17.1.1. | ||
| арендатор строка | По умолчанию: "админ" | Имя арендатора, используемого для всех вызовов API Avi и контекста объекта. | |
| tenant_ref - | Это ссылка на объект типа арендатор. | ||
| tenant_uuid строка | По умолчанию: "" | UUID арендатора, используемого для всех вызовов API Avi и контекста объекта. | |
| topology_policies - добавлен в 2.9 | Политики топологии, применяемые к трафику DNS виртуальной службы на основе алгоритма топологии gslb. Поле добавлено в 18.2.3. | ||
| traffic_clone_profile_ref - добавлен в 2.4 | Сеть серверов или список серверов для клонирования трафика. Это ссылка на объект типа trafficcloneprofile. Поле добавлено в 17.1.1. | ||
| traffic_enabled логическое добавлен в 2.6 |
| Переключатель для включения трафика виртуальной службы на назначенных ей серверных узлах. Это значение действует только в случае, если флаг enabled установлен в значение true. Поле добавлено в 17.2.8. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как True. | |
| type - | Указывает, является ли это обычной виртуальной службой или она является родительской или дочерней службой виртуальной службы с поддержкой sni. Варианты перечисления - VS_TYPE_NORMAL, VS_TYPE_VH_PARENT, VS_TYPE_VH_CHILD. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как VS_TYPE_NORMAL. | ||
| url - | URL контроллера Avi для объекта. | ||
| use_bridge_ip_as_vip логическое |
| Использовать IP-адрес моста в качестве VIP на каждом узле в развертываниях Mesos. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| use_vip_as_snat логическое добавлен в 2.5 |
| Использовать виртуальный IP-адрес в качестве IP-адреса SNAT для мониторинга работоспособности и отправки трафика на серверы-получатели вместо IP-адреса интерфейса серверного узла. Ограничение использования этого параметра заключается в том, что виртуальная служба не может быть настроена в режиме активный/активный HA. Для целей HA и бесперебойного обновления необходимо использовать многоадресное решение на основе DNS. Поле добавлено в 17.1.9,17.2.3. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | |
| username строка | По умолчанию: "" | Имя пользователя, используемое для доступа к контроллеру Avi. Значение по умолчанию — переменная среды AVI_USERNAME. | |
| uuid - | Uuid виртуальной службы. | ||
| vh_domain_name - | Точное имя, запрошенное полем имени домена sni-активированного TLS-сертификата клиента. Если это совпадает, родительская виртуальная служба передаст соединение дочерней службе. | ||
| vh_parent_vs_uuid - | Указывает виртуальную службу, выступающую в роли родительской службы виртуального хостинга (sni). | ||
| vip - добавлен в 2.4 | Список IP-адресов виртуальных служб. При создании «совместно используемой виртуальной службы» используйте vsvip_ref для указания на общие сущности. Поле добавлено в 17.1.1. | ||
| vrf_context_ref - | Контекст виртуальной маршрутизации, к которому привязана виртуальная служба. Это используется для изоляции набора сетей, к которым подключено приложение. Это ссылка на объект типа vrfcontext. | ||
| vs_datascripts - | Сценарии данных, применяемые к трафику данных виртуальной службы. | ||
| vsvip_cloud_config_cksum - добавлен в 2.9 | Контрольная сумма конфигурации облака для vsvip. Внутренне устанавливается соединителем облака. Поле добавлено в 17.2.9, 18.1.2. | ||
| vsvip_ref - добавлен в 2.4 | В основном используется при создании совместно используемых виртуальных служб, это поле ссылается на сущности, которые можно использовать совместно между виртуальными службами. Это ссылка на объект типа vsvip. Поле добавлено в 17.1.1. | ||
| waf_policy_ref - добавлен в 2.5 | Политика WAF для виртуальной службы. Это ссылка на объект типа wafpolicy. Поле добавлено в 17.2.1. | ||
| weight - | Вес качества обслуживания, который необходимо назначить трафику, передаваемому через эту виртуальную службу. Более высокий вес будет приоритезировать трафик по сравнению с другими виртуальными службами, которые используют одни и те же серверные узлы. Допустимые значения — от 1 до 128. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 1. | ||
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления устройствами сети Avi см. на странице https://www.ansible.com/ansible-avi-networks.
Примеры
- name: Create SSL Virtual Service using Pool testpool2
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) |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- 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.9/modules/avi_virtualservice_module.html