Spec-Zone.ru › Ansible 2.7

bigip_virtual_server – Управление виртуальными серверами LTM на BIG-IP

Новая версия с 2.1.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Управление виртуальными серверами LTM на BIG-IP.

Требования

Ниже приведены требования к хосту, на котором выполняется этот модуль.

  • f5-sdk >= 3.0.16

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
address_translation
boolean
добавлен в 2.6
    Варианты:
  • no
  • yes
Указывает, когда enabled, что система переводит адрес виртуального сервера.
Когда disabled, указывает, что система использует адрес без перевода.
Этот параметр полезен, когда система балансирует нагрузку устройств с одинаковым IP-адресом.
При создании нового виртуального сервера значение по умолчанию enabled.
default_persistence_profile
-
Профиль по умолчанию, управляющий сохранением сессий.
Если вы хотите удалить существующий профиль по умолчанию, укажите пустое значение; "". См. документацию для примера.
Когда type является dhcp, этот параметр будет проигнорирован.
description
-
Описание виртуального сервера.
destination
-
IP-адрес назначения виртуального сервера.
Необходимо, когда state равен present и виртуальный сервер не существует.
Когда type равен internal, этот параметр игнорируется. Для других типов он обязателен.

псевдонимы: address, ip
disabled_vlans
-
добавлен в 2.5
Список VLAN, которые нужно отключить. Если для раздела не указана VLAN, то используется опция partition этого модуля.
Этот параметр взаимоисключает параметры enabled_vlans.
enabled_vlans
-
добавлен в 2.2
Список VLAN, которые нужно включить. Когда используется VLAN с именем all, разрешаются все VLAN. VLAN могут быть указаны с или без ведущего раздела. Если для раздела не указана VLAN, то используется опция partition этого модуля.
Этот параметр взаимоисключает параметр disabled_vlans.
fallback_persistence_profile
-
добавлен в 2.3
Указывает профиль сохранения, который система должна использовать, если не может использовать указанный профиль по умолчанию.
Если вы хотите удалить существующий резервный профиль сохранения, укажите пустое значение; "". См. документацию для примера.
Если type является dhcp, этот параметр будет проигнорирован.
firewall_enforced_policy
-
добавлен в 2.6
Применяет указанную политику AFM к виртуальному серверу в принудительном режиме.
При создании нового виртуального сервера, если этот параметр не указан, принудительная политика отключена.
firewall_staged_policy
-
добавлен в 2.6
Применяет указанную политику AFM к виртуальному серверу в принудительном режиме.
Политика в режиме ожидания отображает результаты правил политики в журнале, но фактически не применяет правила к трафику.
При создании нового виртуального сервера, если этот параметр не указан, политика в режиме ожидания отключена.
-
ip_protocol
-
добавлен в 2.6
    Варианты:
  • ah
  • bna
  • esp
  • etherip
  • gre
  • icmp
  • ipencap
  • ipv6
  • ipv6-auth
  • ipv6-crypt
  • ipv6-icmp
  • isp-ip
  • mux
  • ospf
  • sctp
  • tcp
  • udp
  • udplite
Указывает имя сетевого протокола, который система должна использовать для направления трафика на этот виртуальный сервер.
При создании нового виртуального сервера, если этот параметр не указан, значение по умолчанию tcp.
Настройка Протокол недоступна, когда Тип выбран как Производительность (HTTP).
Значение этого аргумента может быть указано в его числовом значении или, для удобства, в нескольких именованных значениях. См. choices для примеров.
Список допустимых номеров IP-протоколов см. на этой странице https://en.wikipedia.org/wiki/List_of_IP_protocol_numbers
Если type равно dhcp, этот модуль заставит параметр ip_protocol иметь значение 17 (UDP).
irules
-
добавлен в 2.2
Список правил, которые применяются в порядке приоритета.
Если вы хотите удалить существующие iRules, укажите одно пустое значение; "". См. документацию для примера.
Если type равно dhcp, этот параметр будет проигнорирован.
Если type равно stateless, этот параметр будет проигнорирован.
Если type равно reject, этот параметр будет проигнорирован.
Если type равно internal, этот параметр будет проигнорирован.

