Linux – Can’t add Nodes to Percona XtraDB cluster

linuxMySQLperconaUbuntu

In my case, I have two nodes in cluster, but when I use $service mysql bootstrap-pxc to start XtraDB cluster, I found nodes were not added to cluster. I also check /var/log/mysql/error.log, but no errors were found.

The followings are the problesm:

mysql> show status like 'wsrep%';
+--------------------------+----------------------+
| Variable_name            | Value                |
+--------------------------+----------------------+
| wsrep_cluster_conf_id    | 18446744073709551615 |
| wsrep_cluster_size       | 0                    |
| wsrep_cluster_state_uuid |                      |
| wsrep_cluster_status     | Disconnected         |
| wsrep_connected          | OFF                  |
| wsrep_local_bf_aborts    | 0                    |
| wsrep_local_index        | 18446744073709551615 |
| wsrep_provider_name      |                      |
| wsrep_provider_vendor    |                      |
| wsrep_provider_version   |                      |
| wsrep_ready              | ON                   |
+--------------------------+----------------------+
11 rows in set (0.00 sec)

Cluster check:

    root@mypercona:~# clustercheck 
    HTTP/1.1 503 Service Unavailable
    Content-Type: text/plain
    Connection: close
    Content-Length: 44
    Percona XtraDB Cluster Node is not synced.

my.cnf:

[client]
port            = 3306
socket          = /var/run/mysqld/mysqld.sock

[mysqld_safe]
socket          = /var/run/mysqld/mysqld.sock
nice            = 0

[mysqld]

user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking

bind-address            = db01

key_buffer              = 16M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8

myisam-recover         = BACKUP

query_cache_limit       = 1M
query_cache_size        = 16M

log_error = /var/log/mysql/error.log

expire_logs_days        = 10
max_binlog_size         = 100M

[mysqldump]
quick
quote-names
max_allowed_packet      = 16M

[mysql]

[isamchk]
key_buffer              = 16M


!includedir /etc/mysql/conf.d/

#"Path to Galera library
wsrep_provider=/usr/lib/libgalera_smm.so

# Cluster connection URL contains the IPs of node#1, node#2 and node#3
wsrep_cluster_address=gcomm://db01,db02
# In order for Galera to work correctly binlog format should be ROW
binlog_format=ROW

# MyISAM storage engine has only experimental support
default_storage_engine=InnoDB

# This changes how InnoDB autoincrement locks are managed and is a requirement for Galera
innodb_autoinc_lock_mode=2

# Node #1 address
wsrep_node_address=db01

# SST method
wsrep_sst_method=xtrabackup-v2

# Cluster name
wsrep_cluster_name=my_ubuntu_cluster

# Authentication for SST method
wsrep_sst_auth="sstuser:s3cretPass"

Can anyone help me solve this problem or give me some useful links about how to solve this?

I've opened ports 3306, 4567, 4444, 4568

Thank You

Best Answer

So you don't use bootstrap-pxc to add a node to a cluster. That's only for the first member of the cluster you init. All the others use the following config to get the info on the current cluster members.

 wsrep_cluster_address

It would look like

 wsrep_cluster_address = 1.1.1.1,2.2.2.2,3.3.3.3

For example.

If you don't have that on the third member then add it in there and just do a normal

service mysql start

It should try to join the cluster then

Related Topic