Adding a new node to a Galera Replication cluster

Comments

2 comments

  • Avatar
    Mark Rose

    How is this actually done?

    0
    Comment actions Permalink
  • Avatar
    Alex

    @Mark,

    Short answer:

    1. A node connects to one of the cluster members, membership protocol is initiated, after which node is connected to all members of the cluster
    2. The node receives cluster state ID (global transaction ID of the last committed transaction) and compares with its own
    3. If it is different, it sends state transfer request to cluster. Cluster chooses one of the members as a state transfer donor. Donor connects to the new node (that's an important difference from established practice) and transfers the state. There are several ways it can happen. While state transfer is happening the joining node is queueing replication events arriving from the cluster.
    4. The node sends JOIN message and is considered a full-fledged member. It then starts to apply replication events.
    5. When the replication events queue goes down to 0, the node becomes SYNCED and is allowed to process client queries.

    Long answer:

    http://www.codership.com/wiki/doku.php?id=info#adding_another_node_to_a_cluster and around.

    0
    Comment actions Permalink

Please sign in to leave a comment.

Powered by Zendesk