псевдонимы: all_rules
metadata
-
добавлен в 2.5
Произвольные пары ключ/значение, которые можно прикрепить к пулу. Это полезно в ситуациях, когда необходимо добавить аннотации к виртуальному серверу, управляемому Ansible.
Имена ключей будут храниться в виде строк; это включает имена, которые являются числами.
Значения для всех ключей будут храниться в виде строк; это включает значения, которые являются числами.
Данные будут сохранены, а не временные.
name
- / обязательно
Имя виртуального сервера.

псевдонимы: vs
partition
-
добавлен в 2.5
По умолчанию:
"Общие"
Раздел устройства для управления ресурсами.
password
- / обязательно
Пароль учетной записи пользователя, используемой для подключения к BIG-IP.
Вы можете опустить этот параметр, установив переменную среды F5_PASSWORD.

псевдонимы: pass, pwd
policies
-
Указывает политики для виртуального сервера.
Если type равно dhcp, этот параметр будет проигнорирован.
Если type равно reject, этот параметр будет проигнорирован.
Если type равно internal, этот параметр будет проигнорирован.

псевдонимы: all_policies
pool
-
Пул по умолчанию для виртуального сервера.
Если вы хотите удалить существующий пул, укажите пустое значение; "". См. документацию для примера.
При создании нового виртуального сервера и type равно stateless, этот параметр обязателен.
Если type равно stateless, используемый pool, не должен содержать членов, которые определяют rate_limit.
порт
-
Порт виртуального сервера. Требуется, когда state является present, и виртуальный сервер не существует.
Если вы не хотите указывать конкретный порт, используйте значение 0. В результате виртуальный сервер будет прослушивать любой порт.
Когда type является dhcp, этот модуль принудительно установит параметр port в значение 67.
Когда type является internal, этот модуль принудительно установит параметр port в значение 0.
Помимо указания номера порта, можно также указать ряд имён служб.
Строка ftp может быть заменена для порта 21.
Строка http может быть заменена для порта 80.
Строка https может быть заменена для порта 443.
Строка telnet может быть заменена для порта 23.
Строка smtp может быть заменена для порта 25.
Строка snmp может быть заменена для порта 161.
Строка snmp-trap может быть заменена для порта 162.
Строка ssh может быть заменена для порта 22.
Строка tftp может быть заменена для порта 69.
Строка isakmp может быть заменена для порта 500.
Строка mqtt может быть заменена для порта 1883.
Строка mqtt-tls может быть заменена для порта 8883.
перевод_порта
boolean
добавлен в 2.6
    Варианты:
  • нет
  • да
Указывает, когда enabled, что система переводит порт виртуального сервера.
Когда disabled, указывает, что система использует порт без перевода. Отключение перевода портов для виртуального сервера полезно, если вы хотите использовать виртуальный сервер для балансировки соединений с любой службой.
При создании нового виртуального сервера значение по умолчанию enabled.
профили
-
Список профилей (HTTP, ClientSSL, ServerSSL и т.д.) для применения к обеим сторонам соединения (сторона клиента и сторона сервера).
Если вы хотите применить определённый профиль только к стороне клиента соединения, укажите client-side для context профиля.
Если вы хотите применить определённый профиль только к стороне сервера соединения, укажите server-side для context профиля.
Если context не указано, по умолчанию используется all.
Если вы хотите удалить профиль из списка активных профилей на виртуальном сервере, просто удалите его из списка profiles. Примеры иллюстрируют это.
Если вы хотите добавить профиль в список активных профилей на виртуальном сервере, просто добавьте его в список profiles. Примеры иллюстрируют это.
Профили важны. Этот модуль не сможет настроить BIG-IP, если вы смешаете профили или попытаетесь установить IP-протокол, который не поддерживают ваши текущие или новые профили. Как этот модуль, так и BIG-IP сообщат вам об ошибке, подобной lists profiles incompatible with its protocol.
Если вы не уверены в правильных комбинациях профилей, используйте BIG-IP для внесения изменений и копирования корректных комбинаций.

