Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Skydns is not resilient for cluster changes #304

Open
ederuiter opened this issue Nov 14, 2016 · 0 comments
Open

Skydns is not resilient for cluster changes #304

ederuiter opened this issue Nov 14, 2016 · 0 comments

Comments

@ederuiter
Copy link

We have a setup where skydns only connects to the local etcd2 instance, in this case every cluster error directly affects the client (as the etcd client won't do automatic failover/retry). In order to make this more resilient, it would be enough to call Sync() on the etcd client to get all endpoints from the cluster (even better is to call AutoSync). This way the etcd client automatically does a failover to another endpoint in case of loss of connectivity.

I have a basic implementation in the commit below:
ederuiter@6da0690

Note: in case of writes to etcd, the write can even fail if the local etcd2 instance is still running, but the leader is stopped/rebooted/not-available. So without a call to Sync the write would fail during the leader selection, with the call to Sync the write would be automatically retried.

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

No branches or pull requests

1 participant