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

[area/questions] Make default snapshot-count 10k #13889

Closed
chaochn47 opened this issue Apr 5, 2022 · 3 comments
Closed

[area/questions] Make default snapshot-count 10k #13889

chaochn47 opened this issue Apr 5, 2022 · 3 comments

Comments

@chaochn47
Copy link
Member

chaochn47 commented Apr 5, 2022

I am wondering if etcd should make snapshot-count to be 10k because it is recommended in kubernetes to set this as 10k. kubernetes/kubernetes#100475 (comment)

I cannot explain why etcd uses higher default value 100k and kubeadm snapshot-count default value is 10k. Production set up typically does not have slow follower availability concerns and functional testing is keep using 2000 for quite long time.

snapshot-count: 2000

The benefits of making snapshot-count to 10k:

Any concerns about this ^ @serathius @ahrtr @ptabor @spzala

Reference

@gyuho
TLDR; I recommend lowering the default value in etcd instead of growing the value in k8s.

I think etcd snapshots are relatively 'lightweight'. The huge (100k+) value was justified when storev2 has been dumped completely with every snapshot. Currently the snapshots are ~10KB of data, mostly membership information, so 10k is a reasonable number IMHO. When storev2 is decomissioned (so etcd-3.6), I would consider checkpointing even more frequently (for faster recovery).

@chaochn47 chaochn47 changed the title Make default snapshot-count 10k [area/questions] Make default snapshot-count 10k Apr 7, 2022
@chaochn47
Copy link
Member Author

@ptabor
Copy link
Contributor

ptabor commented Apr 9, 2022

I agree that good reasons why it used to be 100'000 ended when storeV2 stopped containing key-value payload so cost of writing such snapshot is neglictable.

  • I don't think we can make such change as part of 'patch' release.
  • I think it's OK as part of minor release (v3.6)
    • We might put a warning it will be subject to change in 3.6 for those that does not set it explicitly?

@chaochn47
Copy link
Member Author

Thanks @ptabor for the comments. This issue can be closed. I will follow up with @mitake about this #7162

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

No branches or pull requests

2 participants