avi_virtualservice - Модуль для настройки VirtualService Avi RESTful Объекта
Новый в версии 2.3.
Обзор
- Этот модуль используется для настройки объекта VirtualService
- больше примеров на https://github.com/avinetworks/devops
Требования (к хосту, на котором выполняется модуль)
- avisdk
Параметры
| parameter | required | default | choices | comments |
|---|---|---|---|---|
| active_standby_se_tag | no | Данная конфигурация применяется только в случае, если виртуальная служба находится в режиме резервирования активной/пассивной (legacy) и включена балансировка нагрузки между активной и резервной. Это поле используется для маркировки виртуальной службы, чтобы виртуальные службы с одинаковой меткой использовали один и тот же активный сервис-инженер. Виртуальные службы с различными метками будут иметь разные активные сервис-инженеры. Если один из сервис-инженеров в группе сервис-инженеров выходит из строя, все виртуальные службы будут использовать один и тот же активный сервис-инженер. Перераспределение виртуальных служб может быть ручным или автоматическим при восстановлении вышедшего из строя сервис-инженера. Перераспределение основано на свойстве автоматического перераспределения группы сервис-инженеров. Варианты перечисления — ACTIVE_STANDBY_SE_1, ACTIVE_STANDBY_SE_2. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как ACTIVE_STANDBY_SE_1. | ||
| analytics_policy | no | Определяет параметры аналитики для приложения. | ||
| analytics_profile_ref | no | Устанавливает параметры, связанные с аналитикой. Это ссылка на объект типа analyticsprofile. | ||
| api_version | no | Версия Avi API для использования Avi API и объектов. | ||
| application_profile_ref | no | Включить функции, специфичные для прикладного уровня, для виртуальной службы. Это ссылка на объект типа applicationprofile. | ||
| auto_allocate_floating_ip | no | Автоматическое выделение плавающего/упругого IP-адреса из инфраструктуры облака. Поле устарело в версии 17.1.1. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| auto_allocate_ip | no | Автоматическое выделение VIP-адреса из указанной подсети. Поле устарело в версии 17.1.1. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| availability_zone | no | Доступная зона для размещения виртуальной службы. Поле устарело в версии 17.1.1. | ||
| avi_allocated_fip | no | (для внутреннего использования) плавающий IP-адрес, выделенный Avi в инфраструктуре облака. Поле устарело в версии 17.1.1. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| avi_allocated_vip | no | (для внутреннего использования) VIP-адрес, выделенный Avi в инфраструктуре облака. Поле устарело в версии 17.1.1. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| client_auth | no | Конфигурация аутентификации HTTP для защищённых ресурсов. | ||
| cloud_config_cksum | no | Контрольная сумма конфигурации облака для VS. Внутренне устанавливается облачным коннектором. | ||
| cloud_ref | no | Это ссылка на объект типа cloud. | ||
| cloud_type | no | Варианты перечисления — cloud_none, cloud_vcenter, cloud_openstack, cloud_aws, cloud_vca, cloud_apic, cloud_mesos, cloud_linuxserver, cloud_docker_ucp, cloud_rancher, cloud_oshift_k8s. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как CLOUD_NONE. | ||
| connections_rate_limit | no | Ограничить скорость входящих подключений к этой виртуальной службе. | ||
| content_rewrite | no | Профиль, используемый для сопоставления и переписывания строк в теле запроса и/или ответа. | ||
| controller | no | IP-адрес или имя хоста контроллера. Значение по умолчанию — переменная среды AVI_CONTROLLER. | ||
| created_by | no | Имя создателя. | ||
| delay_fairness | no | Выберите алгоритм для справедливости QoS. Это определяет, как несколько виртуальных служб, использующих одни и те же сервис-инженеры, будут отдавать приоритет трафику при перегрузке сети. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| description | no | Определённое пользователем описание объекта. | ||
| discovered_network_ref | no | (для внутреннего использования) обнаруженные сети, обеспечивающие доступность IP-адреса виртуальной службы, направленного на клиента. Это поле устарело. Это ссылка на объект типа сеть. Поле устарело в версии 17.1.1. | ||
| discovered_networks | no | (для внутреннего использования) обнаруженные сети, обеспечивающие доступность IP-адреса виртуальной службы, направленного на клиента. Это поле используется внутренне Avi и не может быть изменено пользователем. Поле устарело в версии 17.1.1. | ||
| discovered_subnet | no | (для внутреннего использования) обнаруженные подсети, обеспечивающие доступность IP-адреса виртуальной службы, направленного на клиента. Это поле устарело. Поле устарело в версии 17.1.1. | ||
| dns_info | no | Данные, специфичные для обнаружения служб, включая полное доменное имя, тип и время жизни записи DNS. Обратите внимание, что разрешено только одно из настроек fqdn и dns_info. | ||
| dns_policies (added in 2.4) | no | Политики DNS, применяемые к трафику DNS виртуальной службы. Поле введено в версии 17.1.1. | ||
| east_west_placement | no | Принудительное размещение на всех се в группе служб (только режим mesos). Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| enable_autogw | no | Трафик ответа клиентам будет отправлен обратно по исходному MAC-адресу подключения, а не статически отправлен по шлюзу по умолчанию. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как True. | ||
| enable_rhi | no | Включить инъекцию состояния маршрута с использованием конфигурации BGP в контексте VRF. | ||
| enable_rhi_snat | no | Включить инъекцию состояния маршрута для адресов плавающего IP-адреса с source NAT с использованием конфигурации BGP в контексте VRF. | ||
| enabled | no | Включить или выключить виртуальную службу. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как True. | ||
| floating_ip | no | Плавающий IP-адрес, который нужно связать с этой виртуальной службой. Поле устарело в версии 17.1.1. | ||
| floating_subnet_uuid | no | Если auto_allocate_floating_ip имеет значение true и существует более одной подсети плавающего IP-адреса, то подсеть для выделения плавающего IP-адреса. Это поле применимо только в том случае, если виртуальная служба принадлежит облаку openstack или aws. В openstack или aws облаке оно требуется при выборе auto_allocate_floating_ip. Поле устарело в версии 17.1.1. | ||
| flow_dist | no | Критерии распределения потоков между сервис-инженерами. Варианты перечисления — LOAD_AWARE, CONSISTENT_HASH_SOURCE_IP_ADDRESS, CONSISTENT_HASH_SOURCE_IP_ADDRESS_AND_PORT. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как LOAD_AWARE. | ||
| flow_label_type | no | Критерии маркировки потока. Варианты перечисления — NO_LABEL, SERVICE_LABEL. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как NO_LABEL. | ||
| fqdn | no | Разрешаемый DNS, полное доменное имя виртуальной службы. Разрешается только одна из конфигураций 'fqdn' и 'dns_info'. | ||
| host_name_xlate | no | Перевести имя хоста, отправленное серверам, на это значение. Перевести имя хоста, отправленное с серверов, обратно на значение, используемое клиентом. | ||
| http_policies | no | Политики HTTP, применяемые к трафику данных виртуальной службы. | ||
| ign_pool_net_reach | no | Игнорировать ограничения доступности сети пула серверов для размещения виртуальной службы. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| ip_address | no | IP-адрес виртуальной службы. Поле устарело в версии 17.1.1. | ||
| ipam_network_subnet | no | Подсеть и/или сеть для выделения IP-адреса виртуальной службы модулем поставщика IPAM. | ||
| limit_doser | no | Ограничить потенциальных злоумышленников, DOS, которые значительно превышают max_cps_per_client, до части max_cps_per_client в течение некоторого времени. Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как False. | ||
| max_cps_per_client | no | Максимальное количество подключений в секунду на IP-адрес клиента. Допустимые значения — 10–1000. Специальные значения — 0 — «без ограничений». Значение по умолчанию, если не указано в API или модуле, Avi Controller интерпретирует как 0. | ||
| microservice_ref | no | Микрослужба, представляющая виртуальную службу. Это ссылка на объект типа microservice. | ||
| name | yes | Имя виртуальной службы. | ||
| network_profile_ref | no | Определяет параметры сети, такие как протокол, TCP или UDP, и соответствующие параметры протокола. Это ссылка на объект типа networkprofile. |
| network_ref | нет | Вручную переопределите сеть, на которой размещен виртуальный сервис. Это ссылка на объект типа network. Поле устарело в версии 17.1.1. | ||
| network_security_policy_ref | нет | Политики безопасности сети для виртуального сервиса. Это ссылка на объект типа networksecuritypolicy. | ||
| nsx_securitygroup (добавлен в 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 | нет | Ограничить скорость входящих запросов для этого виртуального сервиса. | ||
| scaleout_ecmp | нет | Отключить перераспределение потоков между движками сервисов для виртуального сервиса. Включить, если сама сеть выполняет хэширование потоков с ecmp в средах, таких как GCP. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как False. | ||
| se_group_ref | нет | Группа движков сервисов, которую нужно использовать для этого виртуального сервиса. Переход в новую группу движков сервисов приводит к прерыванию существующих подключений для этого виртуального сервиса. Это ссылка на объект типа serviceenginegroup. | ||
| server_network_profile_ref | нет | Определяет профиль настроек сети для серверной части подключений с TCP-проксированием. Оставьте пустым, чтобы использовать те же настройки, что и для клиентской стороны подключения к виртуальному сервису. Это ссылка на объект типа networkprofile. | ||
| service_metadata (добавлен в 2.4) | нет | Метаданные, относящиеся к службе, предоставляемой этим виртуальным сервисом. В средах openshift/kubernetes хранится информация о узлах egress. Любой ввод данных пользователем в это поле будет перезаписан vantage Avi. | ||
| service_pool_select | нет | Выбрать пул на основе порта назначения. | ||
| services | нет | Список служб, определенных для этого виртуального сервиса. | ||
| sideband_profile (добавлен в 2.4) | нет | Настройка канала для использования в этом виртуальном сервисе. Может использоваться для пересылки трафика виртуальным IP-адресам канала для внешней инспекции и т. д. | ||
| snat_ip | нет | Виртуальный IP-адрес источника (адреса), который используется для NAT-преобразования для upstream-соединения с серверами. | ||
| ssl_key_and_certificate_refs | нет | Выберите или создайте один или два сертификата (EC и/или RSA), которые будут представлены для подключений с SSL/TLS-терминацией. Это ссылка на объект типа sslkeyandcertificate. | ||
| ssl_profile_ref | нет | Определяет набор версий SSL и шифров для принятия подключений с SSL/TLS-терминацией. Это ссылка на объект типа sslprofile. | ||
| ssl_sess_cache_avg_size | нет | Ожидаемое количество записей кэша сеансов SSL (может быть превышено). Допустимые значения: 1024-16383. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 1024. | ||
| 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. | ||
| tenant | нет | админ | Имя клиента, используемое для всех вызовов API Avi и контекста объекта. | |
| tenant_ref | нет | Это ссылка на объект типа tenant. | ||
| tenant_uuid | нет | UUID клиента, используемого для всех вызовов API Avi и контекста объекта. | ||
| traffic_clone_profile_ref (добавлен в 2.4) | нет | Сетевые настройки сервера или список серверов для клонирования трафика. Это ссылка на объект типа trafficcloneprofile. Поле введено в версии 17.1.1. | ||
| 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. | ||
| username | нет | Имя пользователя, используемое для доступа к контроллеру Avi. Значение по умолчанию — переменная среды AVI_USERNAME. | ||
| uuid | нет | Uuid виртуального сервиса. | ||
| vh_domain_name | нет | Точное имя, запрошенное из поля доменного имени TLS hello с поддержкой SNI клиента. Если это совпадение, родительский виртуальный сервис перенаправит соединение на этот дочерний виртуальный сервис. | ||
| vh_parent_vs_uuid | нет | Указывает виртуальный сервис, выступающий в качестве родительского виртуального хостинга (SNI). | ||
| vip (добавлен в 2.4) | нет | Список виртуальных IP-адресов сервиса. При создании «совместного виртуального сервиса» используйте vsvip_ref для указания на общие сущности. Поле введено в версии 17.1.1. | ||
| vrf_context_ref | нет | Контекст виртуальной маршрутизации, к которому привязан виртуальный сервис. Используется для изоляции набора сетей, к которым подключено приложение. Это ссылка на объект типа vrfcontext. | ||
| vs_datascripts | нет | Сценарии данных, применяемые к данным трафика виртуального сервиса. | ||
| vsvip_ref (добавлен в 2.4) | нет | В основном используется при создании общих виртуальных сервисов, это поле относится к сущностям, которые можно разделить между виртуальными сервисами. Это ссылка на объект типа vsvip. Поле введено в версии 17.1.1. | ||
| weight | нет | Вес качества обслуживания, который нужно назначить трафику, передаваемому из этого виртуального сервиса. Более высокий вес даст приоритет трафику по сравнению с другими виртуальными сервисами, использующими те же движки сервисов. Значение по умолчанию, если не указано в API или модуле, интерпретируется контроллером Avi как 1. |
Примеры
- 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'
Значения возврата
Общие значения возврата описаны здесь Значения возврата, следующие поля уникальны для этого модуля:
| имя | описание | возвращаемое | тип | пример |
|---|---|---|---|---|
| объект | Объект VirtualService (api/virtualservice) | успех, изменение | словарь |
Состояние
Этот модуль помечен как предварительный, что означает, что он не гарантирует обратную совместимость.
Для помощи в разработке модулей, если вас это интересует, прочитайте Информация о сообществе и участие в разработке, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/avi_virtualservice_module.html