Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.5.0
- [USER] Add new cloud provider OSS (Alibaba Object Storage Service) support for etcd-backup-restore (#108, @minchaow)
- [USER] Added configurable flag
delta-snapshot-memory-limit
to restrict memory consumption due to periodic delta snapshots. (#84, @swapnilgm) - [OPERATOR] Fixed memory/goroutine leak: close previous Etcd watches (#116, @databus23)
- [USER] It now skips full snapshot if there were no updates on the etcd since previous full snapshot. (#86, @swapnilgm)
- [USER] Fixed the authentication call for swift to retry authentication on token expiration by setting
AllowReauth
flag for swift authentication call totrue
. (#80, @georgekuruvillak) - [OPERATOR] Added the option to disable delta snapshots, by setting the 'delta-snapshot-period-seconds' flag to any value lesser than 1. (#96, @shreyas-s-rao)
- [OPERATOR] Added a sanity check to prevent data loss during initialization, by ensuring that the etcd revision is greater than or equal to the latest snapshot revision (#85, @shreyas-s-rao)
- [OPERATOR] Add mock test for GCS provider. (#82, @swapnilgm)
- [OPERATOR] There is now a helm chart to deploy etcd-backup-restore. (#59, @bergerx)
Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.4.1
- [USER] Added configurable flag
delta-snapshot-memory-limit
to restrict memory consumption due to periodic delta snapshots. (#84, @swapnilgm) - [USER] Fixed the authentication call for swift to retry authentication on token expiration by setting
AllowReauth
flag for swift authentication call totrue
. (#80, @georgekuruvillak)
Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.4.0
- [USER] Now, snapshot upload happens in chunk. One can configure the number of parallel chunk uploads by setting command line argument
max-parallel-chunk-uploads
. Default is set to 5. (#68, @swapnilgm) - [OPERATOR] Dynamic profiling support is added. Now we expose the
debug/pprof/*
endpoint to dynamically profile cpu, heap consumption. To enable profiling one has to explicitly setenable-profiling
onserver
sub-command. (#60, @swapnilgm) - [USER] At the time of restoration, the etcd data directory will be restored to temporary directory with suffix
.part
i.e.<path-to-etcd-data-dir>.part
. On successful restoration we will replace actual etcd data directory with this. This brings standard and more cleaner approach to restoration. (#58, @georgekuruvillak) - [USER] Restoration time optimised by parallelising the fetching of delta snapshots. Added the --max-fetchers flag to the etcdbrctl command to specify the maximum number of fetcher threads that are allowed to run in parallel. (#57, @shreyas-s-rao)
- [USER] Etcd-backup-restore utility when started in server mode will start defragmenting etcd member data directory periodically, so that db size will be under control. You can set defragmentation period in number of hours by setting
defragmentation-period-in-hours
flag onetcdbrctl server
command. (#55, @swapnilgm)
- [OPERATOR] Updated the azure sdk as per the recommendation in doc to use package
github.com/Azure/azure-storage-blob-go
as azure storage SDK, (#76, @swapnilgm) - [OPERATOR] Added mock test for Openstack Swift snapstore. (#75, @swapnilgm)
- [OPERATOR] Snapshot are now uploaded in chunks, considering only erroneous chunk upload in case of failure. (#53, @swapnilgm)
Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.3.1
- Previously, in case of a failed delta snapshot, data directory was marked as valid even though there is data loss due to further delta snapshots in queue which weren't getting applied.
- Integration test for AWS:
- Covers restoration, data directory validation and snapshotter code.
Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.3.0
-
Incremental Backup-restore (gardener#29):
- In backup, full snapshot is taken first and then we apply watch and persist the logs accumulated over certain period to snapshot store.
- Restore process, restores from the full snapshot, start the embedded etcd and apply the logged events one by one.
- Checksum is append in delta snapshot for verification.
-
Exponential garbage collection (gardener#31):
- Introduces new argument:
- Keep only the last 24 hourly backups and of all other backups only the last backup in a day
- Keep only the last 7 daily backups and of all other backups only the last backup in a week
- Keep only the last 4 weekly backups
- Unit tests are added for same
-
Initial setup for Integration test for AWS
Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.2.3
- Etcd made unready in case backup container fails to take periodic backups.
- Backup container made to retry exponentially rather than crash out.
- Readiness probe renamed from
/metrics
to/healthz
.
Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.2.2
- TLS support for etcd endpoints.
- Delete contents of data directory instead of the directory.
Docker Image: eu.gcr.io/gardener-project/gardener/etcdbrctl:0.1.0
- Take snapshot of etcd at periodic interval.
- Save snapshot to object stores provided by AWS, Azure, GCS, Openstack and also to local disk.
- Verify data directory of etcd for corruption before bootstrapping.
- Restore the etcd data directory from previous snapshot.