псевдонимы: все_профили
контекст
-
    Варианты:
  • все ←
  • сторона сервера
  • сторона клиента
Сторона соединения, на которую должен быть применён профиль.
имя
-
Имя профиля.
Если это не указано, предполагается, что элемент профиля — только имя профиля.
Это должно быть указано, если указан контекст.
поставщик
-
добавлен в 2.5
По умолчанию:
null
Объект типа dict, содержащий детали соединения.
пароль
- / обязательно
Пароль для учётной записи пользователя, используемой для подключения к BIG-IP.
Вы можете опустить этот параметр, установив переменную окружения F5_PASSWORD.

псевдонимы: pass, pwd
сервер
- / обязательно
Хост BIG-IP.
Вы можете опустить этот параметр, установив переменную окружения F5_SERVER.
порт_сервера
-
По умолчанию:
443
Порт сервера BIG-IP.
Вы можете опустить этот параметр, установив переменную окружения F5_SERVER_PORT.
ssh_ключ_файл
-
Указывает файл SSH-ключа, используемый для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспортов cli.
Вы можете опустить этот параметр, установив переменную окружения ANSIBLE_NET_SSH_KEYFILE.
таймаут
-
По умолчанию:
10
Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истечёт до завершения операции, модуль вернёт ошибку.
транспорт
- / обязательно
    Варианты:
  • rest
  • cli ←
Настраивает транспортное соединение для подключения к удалённому устройству.
пользователь
- / обязательно
Имя пользователя для подключения к BIG-IP. Этот пользователь должен иметь административные права на устройстве.
Вы можете опустить этот параметр, установив переменную окружения F5_USER.
проверять_сертификаты
boolean
    Варианты:
  • нет
  • да ←
Если no, сертификаты SSL не проверяются. Используйте только на контролируемых вами сайтах с самозаверенными сертификатами.
Вы можете опустить этот параметр, установив переменную окружения F5_VALIDATE_CERTS.
профили_журнала_безопасности
-
добавлен в 2.6
Указывает профиль журнала, применяемый к виртуальному серверу.
Для использования этой функции модуль AFM должен быть лицензирован и настроен.
Параметры Log all requests и Log illegal requests взаимоисключающие, поэтому этот модуль выдаст ошибку, если они будут указаны вместе.
политика_безопасности_nat
-
добавлен в 2.7
Укажите политики Firewall NAT для виртуального сервера.
Вы можете указать одну или несколько политик NAT.
Используется наиболее специфичная политика. Например, если вы укажете, что виртуальный сервер должен использовать политику устройства и политику домена маршрутизации, политика домена маршрутизации переопределяет политику устройства.
политика
-
Политика для применения политики NAT непосредственно к виртуальному серверу.
Политика NAT виртуального сервера является наиболее специфичной и переопределяет политику домена маршрутизации и политики устройства, если они указаны.
Для удаления политики укажите пустое значение.
использовать_политику_устройства
boolean
    Варианты:
  • нет
  • да
Указывает, что виртуальный сервер использует политику NAT устройства, как указано в параметрах брандмауэра.
Политика устройства используется, если не указана политика домена маршрутизации или политика NAT виртуального сервера.
use_route_domain_policy
boolean
    Варианты:
  • no
  • yes
