Spec-Zone.ru › Ansible 2.6

bigip_data_group - Управление группами данных на BIG-IP

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

  • Обзор
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Статус
  • Техническое обслуживание
    • Автор

Обзор

  • Позволяет управлять группами данных на BIG-IP. Группы данных предоставляют способ хранения коллекций значений на BIG-IP для последующего использования в таких элементах, как правила LTM, iRules и политики ASM.

Требования

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

  • f5-sdk >= 3.0.9

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
delete_data_group_file
bool
    Варианты:
  • нет ←
  • да
При yes, будет гарантировано удаление файла группы данных на удалённом устройстве.
Этот параметр актуален только когда state равен absent и internal равно no.
external_file_name
При создании новой группы данных, это указывает имя файла внешней группы данных на BIG-IP.
Этот параметр игнорируется, когда internal равно yes.
Этот параметр может быть использован для выбора существующего файла группы данных для использования с существующей внешней группой данных.
Если это значение не указано, оно будет установлено по значению из name, а следовательно, совпадет с именем группы данных.
Это значение может содержать только буквы, цифры, подчёркивания, тире или точку.
internal
bool
    Варианты:
  • нет ←
  • да
Тип этой группы данных.
Вы должны устанавливать это значение только в тех случаях, когда вы точно знаете, что делаете, или, работаете с уже существующей внутренней группой данных.
Помните, что если вы намеренно установите этот параметр в значение yes, и у вас большое количество записей или большой общий размер записей, это большое количество данных будет отражено в конфигурации BIG-IP. Это может привести к долгим временам загрузки конфигурации системы из-за необходимости парсить и проверять большую конфигурацию.
Существует ограничение в 4 мегабайта или 65 000 записей (в зависимости от более жёсткого ограничения) для загрузки, когда этот параметр равен yes.
Это значение нельзя изменить после создания группы данных.
name
обязательно
Указывает имя группы данных.
partition Значение по умолчанию:
"Общий"
Раздел устройства для управления ресурсами.
password
обязательно
Пароль для учетной записи пользователя, используемой для подключения к BIG-IP. Вы можете опустить этот параметр, если переменная окружения F5_PASSWORD установлена.

Псевдонимы: pass, pwd
provider
(добавлено в 2.5)
Объект dict, содержащий данные подключения.
password
обязательно
Пароль для учетной записи пользователя, используемой для подключения к BIG-IP. Вы можете опустить этот параметр, если переменная окружения F5_PASSWORD установлена.

Псевдонимы: pass, pwd
server
обязательно
Хост BIG-IP. Вы можете опустить этот параметр, если переменная окружения F5_SERVER установлена.
server_port Значение по умолчанию:
443
Порт сервера BIG-IP. Вы можете опустить этот параметр, если переменная окружения F5_SERVER_PORT установлена.
user
обязательно
Имя пользователя для подключения к BIG-IP. Этот пользователь должен иметь административные привилегии на устройстве. Вы можете опустить этот параметр, если переменная окружения F5_USER установлена.
validate_certs
bool
    Варианты:
  • нет
  • да ←
Если no, сертификаты SSL не будут проверены. Используйте это только на сайтах, контролируемых вами лично, с самозаверенными сертификатами. Вы можете опустить этот параметр, если переменная окружения F5_VALIDATE_CERTS установлена.
timeout Значение по умолчанию:
10
Устанавливает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истечёт до завершения операции, модуль выдаст ошибку.
ssh_keyfile
Указывает SSH-ключевой файл для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспортов cli. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_SSH_KEYFILE.
transport
обязательно
    Варианты:
  • rest
  • cli ←
Настраивает транспортное соединение для подключения к удалённому устройству.
records
Указывает записи, которые вы хотите добавить в группу данных.
Если у вас большое количество записей, рекомендуется использовать records_content вместо ввода всех записей здесь.
Техническое ограничение (либо 1. количество записей, либо 2. общий размер всех записей) зависит от размера общих ресурсов вашей системы, в частности, ОЗУ.
Когда internal равно no, хотя бы одна запись должна быть указана либо в records, либо в records_content.
key
обязательно
Ключ, описывающий запись в группе данных.
Ваш ключ будет использован для проверки параметра type в этом модуле.
value
Значение ключа, описывающего запись в группе данных.
records_src
Путь к файлу с записями.
Файл должен быть правильно сформирован. Это означает, что он содержит записи, по одной на строке, имеющие следующий формат "ключ разделитель значение". Например, foo := bar.
BIG-IP строго соблюдает этот формат, но этот модуль немного более гибкий. Он позволит вам включить произвольное количество (включая нулевое) пробелов по обе стороны разделителя. Для иллюстрации см. раздел Примеры.
Ключи записей ограничены по длине до 65 520 символов.
Значения ключей записей ограничены по длине до 65 520 символов.
Общее количество записей, которое вы можете иметь в BIG-IP, ограничено объёмом памяти BIG-IP.
Формат этого содержимого немного отличается в зависимости от того, указали ли вы type типа address, integer, или string. См. раздел Примеры для примеров различных типов ожидаемых форматов данных в файле вашей группы данных.
Когда internal равно no, хотя бы одна запись должна быть указана либо в records, либо в records_content.
separator Значение по умолчанию:
":="
При указании records_content, это строка символов, которая будет использоваться для разделения элементов в records_content на пары ключ/значение.
По умолчанию значение этого параметра равно :=.
Это значение нельзя изменить после его установки.
Этот параметр актуален только когда internal равно no. В противном случае он будет проигнорирован.
server
обязательно
Хост BIG-IP. Вы можете опустить этот параметр, если переменная окружения F5_SERVER установлена.
server_port
(добавлено в 2.2)
Значение по умолчанию:
443
Порт сервера BIG-IP. Вы можете опустить этот параметр, если переменная окружения F5_SERVER_PORT установлена.
state
    Варианты:
  • present ←
  • absent
