Spec-Zone.ru › Ansible

Модуль community.proxysql.proxysql_pgsql_hostgroup_attributes — управление атрибутами групп узлов PostgreSQL с помощью административного интерфейса ProxySQL

Примечание

Этот модуль входит в коллекцию community.proxysql (версия 1.8.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.proxysql. Для использования этого модуля необходимы дополнительные зависимости; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.proxysql.proxysql_pgsql_hostgroup_attributes.

Добавлено в community.proxysql 1.8.0

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

Краткое описание

  • Каждая строка в pgsql_hostgroup_attributes задаёт переопределение параметра для конкретной группы узлов. Эта дополнительная таблица позволяет настраивать параметры отдельных групп узлов, например `max_num_online_servers`, изменяя поведение заданной группы узлов способами, которые иначе недоступны.

Требования

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

  • PyMySQL
  • mysqlclient

Параметры

Параметр

Комментарии

autocommit

целое число

Пока не реализовано (согласно документации ProxySQL).

По умолчанию: -1

comment

строка

Текстовое поле, которое пользователь может использовать для любых целей.

По умолчанию: ""

config_file

путь

Укажите файл конфигурации, из которого следует считывать login_user и login_password.

По умолчанию: ""

connection_warming

целое число

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

По умолчанию: 0

free_connections_pct

целое число

Процент открытых неактивных соединений для каждого сервера в группе узлов.

По умолчанию: 10

hostgroup_id

целое число / обязательный

Идентификатор группы узлов.

hostgroup_settings

строка

Переопределение некоторых глобальных параметров конфигурации.

По умолчанию: ""

ignore_session_variables

строка

Пока не реализовано (согласно документации ProxySQL).

По умолчанию: ""

init_connect

строка

Разделённая точками с запятой строка с инструкциями SQL, которые выполняются при инициализации каждого подключения к серверу.

По умолчанию: ""

load_to_runtime

логическое значение

Динамически загружать конфигурацию в память среды выполнения.

Варианты:

  • false
  • true ← (по умолчанию)

login_host

строка

Узел для подключения к административному интерфейсу ProxySQL.

По умолчанию: "127.0.0.1"

login_password

строка

Пароль для аутентификации в административном интерфейсе ProxySQL.

login_port

целое число

Порт для подключения к административному интерфейсу ProxySQL.

По умолчанию: 6032

login_unix_socket

строка

Сокет для подключения к административному интерфейсу ProxySQL.

login_user

строка

Имя пользователя для аутентификации в административном интерфейсе ProxySQL.

max_num_online_servers

целое число

Запрещает новые подключения, если количество серверов в состоянии ONLINE в группе узлов превышает это значение.

По умолчанию: 1000000

multiplex

целое число

Включает или отключает мультиплексирование для указанной группы узлов.

По умолчанию: 1

save_to_disk

логическое значение

Сохранять конфигурацию в базе данных SQLite на диске, чтобы сохранить её между запусками.

Варианты:

  • false
  • true ← (по умолчанию)

servers_defaults

строка

Задаёт значения по умолчанию для обнаруженных серверов.

По умолчанию: ""

state

строка

Если present — добавляет атрибуты группы узлов; если absent — удаляет атрибуты группы узлов.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

throttle_connections_per_sec

целое число

Максимальное количество новых соединений, которые можно открыть за секунду.

По умолчанию: 1000000

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

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

Примеры

# This example uses supplied credentials to add a hostgroup override for the
# hostgroup with ID, `1`. The override sets the maximum number of ONLINE
# servers to `1` and provides a short comment. The configuration will be saved
# to disk and memory, but not loaded into runtime.

- name: Add hostgroup overrides to limit servers
  community.proxysql.proxysql_pgsql_hostgroup_attributes:
    login_user: admin
    login_password: admin
    hostgroup_id: 1
    state: present
    load_to_runtime: false
    max_num_online_servers: 1
    comment: >-
      Limit connections to the writer hostgroup to prevent split-brains.

# This example uses stored configuration to manage a hostgroup override for the
# hostgroup with ID, `2`. The override limits the number of new connections
# that can be opened to 100/sec. The configuration will be saved to memory and
# runtime but not persisted to disk.

- name: Throttle connections on reader hostgroup
  community.proxysql.proxysql_pgsql_hostgroup_attributes:
    config_file: /etc/proxysql/admin.cnf
    hostgroup_id: 2
    state: present
    load_to_runtime: true
    save_to_disk: false
    throttle_connections_per_sec: 100

# This example uses supplied credentials to add a hostgroup override for the
# hostgroup with ID, `2`. The override enables multiplexing and sets the number
# of cached connections to 100%. The configuration will be saved to memory but
# not disk or runtime.

- name: Aggressively reuse and cache connections
  community.proxysql.proxysql_pgsql_hostgroup_attributes:
    login_user: admin
    login_password: admin
    hostgroup_id: 2
    load_to_runtime: false
    save_to_disk: false
    multiplex: 1
    free_connections_pct: 100

# This example uses stored configuration to manage a hostgroup override for the
# hostgroup with ID, `42`. The override changes the hostgroup to handle
# warnings and each server added into the hostgroup to have 1000 connections.

- name: Override globals for hostgroup 42
  community.proxysql.proxysql_pgsql_hostgroup_attributes:
    config_file: /etc/proxysql/admin.cnf
    hostgroup_id: 42
    hostgroup_settings:
        handle_warnings: 1
    servers_defaults:
        max_connections: 1000

# This example removes a hostgroup override using the credentials supplied in
# a configuration file.

- name: Remove hostgroup overrides
  community.proxysql.proxysql_pgsql_hostgroup_attributes:
    config_file: '~/proxysql.cnf'
    hostgroup_id: 3
    state: absent

Возвращаемые значения

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

Ключ

Описание

stdout

словарь

Изменённая или удалённая из ProxySQL запись pgsql_hostgroup_override.

Возвращается: При создании или обновлении возвращается изменённая группа; при удалении — удалённая запись.

Пример: {"changed": true, "msg": "Added entry to pgsql_hostgroup_overrides", "pgsql_hostgroup_attributes": {"autocommit": "-1", "comment": "", "connection_warming": "0", "free_connections_pct": "10", "hostgroup_id": "21", "hostgroup_settings": "", "ignore_session_variables": "", "init_connect": "", "max_num_online_servers": "1000000", "multiplex": "1", "servers_defaults": "", "throttle_connections_per_sec": "1000000"}, "state": "present"}

Авторы

  • Janos Ruszo (@jruszo)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/proxysql/proxysql_pgsql_hostgroup_attributes_module.html

Spec-Zone.ru

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