Указывает, что виртуальный сервер использует политику маршрутизации домена, как указано в настройках безопасности политики домена маршрутизации.
При указании политика маршрутизации домена переопределяет политику устройства и переопределяется политикой виртуального сервера.
server
- / обязательно
Хост BIG-IP.
Вы можете опустить этот параметр, установив переменную среды F5_SERVER.
server_port
-
добавлено в 2.2
По умолчанию:
443
Порт сервера BIG-IP.
Вы можете опустить этот параметр, установив переменную среды F5_SERVER_PORT.
snat
-
Политика адреса исходной сети.
Когда type равно dhcp, этот параметр игнорируется.
Когда type равно reject, этот параметр будет проигнорирован.
Когда type равно internal, этот параметр будет проигнорирован.
Имя пула SNAT (например, "/Common/snat_pool_name") может быть указано для включения SNAT с использованием конкретного пула.
Чтобы удалить SNAT, укажите слово none.
Чтобы указать автомаппинг, используйте слово automap.
source
-
добавлено в 2.5
Указывает IP-адрес или сеть, из которых виртуальный сервер принимает трафик.
Виртуальный сервер принимает клиентов только с одного из этих IP-адресов.
Для эффективной работы этого параметра, укажите значение отличное от 0.0.0.0/0 или ::/0 (то есть any/0, any6/0).
Для максимальной эффективности этого параметра, укажите наиболее точные префиксы адресов, охватывающие все клиентские адреса и не другие.
Укажите IP-адрес в формате CIDR (Classless Inter-Domain Routing); адрес/префикс, где длина префикса в битах. Например, для IPv4: 10.0.0.1/32 или 10.0.0.0/24, а для IPv6: ffe1::0020/64 или 2001:ed8:77b5:2:10:10:100:42/64.
state
-
    Варианты:
  • present ←
  • absent
  • enabled
  • disabled
Состояние виртуального сервера. Если absent, удалите виртуальный сервер, если он существует. present создаёт виртуальный сервер и включает его. Если enabled, включите виртуальный сервер, если он существует. Если disabled, создайте виртуальный сервер при необходимости и установите состояние в disabled.
type
-
добавлено в 2.6
    Варианты:
  • standard ←
  • forwarding-l2
  • forwarding-ip
  • performance-http
  • performance-l4
  • stateless
  • reject
  • dhcp
  • internal
  • message-routing
Определяет сетевую услугу, предоставляемую этим виртуальным сервером.
При создании нового виртуального сервера, если этот параметр не указан, по умолчанию будет standard.
Это значение не может быть изменено после его установки.
Когда standard, определяет виртуальный сервер, который направляет клиентский трафик в пул балансировки нагрузки и является наиболее базовым типом виртуального сервера. При первом создании виртуального сервера вы назначаете ему существующий пул по умолчанию. После этого виртуальный сервер автоматически направляет трафик в этот пул по умолчанию.
Когда forwarding-l2, определяет виртуальный сервер, который разделяет один и тот же IP-адрес, что и узел в связанной VLAN.
Когда forwarding-ip, определяет виртуальный сервер, как и другие виртуальные серверы, за исключением того, что у виртуального сервера нет членов пула для балансировки нагрузки. Виртуальный сервер просто пересылает пакет напрямую целевому IP-адресу, указанному в клиентском запросе.
Когда performance-http, определяет виртуальный сервер, с которым вы связываете профиль Fast HTTP. Вместе виртуальный сервер и профиль увеличивают скорость обработки виртуальным сервером HTTP-запросов.
Когда performance-l4, определяет виртуальный сервер, с которым вы связываете профиль Fast L4. Вместе виртуальный сервер и профиль увеличивают скорость обработки виртуальным сервером запросов 4-го уровня.
Когда stateless, определяет виртуальный сервер, который принимает трафик, соответствующий адресу виртуального сервера, и балансирует нагрузку пакета на членов пула, не пытаясь сопоставить пакет с уже существующим соединением в таблице соединений. Новые соединения немедленно удаляются из таблицы соединений. Это решает требования к одностороннему UDP-трафику, который должен обрабатываться на очень высоких уровнях пропускной способности, например, балансировка нагрузки syslog-трафика на пул syslog-серверов. Виртуальные серверы без состояния не подходят для обработки трафика, требующего отслеживания состояния, например, трафика TCP. Виртуальные серверы без состояния не поддерживают iRules, сохранение состояния, дублирование соединения, ограничение скорости или автомаппинг SNAT.
Когда reject, указывает, что система BIG-IP отклоняет любой трафик, предназначенный для IP-адреса виртуального сервера.
Когда dhcp, определяет виртуальный сервер, который пересылает запросы DHCP-клиентов для получения IP-адреса одному или нескольким DHCP-серверам и предоставляет ответы DHCP-сервера с доступным IP-адресом для клиента.
Когда internal, определяет виртуальный сервер, который поддерживает изменение HTTP-запросов и ответов. Внутренние виртуальные серверы позволяют использовать серверы ICAP (Internet Content Adaptation Protocol) для изменения HTTP-запросов и ответов путем создания и применения профиля ICAP и добавления профилей Request Adapt или Response Adapt к виртуальному серверу.
Когда message-routing, определяет виртуальный сервер, который использует протокол приложения SIP и функционирует в соответствии с профилем сеанса SIP и профилем маршрутизатора SIP.
user
- / обязательно
Имя пользователя для подключения к BIG-IP. Этот пользователь должен иметь административные привилегии на устройстве.
Вы можете опустить этот параметр, установив переменную среды F5_USER.
validate_certs
boolean
добавлено в 2.0
    Варианты:
  • no
  • yes ←