Когда state равно present, гарантирует существование группы данных.
Когда state равно absent, гарантирует удаление группы данных.
type
    Варианты:
  • address
  • addr
  • ip
  • string ←
  • str
  • integer
  • int
Тип записей в этой группе данных.
Этот параметр особенно важен, так как заставляет BIG-IP хранить ваши данные различными способами для оптимизации доступа к ним. Например, было бы неправильно указать список записей, содержащих IP-адреса, но обозначить их как тип string.
Это значение нельзя изменить после создания группы данных.
user
обязательно
Имя пользователя для подключения к BIG-IP. Этот пользователь должен иметь административные привилегии на устройстве. Вы можете опустить этот параметр, если переменная окружения F5_USER установлена.
validate_certs
bool

(добавлено в 2.0)
    Варианты:
  • нет
  • да ←
Если no, сертификаты SSL не будут проверены. Используйте это только на сайтах, контролируемых вами лично, с самозаверенными сертификатами. Вы можете опустить этот параметр, если переменная окружения F5_VALIDATE_CERTS установлена.

Примечания

Примечание

  • Дополнительную информацию об использовании Ansible для управления устройствами F5 Networks можно найти на странице https://www.ansible.com/integrations/networks/f5.
  • Требуется пакет f5-sdk Python на хосте. Это так же просто, как pip install f5-sdk.

Примеры

- name: Create a data group of addresses
  bigip_data_group:
    name: foo
    password: secret
    server: lb.mydomain.com
    state: present
    user: admin
    records:
      - key: 0.0.0.0/32
        value: External_NAT
      - key: 10.10.10.10
        value: No_NAT
    type: address
  delegate_to: localhost

- name: Create a data group of strings
  bigip_data_group:
    name: foo
    password: secret
    server: lb.mydomain.com
    state: present
    user: admin
    records:
      - key: caddy
        value: ""
      - key: cafeteria
        value: ""
      - key: cactus
        value: ""
    type: string
  delegate_to: localhost

- name: Create a data group of IP addresses from a file
  bigip_data_group:
    name: foo
    password: secret
    server: lb.mydomain.com
    state: present
    user: admin
    records_src: /path/to/dg-file
    type: address
  delegate_to: localhost

- name: Update an existing internal data group of strings
  bigip_data_group:
    name: foo
    password: secret
    server: lb.mydomain.com
    state: present
    internal: yes
    user: admin
    records:
      - key: caddy
        value: ""
      - key: cafeteria
        value: ""
      - key: cactus
        value: ""
  delegate_to: localhost

- name: Show the data format expected for records_content - address 1
  copy:
    dest: /path/to/addresses.txt
    content: |
      network 10.0.0.0 prefixlen 8 := "Network1",
      network 172.16.0.0 prefixlen 12 := "Network2",
      network 192.168.0.0 prefixlen 16 := "Network3",
      network 2402:9400:1000:0:: prefixlen 64 := "Network4",
      host 192.168.20.1 := "Host1",
      host 172.16.1.1 := "Host2",
      host 172.16.1.1/32 := "Host3",
      host 2001:0db8:85a3:0000:0000:8a2e:0370:7334 := "Host4",
      host 2001:0db8:85a3:0000:0000:8a2e:0370:7334/128 := "Host5"

- name: Show the data format expected for records_content - address 2
  copy:
    dest: /path/to/addresses.txt
    content: |
      10.0.0.0/8 := "Network1",
      172.16.0.0/12 := "Network2",
      192.168.0.0/16 := "Network3",
      2402:9400:1000:0::/64 := "Network4",
      192.168.20.1 := "Host1",
      172.16.1.1 := "Host2",
      172.16.1.1/32 := "Host3",
      2001:0db8:85a3:0000:0000:8a2e:0370:7334 := "Host4",
      2001:0db8:85a3:0000:0000:8a2e:0370:7334/128 := "Host5"

- name: Show the data format expected for records_content - string
  copy:
    dest: /path/to/strings.txt
    content: |
      a := alpha,
      b := bravo,
      c := charlie,
      x := x-ray,
      y := yankee,
      z := zulu,

- name: Show the data format expected for records_content - integer
  copy:
    dest: /path/to/integers.txt
    content: |
      1 := bar,
      2 := baz,
      3,
      4,

Статус

Этот модуль помечен как превью, что означает, что он не гарантирует обратной совместимости интерфейса.

Техническое обслуживание

Этот модуль помечен как общественный, что означает, что он поддерживается сообществом Ansible. Дополнительную информацию см. в разделе Техническое обслуживание и поддержка модулей.

Список других модулей, также поддерживаемых сообществом 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.6/modules/bigip_data_group_module.html

Spec-Zone.ru

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