This is our second alpha release of Valkey Operator which includes several features, improvements, and bug fixes since the last iteration, notables include:
- Configuration applied live against nodes, without the need of rolling the pods
- Only a small subset of configurations supported currently
- Deploy a minimal pod disruption budget to ensure only 1 node in a cluster is disrupted
- Support a topology spread constraint, allowing primaries and replicas of a shard to be placed on different Kubernetes nodes
- Roll true replicas first before primaries
- Support images from private container registries
- Reduce the memory of the operator when deployed to a larger cluster
- Support for alpine images
- Several cluster stability improvements and fixes
Upgrading in-place is not supported, you may have to tear down your Valkey Cluster and redeploy it.
A huge thank you to all the contributors in this release! 🎉
What's Changed
- Add prefix to container image version tags. by @SuperQ in #174
- docs: Remove image.tag=main override in quickstart by @jdheyburn in #183
- add resetpass to UserAclSpec by @hieu2102 in #166
- [fix] Switch to test-e2e context if it exists already by @jdheyburn in #181
- [feat] Add minimal pod disruption budget by @jdheyburn in #182
- chore: remove ConfigMap suffix from managed resource names by @yeomin4242 in #190
- docs: Add doc about updating RBAC permissions by @jdheyburn in #192
- chore: Add prefix to headless service resource by @jdheyburn in #189
- perf: pipeline getNodeState to save valkey roundtrips by @rueian in #195
- Filter informer cache to operator-managed resources only by @bjosv in #194
- fix: handle fragmented slot ranges in assignSlotsToPendingPrimaries by @bjosv in #196
- Set config epoch on new nodes before MEET to prevent slot loss by @bjosv in #197
- feat: add watch-namespace flag to filter namespaces to watch for resources by @jdheyburn in #175
- fix: check primary node first when resolving shard index by @bjosv in #207
- fix empty IP in 'CLUSTER SLOTS' for single shard clusters by @sandeepkunusoth in #204
- fix: rolling update loses all keys when replicas are not synced by @bjosv in #208
- chore(deps): bump docker/login-action from 4.1.0 to 4.2.0 by @dependabot[bot] in #217
- chore(deps): bump actions/checkout from 6.0.2 to 6.0.3 by @dependabot[bot] in #221
- chore(deps): bump docker/metadata-action from 6.0.0 to 6.1.0 by @dependabot[bot] in #220
- docs: Add AGENTS.md and update documentation by @jdheyburn in #188
- add modules workaround docs by @hieu2102 in #214
- chore(deps): bump docker/build-push-action from 7.1.0 to 7.2.0 by @dependabot[bot] in #218
- chore(deps): bump docker/setup-buildx-action from 4.0.0 to 4.1.0 by @dependabot[bot] in #219
- feat: add shard-aware topology spread constraints by @DharmendraChoudhary67 in #163
- fix: disable replica migration and validity factor in cluster config by @bjosv in #222
- fix: Liveness and readiness probe scripts with sh for supporting alpine images by @sandeepkunusoth in #205
- enhancement: Use Recreate deployment strategy by @jdheyburn in #225
- fix: New cluster rolls immediately after creation by @jdheyburn in #230
- [enhancement] Roll replicas first during ValkeyNode updates by @jdheyburn in #228
- (feat) support images from private container registry by @sandeepkunusoth in #234
- feat: Live configuration apply framework with MVP configs by @jdheyburn in #209
New Contributors
- @yeomin4242 made their first contribution in #190
- @rueian made their first contribution in #195
Full Changelog: v0.1.0...v0.2.0