Если no, сертификаты SSL не проверяются. Используйте это только на сайтах под вашим контролем, использующих самозаверяемые сертификаты.
Вы можете опустить этот параметр, установив переменную среды F5_VALIDATE_CERTS.

Примечания

Примечание

  • Дополнительную информацию об использовании Ansible для управления устройствами F5 Networks см. на https://www.ansible.com/integrations/networks/f5.
  • Требуется пакет f5-sdk Python на хосте. Это так же просто, как pip install f5-sdk.
  • Требуется версия программного обеспечения BIG-IP >= 12.
  • Модули F5 манипулируют только текущей конфигурацией продукта F5. Чтобы убедиться, что конфигурация, специфичная для BIG-IP, сохранится на диске, обязательно включите по крайней мере одну задачу, использующую модуль bigip_config для сохранения текущей конфигурации. Обратитесь к документации модуля для правильного использования модуля для сохранения текущей конфигурации.

Примеры

- name: Modify Port of the Virtual Server
  bigip_virtual_server:
    server: lb.mydomain.net
    user: admin
    password: secret
    state: present
    partition: Common
    name: my-virtual-server
    port: 8080
  delegate_to: localhost

- name: Delete virtual server
  bigip_virtual_server:
    server: lb.mydomain.net
    user: admin
    password: secret
    state: absent
    partition: Common
    name: my-virtual-server
  delegate_to: localhost

- name: Add virtual server
  bigip_virtual_server:
    server: lb.mydomain.net
    user: admin
    password: secret
    state: present
    partition: Common
    name: my-virtual-server
    destination: 10.10.10.10
    port: 443
    pool: my-pool
    snat: Automap
    description: Test Virtual Server
    profiles:
      - http
      - fix
      - name: clientssl
        context: server-side
      - name: ilx
        context: client-side
    policies:
      - my-ltm-policy-for-asm
      - ltm-uri-policy
      - ltm-policy-2
      - ltm-policy-3
    enabled_vlans:
      - /Common/vlan2
  delegate_to: localhost

- name: Add FastL4 virtual server
  bigip_virtual_server:
    destination: 1.1.1.1
    name: fastl4_vs
    port: 80
    profiles:
      - fastL4
    state: present

- name: Add iRules to the Virtual Server
  bigip_virtual_server:
    server: lb.mydomain.net
    user: admin
    password: secret
    name: my-virtual-server
    irules:
      - irule1
      - irule2
  delegate_to: localhost

- name: Remove one iRule from the Virtual Server
  bigip_virtual_server:
    server: lb.mydomain.net
    user: admin
    password: secret
    name: my-virtual-server
    irules:
      - irule2
  delegate_to: localhost

- name: Remove all iRules from the Virtual Server
  bigip_virtual_server:
    server: lb.mydomain.net
    user: admin
    password: secret
    name: my-virtual-server
    irules: ""
  delegate_to: localhost

- name: Remove pool from the Virtual Server
  bigip_virtual_server:
    server: lb.mydomain.net
    user: admin
    password: secret
    name: my-virtual-server
    pool: ""
  delegate_to: localhost

