• Lubomir I. Ivanov's avatar
    kubeadm: run MemberAdd/Remove for etcd clients with exp-backoff retry · bc74ac3e
    Lubomir I. Ivanov authored
    When adding a new etcd member the etcd cluster can enter a state
    of vote, where any new members added at the exact same time will
    fail with an error right away.
    
    Implement exponential backoff retry around the MemberAdd call.
    
    This solves a kubeadm problem when concurrently joining
    control-plane nodes with stacked etcd members.
    
    From experiment, a few retries with milliseconds apart are
    sufficient to achieve the concurrent join of a 3xCP cluster.
    
    Apply the same backoff to MemberRemove in case the concurrent
    removal of members fails for similar reasons.
    bc74ac3e