How update wsrep_cluster_address without restaring noded ?

Hi !

I bootstrap new cluster on CentOS with bootstrap-pxc option of init.d script. Unfortunately in my.cnf was defined IP just of this node, after starting other nodes (where i defined all nodes IPs in my.cnf) when i try SHOW VARIABLES LIKE “wsrep_cluster_address” i got

on bootstraped node

+-----------------------+------------------------+
| Variable_name | Value |
+-----------------------+------------------------+
| wsrep_cluster_address | gcomm:// |
+-----------------------+------------------------+

that right, but on other nodes i got


+-----------------------+------------------------+
| Variable_name | Value |
+-----------------------+------------------------+
| wsrep_cluster_address | gcomm://ip_of_bootstrap_node:4567 |
+-----------------------+------------------------+

so just one node ip and no IPs of other 2 nodes.

Is it possible update this variable to state with all nodes listed in Value without cluster restart ?

Thanks.

Hi,

wsrep_cluster_address is used when node is (re)started, I think it’s ok just to rewrite my.cnf.

Ok i can’t understand what is source for this variable, because in my.cnf on non-bootstraped nodes wsrep_cluster_address was defined with all nodes in cluster IPs, but after start they didn’t take it and as i wrote early variable contain just one IP. And cluster now in use, so i can’t restart nodes without understand how i must improve situations, if possible, without cluster or nodes restart.

thank you for your reply.

I’m checking the group communication initialization code,
especially whether wsrep_cluster_address is the same as peer node address seen below

140728 12:00:02 [Note] WSREP: gcomm: connecting to group ‘galera_cluster’, peer ‘xxx:’

  • wsrep_cluster_address is dynamic variable, so you may change it online by set global … ( but it seems there’s no meaning to change )
  • please wait one more day until I confirm code of variable update when group communication established.

I tried again and galera_cluster_address seems to be equal to the address which is written in my.cnf when the node is started.

I also tested when the node is restarted and node is started by SST.

thank you.