Модуль community.proxysql.proxysql_galera_hostgroups — управление группами хостов Galera через интерфейс администрирования ProxySQL
Примечание
Этот модуль входит в коллекцию community.proxysql (версия 1.8.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните команду ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.proxysql. Для работы с этим модулем могут потребоваться дополнительные компоненты. Подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.proxysql.proxysql_galera_hostgroups.
Краткое описание
- В отличие от обычной асинхронной репликации, группы хостов Galera НЕ определяются в таблице mysql_replication_hostgroups. Вместо этого существует отдельная таблица, специально предназначенная для групп хостов Galera. Это связано с тем, что для поддержки доступных вариантов развертывания Galera требуется более гибкая настройка топологии (например, управление количеством узлов записи, пороговые значения репликации на уровне кластера и т. д.).
Требования
На узле, выполняющем этот модуль, должны быть установлены перечисленные ниже компоненты.
- PyMySQL
- mysqlclient
Параметры
Параметр | Комментарии |
|---|---|
active integer | Включение (1) или отключение (0) указанной конфигурации группы хостов. Варианты:
|
backup_writer_hostgroup integer / обязательный | Идентификатор группы хостов, в которую будут входить все узлы Galera, выступающие резервными узлами записи. |
comment string | Текстовое поле, которое пользователь может использовать для любых целей. По умолчанию: |
config_file path | Укажите файл конфигурации, из которого нужно прочитать login_user и login_password. По умолчанию: |
load_to_runtime boolean | Динамически загружать конфигурацию в память среды выполнения. Варианты:
|
login_host string | Хост для подключения к интерфейсу администрирования ProxySQL. По умолчанию: |
login_password string | Пароль для аутентификации в интерфейсе администрирования ProxySQL. |
login_port integer | Порт для подключения к интерфейсу администрирования ProxySQL. По умолчанию: |
login_unix_socket string | Сокет для подключения к интерфейсу администрирования ProxySQL. |
login_user string | Имя пользователя для аутентификации в интерфейсе администрирования ProxySQL. |
max_transactions_behind integer | Максимальное количество наборов записей, на которое узел может отставать от кластера, прежде чем ProxySQL исключит его из обслуживания, чтобы предотвратить чтение устаревших данных. По умолчанию: |
max_writers integer | Количество экземпляров для чтения и записи в группе хостов узлов записи. По умолчанию: |
offline_hostgroup integer / обязательный | Идентификатор группы хостов, в которую будут перемещены все отказавшие узлы. |
reader_hostgroup integer / обязательный | Идентификатор группы хостов, в которую будут входить все узлы Galera, предназначенные для чтения. |
save_to_disk boolean | Сохранить конфигурацию в базе данных SQLite на диске, чтобы она сохранилась после перезапуска. Варианты:
|
state string | Если задано значение Варианты:
|
writer_hostgroup integer / обязательный | Идентификатор группы хостов, в которую будут входить все активные узлы записи Galera. |
writer_is_also_reader integer | writer_is_also_reader — 0: узлы с `read_only=0` после изменения топологии будут помещены в writer_hostgroup или backup_writer_hostgroup и исключены из reader_hostgroup. writer_is_also_reader — 1: узлы с `read_only=0` будут помещены в writer_hostgroup или backup_writer_hostgroup, а также в reader_hostgroup после изменения топологии. writer_is_also_reader — 2: только узлы с `read_only=0`, помещённые в backup_writer_hostgroup, также будут помещены в reader_hostgroup после изменения топологии, то есть узлы с `read_only=0`, количество которых превышает заданное значение `max_writers`. Варианты:
|
Примечания
Примечание
- Поддерживает
check_mode.
Примеры
---
# This example adds a new galera hostgroup, it saves the mysql server config
# to disk and loads it to a runtime and also enables the config which has
# maximum of 2 writers from the writers_hostgroup.
- name: Add a galera hostgroup
community.proxysql.proxysql_galera_hostgroups:
login_user: "admin"
login_password: "admin"
writer_hostgroup: 1
backup_writer_hostgroup: 2
reader_hostgroup: 3
offline_hostgroup: 4
active: 1
max_writers: 2
writer_is_also_reader: 0
# This example disables galera hostgroup by setting active to 0
- name: Disable a galera hostgroup
community.proxysql.proxysql_galera_hostgroups:
login_user: "admin"
login_password: "admin"
writer_hostgroup: 1
backup_writer_hostgroup: 2
reader_hostgroup: 3
offline_hostgroup: 4
active: 0
# This example removes a galera hostgroup from configuration,
# saves the mysql server config to disk, and loads the mysql
# server config to runtime. It uses credentials in a supplied
# config file to connect to the proxysql admin interface.
- name: Remove a galera hostgroup
community.proxysql.proxysql_galera_hostgroups:
config_file: '/tmp/proxysql.cnf'
writer_hostgroup: 0
backup_writer_hostgroup: 1
reader_hostgroup: 2
offline_hostgroup: 3
active: 0
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
stdout dictionary | Группа хостов Galera, изменённая или удалённая из ProxySQL. Возвращается: При создании или обновлении возвращает изменённую группу; при удалении возвращает удалённую запись. Пример: |
Ссылки на коллекцию
© 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_galera_hostgroups_module.html