proxysql_replication_hostgroups – Manages replication hostgroups using the proxysql admin interface
Synopsis
- Each row in mysql_replication_hostgroups represent a pair of writer_hostgroup and reader_hostgroup. ProxySQL will monitor the value of read_only for all the servers in specified hostgroups, and based on the value of read_only will assign the server to the writer or reader hostgroups.
Requirements
The below requirements are needed on the host that executes this module.
- PyMySQL (Python 2.7 and Python 3.X), or
- MySQLdb (Python 2.x)
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
comment
-
|
Text field that can be used for any purposes defined by the user.
|
|
config_file
path
|
Default:
""
|
Specify a config file from which
login_user and
login_password are to be read.
|
load_to_runtime
boolean
|
|
Dynamically load config to runtime memory.
|
login_host
string
|
Default:
"127.0.0.1"
|
The host used to connect to ProxySQL admin interface.
|
login_password
string
|
The password used to authenticate to ProxySQL admin interface.
|
|
login_port
integer
|
Default:
6032
|
The port used to connect to ProxySQL admin interface.
|
login_user
string
|
The username used to authenticate to ProxySQL admin interface.
|
|
reader_hostgroup
- /
required
|
Id of the reader hostgroup.
|
|
save_to_disk
boolean
|
|
Save config to sqlite db on disk to persist the configuration.
|
state
-
|
|
When
present - adds the replication hostgroup, when
absent - removes the replication hostgroup.
|
writer_hostgroup
- /
required
|
Id of the writer hostgroup.
|
Examples
--- # This example adds a replication hostgroup, it saves the mysql server config # to disk, but avoids loading the mysql server config to runtime (this might be # because several replication hostgroup 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_replication_hostgroups: login_user: 'admin' login_password: 'admin' writer_hostgroup: 1 reader_hostgroup: 2 state: present load_to_runtime: False # This example removes a replication hostgroup, 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_replication_hostgroups: config_file: '~/proxysql.cnf' writer_hostgroup: 3 reader_hostgroup: 4 state: absent
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
stdout
dictionary
|
On create/update will return the newly modified group, on delete it will return the deleted record. |
The replication hostgroup modified or removed from proxysql
Sample:
{'changed': True, 'msg': 'Added server to mysql_hosts', 'repl_group': {'comment': '', 'reader_hostgroup': '1', 'writer_hostgroup': '2'}, 'state': 'present'}
|
Status
- This module is guaranteed to have backward compatible interface changes going forward. [stableinterface]
- This module is maintained by the Ansible Community. [community]
Authors
- Ben Mildren (@bmildren)
Hint
If you notice any issues in this documentation, you can edit this document to improve it.
© 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_replication_hostgroups_module.html