How to check Galera Cluster status?
mysql mariadb cluster galera devops linux ubuntu
To check Galera
Cluster status, we need to query database
with SHOW STATUS statements, for variables
regarding cluster:
-
wsrep_cluster_size -
wsrep_local_state_comment
To allow password-less checks for (root) user, we can provide
password in ~/.my.cnf file and pass it
with --defaults-extra-file parameter to
the mysql command.
The .my.cnf file can contain various extra
configuration variables, at this case we will store password
for root MySQL user (not to confuse
with unix root user password)
in /root/.my.cnf:
[client] password=root_password
Storing file in root home directory will prevent reading password by others.
The final status checking bash script for Galera Cluster consists of following code, explained earlier:
#!/bin/bash sudo mysql --defaults-extra-file=/root/.my.cnf -e "SHOW STATUS LIKE 'wsrep_cluster_size';" sudo mysql --defaults-extra-file=/root/.my.cnf -e "SHOW STATUS LIKE 'wsrep_local_state_comment';"
The example output of script:
+--------------------+-------+ | Variable_name | Value | +--------------------+-------+ | wsrep_cluster_size | 2 | +--------------------+-------+ +---------------------------+--------+ | Variable_name | Value | +---------------------------+--------+ | wsrep_local_state_comment | Synced | +---------------------------+--------+
The cluster size in this case i 2 nodes, the state is Synced.