Make etcdadm join retry options configurable
- Dominant language
- Go
- Stars
- 2.1k
- Forks
- 328
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 9
Description
Etcdadm retries the join command by default. It has certain [default configuration values for number of retries, duration etc](https://github.com/kubernetes-sigs/etcdadm/blob/master/constants/constants.go#L163-L165).
Sometimes when etcd leader is changing and a new member joins at the same time, the initial join command could fail, and retries are helpful in that case. This is the reason why retries were originally added in etcdadm.
We should make these retries configurable in terms of number of retries and duration. This includes:
- [ ] Making a change in etcdadm and adding a patch for it to [build-tooling repo](https://github.com/aws/eks-anywhere-build-tooling/tree/main/projects/kubernetes-sigs/etcdadm/patches)
- [ ] Updating etcdadm-bootstrap-provider to accept these retry options
- [ ] Updating eks-anywhere to accept retry values for EtcdadmCluster
For now, we want to have more retries, so we're [merging a patch](https://github.com/aws/eks-anywhere-build-tooling/pull/515) to increase the default number of retries
Contributor guide
Research direction
Start with etcdadm's constants/constants.go and the existing patch area in the aws/eks-anywhere-build-tooling repository. Trace how retry count and duration could pass through etcdadm-bootstrap-provider into EtcdadmCluster. Done means all three components accept the retry options and the build-tooling patch is added.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- devops, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100