From cfe150ff0a2b76825b80893f84c153abba85b444 Mon Sep 17 00:00:00 2001 From: Amshuman K R Date: Mon, 26 Jul 2021 13:06:38 +0530 Subject: [PATCH] Introduced member leases. --- docs/proposals/multi-node/README.md | 159 +++++++++++------- ...d-backup-restore-work-flows-life-cycle.txt | 4 +- ...d-backup-restore-work-flows-life-cycle.png | Bin 82674 -> 77251 bytes 3 files changed, 100 insertions(+), 63 deletions(-) diff --git a/docs/proposals/multi-node/README.md b/docs/proposals/multi-node/README.md index a04a11b71..8130ad232 100644 --- a/docs/proposals/multi-node/README.md +++ b/docs/proposals/multi-node/README.md @@ -45,6 +45,9 @@ This document proposes an approach (along with some alternatives) to support pro - [Alternative](#alternative-3) - [Status](#status) - [Members](#members) + - [Note](#note-1) + - [Member name as the key](#member-name-as-the-key) + - [Member Leases](#member-leases) - [Conditions](#conditions) - [ClusterSize](#clustersize) - [Alternative](#alternative-4) @@ -52,19 +55,19 @@ This document proposes an approach (along with some alternatives) to support pro - [1. Pink of health](#1-pink-of-health) - [Observed state](#observed-state) - [Recommended Action](#recommended-action) - - [2. All members are Ready but AllMembersReady condition is stale](#2-all-members-are-ready-but-allmembersready-condition-is-stale) + - [2. Member status is out of sync with their leases](#2-member-status-is-out-of-sync-with-their-leases) - [Observed state](#observed-state-1) - [Recommended Action](#recommended-action-1) - - [3. Not all members are Ready but AllMembersReady condition is stale](#3-not-all-members-are-ready-but-allmembersready-condition-is-stale) + - [3. All members are Ready but AllMembersReady condition is stale](#3-all-members-are-ready-but-allmembersready-condition-is-stale) - [Observed state](#observed-state-2) - [Recommended Action](#recommended-action-2) - - [4. Majority members are Ready but Ready condition is stale](#4-majority-members-are-ready-but-ready-condition-is-stale) + - [4. Not all members are Ready but AllMembersReady condition is stale](#4-not-all-members-are-ready-but-allmembersready-condition-is-stale) - [Observed state](#observed-state-3) - [Recommended Action](#recommended-action-3) - - [5. Majority members are NotReady but Ready condition is stale](#5-majority-members-are-notready-but-ready-condition-is-stale) + - [5. Majority members are Ready but Ready condition is stale](#5-majority-members-are-ready-but-ready-condition-is-stale) - [Observed state](#observed-state-4) - [Recommended Action](#recommended-action-4) - - [6. Some members have not updated their status for a while](#6-some-members-have-not-updated-their-status-for-a-while) + - [6. Majority members are NotReady but Ready condition is stale](#6-majority-members-are-notready-but-ready-condition-is-stale) - [Observed state](#observed-state-5) - [Recommended Action](#recommended-action-5) - [7. Some members have been in Unknown status for a while](#7-some-members-have-been-in-unknown-status-for-a-while) @@ -561,30 +564,36 @@ status: members: - name: etcd-main-0 # member pod name id: 272e204152 # member Id - role: Member # Member|Learner + role: Leader # Member|Leader status: Ready # Ready|NotReady|Unknown - lastHeartbeatTime: "2020-11-10T12:48:01Z" lastTransitionTime: "2020-11-10T12:48:01Z" - reason: HeartbeatSucceeded # HeartbeatSucceeded|HeartbeatFailed|HeartbeatGracePeriodExceeded|UnknownGracePeriodExceeded|PodNotReady + reason: LeaseSucceeded # LeaseSucceeded|LeaseExpired|UnknownGracePeriodExceeded|PodNotRead - name: etcd-main-1 # member pod name - id: 272e204152 # member Id - role: Member # Member|Learner + id: 272e204153 # member Id + role: Member # Member|Leader status: Ready # Ready|NotReady|Unknown - lastHeartbeatTime: "2020-11-10T12:48:01Z" lastTransitionTime: "2020-11-10T12:48:01Z" - reason: HeartbeatSucceeded # HeartbeatSucceeded|HeartbeatFailed|HeartbeatGracePeriodExceeded|UnknownGracePeriodExceeded|PodNotReady + reason: LeaseSucceeded # LeaseSucceeded|LeaseExpired|UnknownGracePeriodExceeded|PodNotRead ``` -This proposal recommendations to enhance `etcd-backup-restore` so that the _leading_ backup-restore sidecar container maintains the above status information in the `Etcd` status sub-resource. +This proposal recommends that `etcd-druid` (preferrably, the `custodian` controller in `etcd-druid`) maintains most of the information in the `status` of the `Etcd` resources described above. + +One exception to this is the `BackupReady` condition which is recommended to be maintained by the _leading_ `etcd-backup-restore` sidecar container. This will mean that `etcd-backup-restore` becomes Kubernetes-aware. But there are other reasons for making `etcd-backup-restore` Kubernetes-aware anyway (e.g. to [maintain health conditions](#health-check)). This enhancement should keep `etcd-backup-restore` backward compatible. But it should be possible to use `etcd-backup-restore` Kubernetes-unaware as before this proposal. This is possible either by auto-detecting the existence of kubeconfig or by an explicit command-line flag (such as `--enable-etcd-status-updates` which can be defaulted to `false` for backward compatibility). ### Members -The `members` section of the status is intended to be updated by the `etcd-backup-restore` sidecar container corresponding to the member for the most part. -Especially, members can be marked with `status: Ready` only by their `etcd-backup-restore` sidecar container. -However, they can be marked with `status: NotReady` either by their `etcd-backup-restore` sidecar container (with `reason: HeartbeatFailed`) or by `etcd-druid` (as explained [below](#decision-table-for-etcd-druid-based-on-the-status)). + The `members` section of the status is intended to be maintained by `etcd-druid` (preferraby, the `custodian` controller of `etcd-druid`) based on the [`leases` of the individual members](#member-leases). + +#### Note + +An earlier design in this proposal was for the individual `etcd-backup-restore` sidecars to update the corresponding `status.members` entries themselves. But this was redesigned to use [member `leases`](#member-leases) to avoid conflicts rising from frequent updates and the limitations in the support for [Server-Side Apply](https://kubernetes.io/docs/reference/using-api/server-side-apply/) in some versions of Kubernetes. + +The `spec.holderIdentity` field in the `leases` is used to communicate the ETCD member `id` and `role` between the `etcd-backup-restore` sidecars and `etcd-druid`. + +#### Member name as the key In an ETCD cluster, the member `id` is the [unique identifier for a member](https://etcd.io/docs/v3.4/dev-guide/api_reference_v3/#message-member-etcdserveretcdserverpbrpcproto). However, this proposal recommends using a [single `StatefulSet`](#kubernetes-context) whose pods form the members of the ETCD cluster and `Pods` of a `StatefulSet` have [uniquely indexed names](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#ordinal-index) as well as [uniquely addressible DNS](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#stable-network-id). @@ -598,6 +607,25 @@ For example, if an ETCD cluster is scaled up from `3` to `5` and the new members Hence, the superfluous entries in both `members` array as well as the ETCD cluster need to be [cleaned up](#recommended-action-12) [as appropriate](#work-flows-only-on-the-leading-member). +#### Member Leases + +One [Kubernetes `lease` object](https://kubernetes.io/docs/reference/kubernetes-api/cluster-resources/lease-v1/) per desired ETCD member is maintained by `etcd-druid` (preferrably, the `custodian` controller in `etcd-druid`). +The `lease` objects will be created in the same `namespace` as their owning `Etcd` object and will have the same `name` as the member to which they correspond (which, in turn would be the same as [the `pod` name in which the member ETCD process runs](#member-name-as-the-key)). + +The `lease` objects are created and deleted only by `etcd-druid` but are continually renewed within the `leaseDurationSeconds` by the [individual `etcd-backup-restore` sidecars](#work-flows-independent-of-leader-election-in-all-members) (corresponding to their members) if the the corresponding ETCD member is ready and is part of the ETCD cluster. + +This will mean that `etcd-backup-restore` becomes Kubernetes-aware. But there are other reasons for making `etcd-backup-restore` Kubernetes-aware anyway (e.g. to [maintain health conditions](#health-check)). +This enhancement should keep `etcd-backup-restore` backward compatible. +But it should be possible to use `etcd-backup-restore` Kubernetes-unaware as before this proposal. This is possible either by auto-detecting the existence of kubeconfig or by an explicit command-line flag (such as `--enable-etcd-lease-renewal` which can be defaulted to `false` for backward compatibility). + +A `member` entry in the `Etcd` resource [`status`](#status) would be marked as `Ready` (with `reason: LeaseSucceeded`) if the corresponding `pod` is ready and the corresponding `lease` has not yet expired. +The `member` entry would be marked as `NotReady` if the corresponding `pod` is not ready (with reason `PodNotReady`) or as `Unknown` if the corresponding `lease` has expired (with `reason: LeaseExpired`). + +While renewing the lease, the `etcd-backup-restore` sidecars also maintain the ETCD member `id` and their `role` (`Leader` or `Member`) separated by `:` in the `spec.holderIdentity` field of the corresponding `lease` object since this information is only available to the `ETCD` member processes and the `etcd-backup-restore` sidecars (e.g. `272e204152:Leader` or `272e204153:Member`). +When the `lease` objects are created by `etcd-druid`, the `spec.holderIdentity` field would be empty. + +The value in `spec.holderIdentity` in the `leases` is parsed and copied onto the `id` and `role` fields of the corresponding `status.members` by `etcd-druid`. + ### Conditions The `conditions` section in the status describe the overall condition of the ETCD cluster. @@ -652,7 +680,7 @@ Especially, it is proposed that individual members auto-heal where possible, eve - Ready: `n` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `0` - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `0` - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: `0` + - Members with expired `lease`: `0` - conditions: - Ready: `true` - AllMembersReady: `true` @@ -662,7 +690,37 @@ Especially, it is proposed that individual members auto-heal where possible, eve Nothing to do -### 2. All members are `Ready` but `AllMembersReady` condition is stale +### 2. Member status is out of sync with their leases + +#### Observed state + +- Cluster Size + - Desired: `n` + - Current: `n` +- `StatefulSet` replicas + - Desired: `n` + - Ready: `n` +- `Etcd` status + - members + - Total: `n` + - Ready: `r` + - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `0` + - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `0` + - Members with expired `lease`: `l` + - conditions: + - Ready: `true` + - AllMembersReady: `true` + - BackupReady: `true` + +#### Recommended Action + +Mark the `l` members corresponding to the expired `leases` as `Unknown` with reason `LeaseExpired` and with `id` populated from `spec.holderIdentity` of the `lease` if they are not already updated so. + +Mark the `n - l` members corresponding to the active `leases` as `Ready` with reason `LeaseSucceeded` and with `id` populated from `spec.holderIdentity` of the `lease` if they are not already updated so. + +Please refer [here](#member-leases) for more details. + +### 3. All members are `Ready` but `AllMembersReady` condition is stale #### Observed state @@ -678,7 +736,7 @@ Nothing to do - Ready: `n` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `0` - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `0` - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: `0` + - Members with expired `lease`: `0` - conditions: - Ready: N/A - AllMembersReady: false @@ -688,7 +746,7 @@ Nothing to do Mark the status condition type `AllMembersReady` to `true`. -### 3. Not all members are `Ready` but `AllMembersReady` condition is stale +### 4. Not all members are `Ready` but `AllMembersReady` condition is stale #### Observed state @@ -704,7 +762,7 @@ Mark the status condition type `AllMembersReady` to `true`. - Ready: `r` where `0 <= r < n` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `nr` where `0 < nr < n` - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `u` where `0 < u < n` - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: `h` where `0 < h < n` + - Members with expired `lease`: `h` where `0 < h < n` - conditions: - Ready: N/A - AllMembersReady: true @@ -716,7 +774,7 @@ Mark the status condition type `AllMembersReady` to `true`. Mark the status condition type `AllMembersReady` to `false`. -### 4. Majority members are `Ready` but `Ready` condition is stale +### 5. Majority members are `Ready` but `Ready` condition is stale #### Observed state @@ -732,7 +790,7 @@ Mark the status condition type `AllMembersReady` to `false`. - Ready: `r` where `r > n/2` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `nr` where `0 < nr < n/2` - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `u` where `0 < u < n/2` - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: `h` where `0 < h < n/2` + - Members with expired `lease`: N/A - conditions: - Ready: `false` - AllMembersReady: N/A @@ -744,7 +802,7 @@ Mark the status condition type `AllMembersReady` to `false`. Mark the status condition type `Ready` to `true`. -### 5. Majority members are `NotReady` but `Ready` condition is stale +### 6. Majority members are `NotReady` but `Ready` condition is stale #### Observed state @@ -760,7 +818,7 @@ Mark the status condition type `Ready` to `true`. - Ready: `r` where `0 < r < n` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `nr` where `0 < nr < n` - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `u` where `0 < u < n` - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: `h` where `0 < h < n` + - Members with expired `lease`: N/A - conditions: - Ready: `true` - AllMembersReady: N/A @@ -772,32 +830,6 @@ Mark the status condition type `Ready` to `true`. Mark the status condition type `Ready` to `false`. -### 6. Some members have not updated their status for a while - -#### Observed state - -- Cluster Size - - Desired: N/A - - Current: `n` -- `StatefulSet` replicas - - Desired: N/A - - Ready: N/A -- `Etcd` status - - members - - Total: N/A - - Ready: N/A - - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: N/A - - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: N/A - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: `h` where `h <= n` - - conditions: - - Ready: N/A - - AllMembersReady: N/A - - BackupReady: N/A - -#### Recommended Action - -Mark the `h` members as `Unknown` in `Etcd` status with `reason: HeartbeatGracePeriodExceeded`. - ### 7. Some members have been in `Unknown` status for a while #### Observed state @@ -814,7 +846,7 @@ Mark the `h` members as `Unknown` in `Etcd` status with `reason: HeartbeatGraceP - Ready: N/A - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: N/A - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `u` where `u <= n` - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: N/A + - Members with expired `lease`: N/A - conditions: - Ready: N/A - AllMembersReady: N/A @@ -840,7 +872,7 @@ Mark the `u` members as `NotReady` in `Etcd` status with `reason: UnknownGracePe - Ready: N/A - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: N/A - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: N/A - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: N/A + - Members with expired `lease`: N/A - conditions: - Ready: N/A - AllMembersReady: N/A @@ -866,7 +898,7 @@ Mark the `n - s` members (corresponding to the pods that are not `Ready`) as `No - Ready: `n - f` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `f` where `f < n/2` - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: `0` - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: N/A + - Members with expired `lease`: N/A - conditions: - Ready: true - AllMembersReady: false @@ -874,7 +906,7 @@ Mark the `n - s` members (corresponding to the pods that are not `Ready`) as `No #### Recommended Action -Delete the `f` `NotReady` member pods to force restart of the pods if they do not automatically restart via failed `livenessProbe`. The expectation is that they will either re-join the cluster as an existing member or remove themselves and join as new members on restart of the container or pod. +Delete the `f` `NotReady` member pods to force restart of the pods if they do not automatically restart via failed `livenessProbe`. The expectation is that they will either re-join the cluster as an existing member or remove themselves and join as new members on restart of the container or pod and [renew their `leases`](#member-leases). ### 10. Quorum lost with a majority of members `NotReady` @@ -892,7 +924,7 @@ Delete the `f` `NotReady` member pods to force restart of the pods if they do no - Ready: `n - f` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: `f` where `f >= n/2` - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: N/A - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: N/A + - Members with expired `lease`: N/A - conditions: - Ready: false - AllMembersReady: false @@ -900,7 +932,7 @@ Delete the `f` `NotReady` member pods to force restart of the pods if they do no #### Recommended Action -Scale down the `StatefulSet` to `replicas: 0`. Ensure that all member pods are deleted. Ensure that all the members are removed from `Etcd` status. Recover the cluster from loss of quorum as discussed [here](#recovering-an-etcd-cluster-from-failure-of-majority-of-members). +Scale down the `StatefulSet` to `replicas: 0`. Ensure that all member pods are deleted. Ensure that all the members are removed from `Etcd` status. Delete and recreate all the [member `leases`](#member-leases). Recover the cluster from loss of quorum as discussed [here](#recovering-an-etcd-cluster-from-failure-of-majority-of-members). ### 11. Scale up of a healthy cluster @@ -918,7 +950,7 @@ Scale down the `StatefulSet` to `replicas: 0`. Ensure that all member pods are d - Ready: `n` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: 0 - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: 0 - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: 0 + - Members with expired `lease`: 0 - conditions: - Ready: true - AllMembersReady: true @@ -928,6 +960,8 @@ Scale down the `StatefulSet` to `replicas: 0`. Ensure that all member pods are d Add `d - n` new members by scaling the `StatefulSet` to `replicas: d`. The rest of the `StatefulSet` spec need not be updated until the next cluster bootstrapping (alternatively, the rest of the `StatefulSet` spec can be updated pro-actively once the new members join the cluster. This will trigger a rolling update). +Also, create the additional [member `leases`](#member-leases) for the `d - n` new members. + ### 12. Scale down of a healthy cluster #### Observed state @@ -944,7 +978,7 @@ Add `d - n` new members by scaling the `StatefulSet` to `replicas: d`. The rest - Ready: `n` - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: 0 - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: 0 - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: 0 + - Members with expired `lease`: 0 - conditions: - Ready: true - AllMembersReady: true @@ -954,6 +988,8 @@ Add `d - n` new members by scaling the `StatefulSet` to `replicas: d`. The rest Remove `d - n` existing members (numbered `d`, `d + 1` ... `n`) by scaling the `StatefulSet` to `replicas: d`. The `StatefulSet` spec need not be updated until the next cluster bootstrapping (alternatively, the `StatefulSet` spec can be updated pro-actively once the superfluous members exit the cluster. This will trigger a rolling update). +Also, delete the [member `leases`](#member-leases) for the `d - n` members being removed. + The [superfluous entries in the `members` array](13-superfluous-member-entries-in-etcd-status) will be cleaned up as explained [here](#recommended-action-12). The superfluous members in the ETCD cluster will be cleaned up by the [leading `etcd-backup-restore` sidecar](#work-flows-only-on-the-leading-member). @@ -973,7 +1009,7 @@ The superfluous members in the ETCD cluster will be cleaned up by the [leading ` - Ready: N/A - Members `NotReady` for long enough to be evicted, i.e. `lastTransitionTime > notReadyGracePeriod`: N/A - Members with readiness status `Unknown` long enough to be considered `NotReady`, i.e. `lastTransitionTime > unknownGracePeriod`: N/A - - Members with heartbeat stale enough to be considered as of `Unknown` readiness status, i.e. `lastHeartbeatTime > heartbeatGracePeriod`: N/A + - Members with expired `lease`: N/A - conditions: - Ready: N/A - AllMembersReady: N/A @@ -982,6 +1018,7 @@ The superfluous members in the ETCD cluster will be cleaned up by the [leading ` #### Recommended Action Remove the superfluous `m - n` member entries from `Etcd` status (numbered `n`, `n+1` ... `m`). +Remove the superfluous `m - n` [member `leases`](#member-leases) if they exist. The superfluous members in the ETCD cluster will be cleaned up by the [leading `etcd-backup-restore` sidecar](#work-flows-only-on-the-leading-member). ## Decision table for etcd-backup-restore during initialization @@ -1206,7 +1243,7 @@ The life-cycle of these work-flows is shown below. ### Work-flows independent of leader election in all members - Serve the HTTP API that all members are expected to support currently -- Check the health of the respective etcd member and update the corresponding entry in the [`status.members` array](#members) +- Check the health of the respective etcd member and renew the corresponding [member `lease`](#member-leases). ### Work-flows only on the leading member diff --git a/docs/proposals/multi-node/etcd-backup-restore-work-flows-life-cycle.txt b/docs/proposals/multi-node/etcd-backup-restore-work-flows-life-cycle.txt index f03362416..53ebac9b0 100644 --- a/docs/proposals/multi-node/etcd-backup-restore-work-flows-life-cycle.txt +++ b/docs/proposals/multi-node/etcd-backup-restore-work-flows-life-cycle.txt @@ -4,14 +4,14 @@ title etcd-backup-restore work-flow life-cycle participant etcd-backup-restore http server (initialize) -participant health checker and staus updater +participant health checker and lease renewer participant etcd-backup-restore leader elector/detector participant snapshotter participant defragmenter participant member-garbagecollector activate etcd-backup-restore http server (initialize) -activate health checker and staus updater +activate health checker and lease renewer activate etcd-backup-restore leader elector/detector etcd-backup-restore leader elector/detector->etcd-backup-restore leader elector/detector: OnLeaderStart diff --git a/docs/proposals/multi-node/images/etcd-backup-restore-work-flows-life-cycle.png b/docs/proposals/multi-node/images/etcd-backup-restore-work-flows-life-cycle.png index 47f91094ec51420cbbcf7861e41c246d8ba34ca8..39938c3f462acc5f237b4bb3144f14d8fcbc589d 100644 GIT binary patch literal 77251 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