Releases: gardener/etcd-druid
Releases · gardener/etcd-druid
v0.12.0
[etcd-druid]
⚠️ Breaking Changes
- [OPERATOR]
etcd
Statefulsets are not claimed anymore based on labels. Instead, the statefulsets are fetched using Name and Namespace combination. Thus,etcd.spec.selector
does not have an effect on statefulsets anymore. (gardener/etcd-druid#365, @abdasgupta) - [OPERATOR] The entrypoint for
etcd-druid
in its container image has been modified. (gardener/etcd-druid#360, @dimityrmirchev)
✨ New Features
- [DEVELOPER] Add support for running envtest on M1 Macbooks. (gardener/etcd-druid#396, @timuthy)
- [DEVELOPER] Deploying the etcd StatefulSet through a Helm chart has been abandoned. A codified version (component concept) is now used for this purpose. (gardener/etcd-druid#365, @abdasgupta)
🐛 Bug Fixes
- [OPERATOR] A bug has been fixed that caused the
etcd-backup-restore
side-car to connect to the etcd cluster via thepeer-service
URL. The side-car is supposed to use theclient-service
instead since it a) exposes client port2379
and b) redirects traffic only to members which are ready to service traffic. (gardener/etcd-druid#388, @timuthy) - [OPERATOR] An issue has been fixed that caused the
liveness
andreadiness
probes ofetcd
to always succeed even though an error was reported. This prevented defective etcd pods from being restarted automatically and caused unready candidates being considered as ready to serve traffic via theetcd service
. (gardener/etcd-druid#396, @timuthy) - [OPERATOR] A
startup
probe has been added toetcd
to allow 2 minutes of initialization time before checking for etcd liveness. (gardener/etcd-druid#396, @timuthy)
🏃 Others
- [OPERATOR] The definition of the
etcd.status.ready
field was defined more precisely due to changed semantics of multi-node etcd clusters.etcd.status.ready
istrue
whenever all underlying etcd replicas are ready. Please note, that the implementation for this check was not changed. (gardener/etcd-druid#389, @timuthy) - [OPERATOR] Fixed an issue in the release job needed to add the correct image version
config/default/manager_image_patch.yaml
. (gardener/etcd-druid#397, @aaronfern) - [OPERATOR] Added pod permission in etcd_role that now enable
etcd-backup-restore
to get/list/watch pods (gardener/etcd-druid#372, @aaronfern) - [OPERATOR] Etcd-Druid's Golang version has been update to
1.18.4.
. (gardener/etcd-druid#375, @timuthy) - [OPERATOR] The correct image version has been set in
config/default/manager_image_patch.yaml
to match the current release. (gardener/etcd-druid#377, @timuthy)
[etcd-backup-restore]
⚠️ Breaking Changes
- [OPERATOR] Dropping the feature of passing storage container credentials through ENV for the following storage provider: S3, Swift, OCS, ABS, OSS. Please switch to pass the storage container credentials through volume file mount. (gardener/etcd-backup-restore#493, @ishan16696)
🏃 Others
- [OPERATOR] A new flag
--service-endpoints
has been added to theetcdbrctl server
command. These (Kubernetes) service URLs ensure thatetcd-backup-restore
only connects to etcd member which are ready to server traffic. Especially theMemberAdd
andInit
steps require this. (gardener/etcd-backup-restore#512, @timuthy) - [OPERATOR] Fixed a bug where etcd calls related to multi node operation were used in single node operation (gardener/etcd-backup-restore#504, @aaronfern)
- [OPERATOR] Assigned the correct Peer address to the Etcd after it restores from backup-bucket. (gardener/etcd-backup-restore#505, @ishan16696)
- [OPERATOR] No attempt is made to update member Peer URL when trying to promote a member (gardener/etcd-backup-restore#506, @aaronfern)
- [OPERATOR] An issue has been fixed that caused the
Backup-Restore
component to connect to the wrong etcd cluster for initializing and member-add procedures. (gardener/etcd-backup-restore#510, @timuthy) - [OPERATOR] A new flag
--service-endpoints
has been added to theetcdbrctl server
command. These (Kubernetes) service URLs ensure thatetcd-backup-restore
only connects to etcd member which are ready to server traffic. Especially theMemberAdd
andInit
steps require this. (gardener/etcd-backup-restore#513, @timuthy)
📰 Noteworthy
- [USER] For multi-node etcd: Added a feature of single member etcd restoration in case of data/data-dir of etcd member found to be corrupted or invalid. (gardener/etcd-backup-restore#509, @ishan16696)
v0.11.2
[etcd-backup-restore]
🏃 Others
- [OPERATOR] An issue has been fixed that caused the
Backup-Restore
component to connect to the wrong etcd cluster for initializing and member-add procedures. (gardener/etcd-backup-restore#510, @timuthy)
v0.11.1
[etcd-druid]
🏃 Others
- [OPERATOR] Added pod permission in etcd_role that now enable
etcd-backup-restore
to get/list/watch pods (gardener/etcd-druid#372, @aaronfern)
[etcd-backup-restore]
🐛 Bug Fixes
- [OPERATOR] Temp fix: skip the single member restoration if data-dir found to be invalid. (gardener/etcd-backup-restore#501, @ishan16696)
- [OPERATOR] Fixed a bug in Scaleup feature in func:
IsMemberInCluster()
which can cause Scaleup feature to get fail. (gardener/etcd-backup-restore#501, @ishan16696)
🏃 Others
- [OPERATOR] Fixed a bug where etcd calls related to multi node operation were used in single node operation (gardener/etcd-backup-restore#504, @aaronfern)
- [OPERATOR] Assigned the correct Peer address to the Etcd after it restores from backup-bucket. (gardener/etcd-backup-restore#505, @ishan16696)
- [OPERATOR] No attempt is made to update member Peer URL when trying to promote a member (gardener/etcd-backup-restore#506, @aaronfern)
v0.11.0
[etcd-druid]
🏃 Others
- [OPERATOR] livenessProbe of etcd container has been updated to
ETCDCTL_API=3 etcdctl get foo --consistency=s
making the consistencyserializable
. (gardener/etcd-druid#357, @ishan16696) - [OPERATOR] failureThreshold has been updated to
5
for both livenessProbe and readinessProbe of etcd. (gardener/etcd-druid#357, @ishan16696) - [OPERATOR] The
etcd-druid
now usesdistroless
instead ofalpine
as a base image. (gardener/etcd-druid#360, @dimityrmirchev) - [OPERATOR]
etcd-druid
will now also add statefulset permissions to the etcd role (gardener/etcd-druid#366, @aaronfern) - [OPERATOR] Published docker images for Etcd-Druid are now multi-arch ready. They support
linux/amd64
andlinux/arm64
. (gardener/etcd-druid#367, @timuthy) - [OPERATOR] Added a new condition
BackupReady
to the etcd status (gardener/etcd-druid#271, @aaronfern)
[etcd-backup-restore]
⚠️ Breaking Changes
- [DEVELOPER] Added new package
membergarbagecollector
to remove superfluous members from the ETCD cluster. Due to this, etcd-backup-restore now needs permissions to listpods
andstatefulsets
. (gardener/etcd-backup-restore#403, @aaronfern)
🏃 Others
- [OPERATOR] Added new package
membergarbagecollector
to remove superfluous members from the ETCD cluster. (gardener/etcd-backup-restore#403, @aaronfern)
📰 Noteworthy
- [OPERATOR] Published docker images for Etcd-Backup-Restore are now multi-arch ready. They support
linux/amd64
andlinux/arm64
. (gardener/etcd-backup-restore#499, @timuthy) - [OPERATOR] The Etcd-Backup-Restore image has been updated to
Alpine 3.15.4
. (gardener/etcd-backup-restore#499, @timuthy) - [OPERATOR] Etcd can now scale up itself from a single member cluster to a multi member cluster (gardener/etcd-backup-restore#487, @aaronfern)
[etcd-custom-image]
🏃 Others
- [OPERATOR] Published docker images for Etcd-Custom-Image are now multi-arch ready. They support linux/amd64 and linux/arm64. (gardener/etcd-custom-image#19, @timuthy)
v0.10.0
[etcd-druid]
🐛 Bug Fixes
- [OPERATOR] A bug has been fixed that deleted member
lease
objects in all namespaces. With this release member lease renewals are enabled again. (gardener/etcd-druid#353, @timuthy)
📖 Documentation
- [DEPENDENCY] Paths transformations in .docforge/manifest.yaml for simplification (gardener/etcd-druid#302, @Kostov6)
🏃 Others
- [OPERATOR] Fixed a bug where druid did not copy etcd labels to configmap (gardener/etcd-druid#343, @aaronfern)
- [OPERATOR] Do not re-used resource limits from an existing etcd stateful set. This will cause a RESTART(!) of the etcd pod for existing clusters that currently have a resource limit set for the etcd stateful-set, but whose etcd resource does not specify a resource limit. (gardener/etcd-druid#342, @danielfoehrKn)
- [OPERATOR] ETCd backups can now be successfully copied between OCS buckets. (gardener/etcd-druid#330, @Wieneo)
[etcd-backup-restore]
🐛 Bug Fixes
- [OPERATOR] Throw Fatal error to avoid edge case potential deadlocks. (gardener/etcd-backup-restore#471, @ishan16696)
🏃 Others
- [OPERATOR] Introducing a timeout
timeoutToOpenBoltDB
to open boltDB within a given time, so backup-restore won't have to wait for ever. (gardener/etcd-backup-restore#480, @ishan16696) - [OPERATOR] When the owner check fails,
etcd-backup-restore
will restart theetcd
process right before attempting to take a final snapshot, if the owner check was previously successful. (gardener/etcd-backup-restore#478, @plkokanov) - [OPERATOR] Fixed retrieval of credentials during copy operation for backups stored in Swift snapstore. (gardener/etcd-backup-restore#476, @plkokanov)
- [OPERATOR] ETCD won't restart from the PVC if it is wrongly mounted to the pod (gardener/etcd-backup-restore#468, @abdasgupta)
- [OPERATOR] OCS S3 Snapstore now supports supplying access information via a mounted secret. (gardener/etcd-backup-restore#465, @Wieneo)
📰 Noteworthy
- [OPERATOR] An initial-cluster field is now expected in the ETCD config (gardener/etcd-backup-restore#482, @abdasgupta)
[etcd-custom-image]
🏃 Others
- [OPERATOR] The base image of etcd has been set to Alpine 3.15.4. (gardener/etcd-custom-image#18, @timuthy)
v0.8.5
[etcd-druid]
🏃 Others
- [OPERATOR] Do not re-used resource limits from an existing etcd stateful set. This will cause a RESTART(!) of the etcd pod for existing clusters that currently have a resource limit set for the etcd stateful-set, but whose etcd resource does not specify a resource limit. (#342, @danielfoehrKn)
[etcd-backup-restore]
🏃 Others
- [OPERATOR] When the owner check fails,
etcd-backup-restore
will restart theetcd
process right before attempting to take a final snapshot, if the owner check was previously successful. (gardener/etcd-backup-restore#478, @plkokanov)
v0.8.4
[etcd-backup-restore]
🏃 Others
- [OPERATOR] Fixed retrieval of credentials during copy operation for backups stored in Swift snapstore. (gardener/etcd-backup-restore#476, @plkokanov)
v0.8.3
[etcd-backup-restore]
🐛 Bug Fixes
- [OPERATOR] Throw Fatal error to avoid edge case potential deadlocks. (gardener/etcd-backup-restore#467, @ishan16696)
🏃 Others
- [OPERATOR] ETCD won't restart from the PVC if it is wrongly mounted to the pod (gardener/etcd-backup-restore#470, @abdasgupta)
v0.9.0
[etcd-druid]
⚠️ Breaking Changes
- [OPERATOR] If Spec.Replicas in ETCD CR is greater than 0 and a even number, then no statefulset for ETCD nodes will be created and so the ETCD cluster won't be setup by Druid (gardener/etcd-druid#314, @abdasgupta)
✨ New Features
- [USER] Add
SchedulingConstraints
field to Etcd spec. The currently supported constraints areAffinity
andTopologySpreadConstraints
. (gardener/etcd-druid#329, @shreyas-s-rao)
🐛 Bug Fixes
- [OPERATOR] A bug has been fixed which prevented the
ServiceAccount
'sautomountServiceAccountToken
field from being reconciled. (gardener/etcd-druid#316, @rfranzke)
🏃 Others
- [OPERATOR] Deployed configmap programmatically as component instead of chart (gardener/etcd-druid#314, @abdasgupta)
- configmap configures ETCD config based on the number of nodes in cluster. Number of nodes in cluster is derived from spec.Replicas of ETCD CR
- Introduced separate TLS config for client and peer communication with ETCD cluster
[etcd-backup-restore]
📰 Noteworthy
- [OPERATOR] Multi-node etcd bootstrapping is now supported. This is an alpha feature intended for initial use and evaluation. Please do not enable this feature for your productive workloads (gardener/etcd-backup-restore#419, @abdasgupta)
- Multi-node etcd restoration from backup buckets is not supported
- Intended to work only with etcd-druid v0.9.x and beyond
- Intended to work only with etcd-custom-image v3.4.13-bootstrap-4 and beyond
v0.8.2
[etcd-backup-restore]
🐛 Bug Fixes
- [OPERATOR] Fix defragmentation fail issue which occurs due to x509: failed to validate certificate for 0.0.0.0 because it doesn't contain any IP SANs. (gardener/etcd-backup-restore#459, @ishan16696)