Skip to content

Allow master selection#43

Merged
igor47 merged 4 commits intomasterfrom
allow_master_selection
Feb 11, 2014
Merged

Allow master selection#43
igor47 merged 4 commits intomasterfrom
allow_master_selection

Conversation

@igor47
Copy link
Collaborator

@igor47 igor47 commented Feb 5, 2014

this is an alternate approach to #29 which assumes that nerve has already been modified to create sequential ids. such a change is still pending; without it, the haproxy status page will become less readable to administrators.

@Dareen how does this compare with your vision?

but still make the stats socket readable if a name exists
they don't add any additional information
this is instead of looking for it in the node name, which is properly metadata.
this allows us to always generate ephemeral sequence ids for nerve node names
and still have readable information in haproxy
this is an alternate approach to #29 which is not tied to particular
service watchers. as long as the watcher ads a numeric ID field to each backend hash,
a leader can be elected.

if a leader cannot be elected, we fail hard by returning no backends
igor47 added a commit that referenced this pull request Feb 11, 2014
@igor47 igor47 merged commit 203b39a into master Feb 11, 2014
@igor47 igor47 deleted the allow_master_selection branch February 11, 2014 02:03
@igor47 igor47 mentioned this pull request Feb 11, 2014
@Dareen
Copy link

Dareen commented Jul 20, 2014

@igor47 this works great in a happy scenario, but in edge cases like Synapse unable to connect to ZK (which delegates the health check to haproxy by default), and then the master node fails, this will cause downtime.
In #29 I added the "backup" haproxy option to all the slave nodes while generating the backend stanza

@Dareen
Copy link

Dareen commented Jul 20, 2014

This PR addresses the backup option #83

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants