Forum Stats

  • 3,734,173 Users
  • 2,246,901 Discussions
  • 7,857,155 Comments

Discussions

The adoptFromGR option is set to true, but there is no replication group to adopt

WPD_DBA
WPD_DBA Member Posts: 8 Blue Ribbon
edited Dec 14, 2018 7:30AM in MySQL Community Space

I am trying to set up an InnoDB Cluster from an existing replication group. I have followed the documentation to the letter and have made several attempts but am getting nowhere fast. I am using MySQL 5.7.24 Enterprise edition and have installed MySQL Shell 8.0.11. I have 3 databases in my replcation group and when I try running the command “var cluster=Dba.createCluster(‘prodCluster’, {adoptFromGR: true});” I get the following error “Dba.createCluster: The adoptFromGR option is set to true, but there is no replication group to adopt (ArgumentError)”.

Clearly I do have an existing replication group but for some reason MySQL Shell is unable to adopt it as an InnoDB Cluster. I’ve searched MOS and Google but have not been able to find any answer to this problem.

All 3 nodes in the group are correctly configured as when I run Dba.checkInstanceConfiguration it returns the message “status”: “ok”.

As the AdoptFromGR failed to work, I decided to create the cluster using the current MASTER data instance as the seed instance for my new cluster. In mysqlsh I ran the command “var cluster=Dba.createCluster(‘prodCluster’); SUCCESS!   My cluster created ok and running cluster.status(); command afterwards shows that I have one server in R/W mode but is not tolerant to any failure.

Next I try to add another instance to the cluster by running command “cluster.addInstance(‘[email protected]:3306’);”

Initially the output reports that “Instance configuration is suitable.” but that optimism is short lived and I get the error:-

Cluster.addInstance: WARNING: Not running locally on the server and can not access its error log.

ERROR:

Group Replication join failed

ERROR: Error joining instacne to cluster: ‘server1:3306’ - Query failed. MySQL Error (3092) : ClassicSession.Query: The server is not configured properly to be an active member of the grouP. Please see more details on error log.

Needless to say I have thoroughly been through the log files and have spent hours searching Google but I am still unable to create my InnoDB Cluster and I’ve no idea why it won’t work?? The documentation makes to all seem so easy to do but the reality is quite the opposite.

I really don’t know what more I can do so am hoping someone will have some helpful insight. I’m fairly new to MySQL but do have many years Oracle and SQL Server experience.

Regards

Neil

Message was edited by: WPD_DBA I have successfully resolved my Innodb Cluster issues. 1st - I finally proved what I had suspected for some time, that this was a firewall issue, and had some of the settings changed for Port 33061 which allowed me to add an instance to the cluster. 2nd - I needed to add the parameter ‘group_replication_ip_whitelist’ to the my.cnf with a list of the ip port ranges for the servers I wanted in my cluster. The default for this parameter is AUTOMATIC and using this setting only allows Innodb to detect servers that are on the same network. Our cluster is geographically segregated with the different sites on different sub-nets, once the IP_WHITELIST was set up all nodes were successfully added to the cluster without problems. Looking at the MySQL 5.7 reference guide this is not obvious and is mentioned under the section “Securing your Cluster”. Might I suggest that for any future revision of this guide that specific mention is made to building a ‘distributed cluster’ and the need to use IP Whitelisting. May save some other poor soul a lot of time and effort. Best regards Neil

Answers

Sign In or Register to comment.