Spec-Zone.ru › Ansible 2.8

haproxy – Включить, отключить и установить веса для серверов бэкенда HAProxy с помощью команд сокета

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Статус

Описание

  • Включение, отключение, отвод и установка весов для серверов бэкенда HAProxy с помощью команд сокета.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
backend
строка
Имя пула бэкенда HAProxy.
Если этот параметр не задан, он будет определен автоматически.
drain
логическое
добавлен в 2.4
    Варианты:
  • нет
  • да
Ожидать, пока сервер не будет иметь активных подключений или пока не будет достигнут таймаут, определяемый wait_interval и wait_retries.
Продолжить только после изменения статуса на 'MAINT'.
Это переопределяет параметр shutdown_sessions.
fail_on_not_found
логическое
добавлен в 2.2
    Варианты:
  • нет ←
  • да
Прекратить работу при попытке включения/отключения хоста бэкенда, который не существует.
host
строка / обязательно
Имя хоста бэкенда, который нужно изменить.
shutdown_sessions
логическое
    Варианты:
  • нет ←
  • да
При отключении сервера немедленно завершить все сеансы, подключенные к указанному серверу.
Это можно использовать для завершения долговременных сеансов после перевода сервера в режим технического обслуживания. Переопределяется параметром drain.
socket
путь
По умолчанию:
"/var/run/haproxy.sock"
Путь к файлу сокета HAProxy.
state
строка / обязательно
    Варианты:
  • disabled
  • drain
  • enabled
Желаемое состояние предоставленного хоста бэкенда.
Обратите внимание, что drain состояние было добавлено в версии 2.4.
Поддерживается только версией HAProxy 1.5 и более поздними.
При использовании на версиях < 1.5, оно будет проигнорировано.
wait
логическое
добавлен в 2.0
    Варианты:
  • нет ←
  • да
Ожидать, пока сервер не сообщит о статусе 'UP', когда state=enabled, статусе 'MAINT', когда state=disabled или статусе 'DRAIN', когда state=drain.
wait_interval
целое число
добавлен в 2.0
По умолчанию:
5
Количество секунд ожидания между повторами.
wait_retries
целое число
добавлен в 2.0
По умолчанию:
25
Количество раз проверки статуса после изменения состояния.
weight
строка
Значение, переданное в качестве аргумента.
Если значение заканчивается знаком `%`, то новый вес будет относительным к изначально настроенному весу.
Относительные веса разрешены только в диапазоне от 0 до 100%, а абсолютные веса — от 0 до 256.

Примечания

Примечание

  • Команды включения, отключения и отвода ограничены и могут быть выполнены только на сокетах, настроенных на уровень ‘admin’. Например, вы можете добавить строку ‘stats socket /var/run/haproxy.sock level admin’ в общий раздел haproxy.cfg. См. http://haproxy.1wt.eu/download/1.5/doc/configuration.txt.
  • Зависит от доступности netcat (nc); необходимо установить соответствующий пакет для вашей операционной системы, прежде чем этот модуль можно будет использовать.

Примеры

- name: Disable server in 'www' backend pool
  haproxy:
    state: disabled
    host: '{{ inventory_hostname }}'
    backend: www

- name: Disable server without backend pool name (apply to all available backend pool)
  haproxy:
    state: disabled
    host: '{{ inventory_hostname }}'

- name: Disable server, provide socket file
  haproxy:
    state: disabled
    host: '{{ inventory_hostname }}'
    socket: /var/run/haproxy.sock
    backend: www

- name: Disable server, provide socket file, wait until status reports in maintenance
  haproxy:
    state: disabled
    host: '{{ inventory_hostname }}'
    socket: /var/run/haproxy.sock
    backend: www
    wait: yes

# Place server in drain mode, providing a socket file.  Then check the server's
# status every minute to see if it changes to maintenance mode, continuing if it
# does in an hour and failing otherwise.
- haproxy:
    state: disabled
    host: '{{ inventory_hostname }}'
    socket: /var/run/haproxy.sock
    backend: www
    wait: yes
    drain: yes
    wait_interval: 1
    wait_retries: 60

- name: Disable backend server in 'www' backend pool and drop open sessions to it
  haproxy:
    state: disabled
    host: '{{ inventory_hostname }}'
    backend: www
    socket: /var/run/haproxy.sock
    shutdown_sessions: yes

- name: Disable server without backend pool name (apply to all available backend pool) but fail when the backend host is not found
  haproxy:
    state: disabled
    host: '{{ inventory_hostname }}'
    fail_on_not_found: yes

- name: Enable server in 'www' backend pool
  haproxy:
    state: enabled
    host: '{{ inventory_hostname }}'
    backend: www

- name: Enable server in 'www' backend pool wait until healthy
  haproxy:
    state: enabled
    host: '{{ inventory_hostname }}'
    backend: www
    wait: yes

- name: Enable server in 'www' backend pool wait until healthy. Retry 10 times with intervals of 5 seconds to retrieve the health
  haproxy:
    state: enabled
    host: '{{ inventory_hostname }}'
    backend: www
    wait: yes
    wait_retries: 10
    wait_interval: 5

- name: Enable server in 'www' backend pool with change server(s) weight
  haproxy:
    state: enabled
    host: '{{ inventory_hostname }}'
    socket: /var/run/haproxy.sock
    weight: 10
    backend: www

- name: Set the server in 'www' backend pool to drain mode
  haproxy:
    state: drain
    host: '{{ inventory_hostname }}'
    socket: /var/run/haproxy.sock
    backend: www

Статус

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

Авторы

  • Ravi Bhure (@ravibhure)

Подсказка

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

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

Spec-Zone.ru

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