proxysql_backend_servers – Добавляет или удаляет mysql хосты из интерфейса администрирования proxysql
Описание
- Модуль proxysql_backend_servers добавляет или удаляет mysql хосты, используя интерфейс администрирования proxysql.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- PyMySQL (Python 2.7 и Python 3.X), или
- MySQLdb (Python 2.x)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| comment - | Значение по умолчанию: "" | Поле текста, которое может быть использовано для любых целей, определённых пользователем. Может быть описанием того, что хранит хост, напоминанием о времени добавления или отключения хоста, или JSON, обрабатываемым какой-либо скриптом-проверкой. |
| compression - | Если значение compression больше 0, новые подключения к этому серверу будут использовать сжатие. Если опущено, значение по умолчанию для compression в базе данных proxysql равно 0. | |
| config_file path | Значение по умолчанию: "" | Укажите файл конфигурации, из которого следует читать login_user и login_password. |
| hostgroup_id - | Значение по умолчанию: 0 | Группа хостов, в которую включён этот экземпляр mysqld. Экземпляр может принадлежать одной или нескольким группам хостов. |
| hostname - / обязательно | IP-адрес, по которому можно связаться с экземпляром mysqld. | |
| load_to_runtime boolean |
| Динамическая загрузка конфигурации в оперативную память. |
| login_host строка | Значение по умолчанию: "127.0.0.1" | Хост, используемый для подключения к интерфейсу администрирования ProxySQL. |
| login_password строка | Пароль, используемый для аутентификации в интерфейсе администрирования ProxySQL. | |
| login_port целое число | Значение по умолчанию: 6032 | Порт, используемый для подключения к интерфейсу администрирования ProxySQL. |
| login_user строка | Имя пользователя, используемое для аутентификации в интерфейсе администрирования ProxySQL. | |
| max_connections - | Максимальное количество подключений, которое ProxySQL откроет к этому серверу бэкенда. Если опущено, значение по умолчанию для max_connections в базе данных proxysql равно 1000. | |
| max_latency_ms - | Время пинга отслеживается регулярно. Если время пинга хоста превышает max_latency_ms, он исключается из пула подключений (хотя сервер остаётся ONLINE). Если опущено, значение по умолчанию для max_latency_ms в базе данных proxysql равно 0. | |
| max_replication_lag - | Если больше 0, ProxySQL будет регулярно отслеживать задержку репликации. Если задержка репликации превысит max_replication_lag, proxysql временно отклонит сервер, пока репликация не догонит. Если опущено, значение по умолчанию для max_replication_lag в базе данных proxysql равно 0. | |
| port - | Значение по умолчанию: 3306 | Порт, по которому можно связаться с экземпляром mysqld. |
| save_to_disk boolean |
| Сохранить конфигурацию в базу данных sqlite на диске для сохранения конфигурации. |
| state - |
| Когда present - добавляет хост, когда absent - удаляет хост. |
| status - |
| ONLINE - сервер бэкенда полностью функционирует. OFFLINE_SOFT - когда сервер переведён в OFFLINE_SOFT режим, подключения остаются в использовании до завершения текущей транзакции. Это позволяет плавно отсоединить бэкенд. OFFLINE_HARD - когда сервер переведён в OFFLINE_HARD режим, существующие подключения отключаются, а новые входящие подключения также не принимаются. Если опущено, значение по умолчанию для status в базе данных proxysql равно ONLINE. |
| use_ssl boolean |
| Если use_ssl установлено в True, подключения к этому серверу будут выполняться с использованием SSL-соединений. Если опущено, значение по умолчанию для use_ssl в базе данных proxysql равно False. |
| weight - | Чем больше вес сервера относительно других весов, тем выше вероятность выбора сервера из группы хостов. Если опущено, значение по умолчанию для weight в базе данных proxysql равно 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 M(proxysql_manage_config) module). It
# uses supplied credentials to connect to the proxysql admin interface.
- 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.
- 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'} |
Статус
- Этот модуль гарантированно будет иметь изменения интерфейса, совместимые со старыми версиями, в дальнейшем. [stableinterface]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.9/modules/proxysql_backend_servers_module.html