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

Some doubts about etcd new future learner #11401

Closed
andyzheung opened this issue Nov 27, 2019 · 6 comments
Closed

Some doubts about etcd new future learner #11401

andyzheung opened this issue Nov 27, 2019 · 6 comments

Comments

@andyzheung
Copy link

I am interested in learner feature, but have some problem when I try to use it?

1、why does only one learner in the cluster?

2、why the cluster health instance etcd is less than quorum size, that I can't promote the learner to a vote member?
When I use learner endponit:
image

or when I use that still health instance endpoint:
image

@andyzheung andyzheung changed the title Some doubt about etcd new future learner Some doubts about etcd new future learner Nov 27, 2019
@jingyih
Copy link
Contributor

jingyih commented Nov 27, 2019

1、why does only one learner in the cluster?

Leaner is a new feature. We currently set the maximum of learners to be 1, to prevent leader from being potentially overloaded by newly added learners. This limit could be increased in the future when learner feature is more stable.

2、why the cluster health instance etcd is less than quorum size, that I can't promote the learner to a vote member?

Promoting learner to voting member is quorum operation.

@andyzheung
Copy link
Author

andyzheung commented Nov 28, 2019

1、why does only one learner in the cluster?

Leaner is a new feature. We currently set the maximum of learners to be 1, to prevent leader from being potentially overloaded by newly added learners. This limit could be increased in the future when learner feature is more stable.

2、why the cluster health instance etcd is less than quorum size, that I can't promote the learner to a vote member?

Promoting learner to voting member is quorum operation.

Thank you for your reply.

About the second question, I have some case that I want to need use learner to backup for the cluster.Just like the following picture, we only have two nodes, that use only two instances, other two are learners, we want to when one node is down, that I can promote the other node learner to vote, so that qurum size still 2,

image

We want to solve the two node use case about etcd, but etcd is raft protocal, any other suggestion?

@jingyih

@jingyih
Copy link
Contributor

jingyih commented Nov 28, 2019

If you need fault tolerance, the minimum voting member is 3. When one member is down, you can restart or replace that member. Running a cluster with 2 voting member does not provide better cluster availability as compared to a single member.

@andyzheung
Copy link
Author

If you need fault tolerance, the minimum voting member is 3. When one member is down, you can restart or replace that member. Running a cluster with 2 voting member does not provide better cluster availability as compared to a single member.

I want to solve the problem how to Running etcd in only two nodes. We have only two nodes in our use case.
That I see the learner can recieve the data from the leader, and think it can treat as the data backup in the cluster, when I need to it become voter I will promote.I don't know if what I think can be Ok?

@jingyih

@jingyih
Copy link
Contributor

jingyih commented Dec 2, 2019

If you want the cluster to make progress (meaning able to serve APIs that require quorum, such as linearizable read, member reconfiguration) in the case of 1 voting member is down, you need minimum 3 voting members. You can run 3 voting members on 2 nodes but this is not an ideal situation. If the node with 2 members is down, you lose 2 members all together.

@stale
Copy link

stale bot commented Apr 6, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Apr 6, 2020
@stale stale bot closed this as completed Apr 27, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

3 participants