community.proxysql.proxysql_backend_servers – Добавляет или удаляет mysql хосты в интерфейс администрирования proxysql.
Примечание
Этот плагин является частью коллекции community.proxysql (версия 1.0.0).
Для его установки используйте: ansible-galaxy collection install community.proxysql.
Для использования в книге задач укажите: community.proxysql.proxysql_backend_servers.
Обзор
- Модуль community.proxysql.proxysql_backend_servers добавляет или удаляет mysql хосты с помощью интерфейса администрирования proxysql.
Требования
Ниже перечислены требования, необходимые на хосте, на котором будет выполняться этот модуль.
- PyMySQL (Python 2.7 и Python 3.X), или
- MySQLdb (Python 2.x)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| comment строка | Значение по умолчанию: "" | Поле текста, которое можно использовать для любых целей, определенных пользователем. Может быть описанием хранимых данных, напоминанием о добавлении или отключении хоста или JSON, обрабатываемым скриптом проверки. |
| compression целое число | Если значение compression больше 0, новые соединения с этим сервером будут использовать сжатие. Если опущено, значение по умолчанию в базе данных proxysql для compression равно 0. | |
| config_file путь | Значение по умолчанию: "" | Укажите файл конфигурации, из которого необходимо прочитать login_user и login_password. |
| hostgroup_id целое число | Значение по умолчанию: 0 | Группа хостов, в которую включен этот экземпляр mysqld. Экземпляр может быть частью одной или нескольких групп хостов. |
| hostname строка / обязательный | IP-адрес, по которому можно связаться с экземпляром mysqld. | |
| load_to_runtime логическое значение |
| Динамически загружать конфигурацию в оперативную память. |
| login_host строка | Значение по умолчанию: "127.0.0.1" | Хост, используемый для подключения к интерфейсу администрирования ProxySQL. |
| login_password строка | Пароль, используемый для аутентификации в интерфейсе администрирования ProxySQL. | |
| login_port целое число | Значение по умолчанию: 6032 | Порт, используемый для подключения к интерфейсу администрирования ProxySQL. |
| login_unix_socket строка | Сокет, используемый для подключения к интерфейсу администрирования ProxySQL. | |
| login_user строка | Имя пользователя, используемое для аутентификации в интерфейсе администрирования ProxySQL. | |
| max_connections целое число | Максимальное количество подключений, которые ProxySQL откроет к этому серверу-бекенду. Если опущено, значение по умолчанию в базе данных proxysql для max_connections равно 1000. | |
| max_latency_ms целое число | Время пинга отслеживается регулярно. Если время пинга хоста больше max_latency_ms, он исключается из пула подключений (хотя сервер остается ONLINE). Если опущено, значение по умолчанию в базе данных proxysql для max_latency_ms равно 0. | |
| max_replication_lag целое число | Если больше 0, ProxySQL будет регулярно отслеживать задержку репликации. Если задержка репликации превысит max_replication_lag, proxysql временно откажется от сервера, пока репликация не догонит. Если опущено, значение по умолчанию в базе данных proxysql для max_replication_lag равно 0. | |
| port целое число | Значение по умолчанию: 3306 | Порт, по которому можно связаться с экземпляром mysqld. |
| save_to_disk логическое значение |
| Сохранить конфигурацию в базу данных sqlite на диске для сохранения конфигурации. |
| state строка |
| Когда present - добавляет хост, когда absent - удаляет хост. |
| status строка |
| ONLINE - Сервер-бекенд полностью функционален. OFFLINE_SOFT - Когда сервер переводится в режим OFFLINE_SOFT, соединения остаются активными до завершения текущей транзакции. Это позволяет плавно отсоединить бекенд. OFFLINE_HARD - Когда сервер переводится в режим OFFLINE_HARD, существующие соединения закрываются, а новые входящие соединения тоже не принимаются. Если опущено, значение по умолчанию в базе данных proxysql для status - ONLINE. |
| use_ssl логическое значение |
| Если use_ssl установлено в True, соединения с этим сервером будут выполняться с использованием SSL-соединений. Если опущено, значение по умолчанию в базе данных proxysql для use_ssl равно False. |
| weight целое число | Чем больше вес сервера по отношению к другим весам, тем выше вероятность, что сервер будет выбран из группы хостов. Если опущено, значение по умолчанию в базе данных proxysql для weight равно 1. |
Примеры
---
# This example adds a server, it saves the mysql server config to disk, but
# avoids loading the mysql server config to runtime (this might be because
# several servers are being added and the user wants to push the config to
# runtime in a single batch using the community.general.proxysql_manage_config
# module). It uses supplied credentials to connect to the proxysql admin
# interface.
- name: Add a server
community.proxysql.proxysql_backend_servers:
login_user: 'admin'
login_password: 'admin'
hostname: 'mysql01'
state: present
load_to_runtime: False
# This example removes a server, saves the mysql server config to disk, and
# dynamically 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 server
community.proxysql.proxysql_backend_servers:
config_file: '~/proxysql.cnf'
hostname: 'mysql02'
state: absent
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| stdout словарь | При создании/обновлении вернет измененный хост, при удалении вернет удаленный запись. | Измененный или удаленный mysql хост из proxysql Пример: {'changed': True, 'hostname': '192.168.52.1', 'msg': 'Добавлен сервер в mysql_hosts', 'server': {'comment': '', 'compression': '0', 'hostgroup_id': '1', 'hostname': '192.168.52.1', 'max_connections': '1000', 'max_latency_ms': '0', 'max_replication_lag': '0', 'port': '3306', 'status': 'ONLINE', 'use_ssl': '0', 'weight': '1'}, 'state': 'present'} |
Авторы
- Ben Mildren (@bmildren)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/proxysql/proxysql_backend_servers_module.html