- name: Add metadata to virtual
  bigip_pool:
    server: lb.mydomain.com
    user: admin
    password: secret
    state: absent
    name: my-pool
    partition: Common
    metadata:
      ansible: 2.4
      updated_at: 2017-12-20T17:50:46Z
  delegate_to: localhost

- name: Add virtual with two profiles
  bigip_pool:
    server: lb.mydomain.com
    user: admin
    password: secret
    state: absent
    name: my-pool
    partition: Common
    profiles:
      - http
      - tcp
  delegate_to: localhost

- name: Remove HTTP profile from previous virtual
  bigip_pool:
    server: lb.mydomain.com
    user: admin
    password: secret
    state: absent
    name: my-pool
    partition: Common
    profiles:
      - tcp
  delegate_to: localhost

- name: Add the HTTP profile back to the previous virtual
  bigip_pool:
    server: lb.mydomain.com
    user: admin
    password: secret
    state: absent
    name: my-pool
    partition: Common
    profiles:
      - http
      - tcp
  delegate_to: localhost

Значения возврата

Общие значения возврата описаны в здесь, следующие — поля, уникальные для этого модуля:

Ключ Возвращаемое значение Описание
address_translation
boolean
изменено
Новое значение, указывающее, включена или выключена трансляция адресов.

Пример:
True
default_persistence_profile
строка
изменено
Профиль сохранения по умолчанию, установленный на виртуальном сервере.

Пример:
/Common/dest_addr
description
строка
изменено
Новое описание виртуального сервера.

Пример:
Это моё описание
destination
строка
изменено
Назначение виртуального сервера.

Пример:
1.1.1.1
disabled
boolean
изменено
Включен или выключен виртуальный сервер.

Пример:
True
disabled_vlans
список
изменено
Список VLAN, для которых виртуальный сервер отключён.

Пример:
['/Common/vlan1', '/Common/vlan2']
enabled
boolean
изменено
Включен или выключен виртуальный сервер.

enabled_vlans
список
изменено
Список VLAN, для которых виртуальный сервер включён.

Пример:
['/Common/vlan5', '/Common/vlan6']
fallback_persistence_profile
строка
изменено
Профиль резервного сохранения, установленный на виртуальном сервере.

Пример:
/Common/source_addr
firewall_enforced_policy
строка
изменено
Новая принудительная политика брандмауэра.

Пример:
/Common/my-enforced-fw
firewall_staged_policy
строка
изменено
Новая политика брандмауэра в режиме ожидания.

Пример:
/Common/my-staged-fw
ip_protocol
целое число
изменено
Новое значение IP-протокола.

Пример:
6
irules
список
изменено
Наборы iRules, установленные на виртуальном сервере.

Пример:
['/Common/irule1', '/Common/irule2']
metadata
словарь
изменено
Новое значение виртуального объекта.

Пример:
{'key1': 'foo', 'key2': 'bar'}
policies
список
изменено
Список политик, прикреплённых к виртуальному объекту.

Пример:
['/Common/policy1', '/Common/policy2']
pool
строка
изменено
Пул, к которому прикреплён виртуальный сервер.

Пример:
/Common/my-pool
port
целое число
изменено
Порт, на котором виртуальный сервер настроен для прослушивания.

Пример:
80
port_translation
boolean
изменено
Новое значение, указывающее, включена или выключена трансляция портов.

Пример:
True
profiles
список
изменено
Список профилей, установленных на виртуальном сервере.

Пример:
[{'name': 'tcp', 'context': 'server-side'}, {'name': 'tcp-legacy', 'context': 'client-side'}]
security_log_profiles
список
изменено
Новый список профилей журналов безопасности.

Пример:
['/Common/profile1', '/Common/profile2']
snat
строка
изменено
Настройка SNAT виртуального сервера.

Пример:
Automap
source
строка
изменено
Исходный адрес в формате CIDR, установленный на виртуальном сервере.

Пример:
1.2.3.4/32


Статус

  • Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
  • Этот модуль поддерживается партнёром Ansible. [сертифицировано]

Авторы

  • Tim Rupp (@caphrim007)

Подсказка

Если вы заметили какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/bigip_virtual_server_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API