Highlights
We are delighted to announce the release of KubeBlocks v0.9.1. This release includes several new features, bug fixes, and various improvements. Here are the detailed update contents.
KubeBlocks
- Support for Cluster Stop and Start Operations via Cluster API
This allows users to meet different operation needs in various scenarios. - Enhanced Instance Rebuild Capability in OpsRequest
Combined with KubeBlocks’ InstanceSet, this greatly improves the system’s recovery capability in failure scenarios. - Multi-Version Support for ConfigConstraint
Provides a smoother upgrade experience for users of KubeBlocks V0.8.x.
Addons
- Redis: Supports PITR (Point-in-Time Recovery) and key-based recovery.
- Zookeeper: Supports backup.
- New Versions: Supports new versions of MySQL and PostgreSQL.
What's Changed
New Features
KubeBlocks
- OpsDefinition and BackupPolicyTemplate support cmpdName prefix and regex matching (#8174)
- OpsDefinition and BackupPolicyTemplate now support component name prefixes and regular expression matching, offering greater flexibility.
- High Availability (HA) Records (#8089)
Added support for HA records, enhancing fault tolerance and system reliability. - Cluster API Start and Stop Operations (#7783)
Adds the ability of starting and stopping clusters via Cluster API, simplifying cluster management. - Support for Horizontal Scaling on Instance Rebuilds (#7710)
You can choose how to rebuild certain instance, in-place-rebuild or remote-rebuild, via inPlace field in OpsRequest API. - Automatic Cleanup of Failed OpsRequests (#7796)
Adds a mechanism to automatically clean up failed OpsRequests, improving resource management. - Log Collection on Backup Failure (#8208)
Supports collecting logs when backup operations fail.
Addons
- Redis Addon
- Support for Loki (#707)
- Support for Minio (#926)
- Support for RabbitMQ (#746)
- Support for MySQL 8.4 (#987)
- Support for PostgreSQL 16 (#973)
- Zookeeper Addon Improvements
Supports backup. (#794, #851)
Others
- ComponentDefinition Immutability Check
Added a default immutability check for ComponentDefinition to avoid accidental changes, enhancing system stability. - Removal of the Application Addon (#7866)
The Application Addon has been removed from the codebase and is no longer installed by default. However, you can still install it manually if needed.
Changelog
- feat: InstanceSet supports Instance global ordinal for each InstanceTemplate by @YTGhost in #7746
- feat: use scheduling policy for instance template by @starnop in #7745
- add examples to release-0.9 by @ahjing99 in #7752
- chore: fix lint error by @free6om in #7778
- feat: support start and stop through cluster API by @leon-inf in #7783
- chore: pick controller gen panic for go1.22 by @sophon-zt in #7808
- feat: cmpd immutable check as default by @leon-inf in #7818
- chore: pick mysql/wesql has no slow log by @sophon-zt in #7827
- feat: support customized controller user-agent (#7850) by @free6om in #7867
- feat: Support setting ParallelPodManagement concurrency by @YTGhost in #7879
- chore: cherry pick cicd workflow optimize by @JashBook in #7980
- chore: lifecycle action job supports default cluster tolerations by @Y-Rookie in #7974
- feat: Supports upper-layer modification of the InstanceSet's UpdateStrategy by @YTGhost in #7978
- feat: add validation for PodUpdatePolicy by @YTGhost in #7984
- docs: cherry-pick docs from main by @michelle-0808 in #7992
- docs: fix cn doc errors by @michelle-0808 in #8005
- chore: fix null addon.spec.helm.installValues value (#8010) by @ldming in #8011
- chore: fix helm invalid null values (#8020) by @ldming in #8021
- feat: support redis(standalone replica) pitr by @Chiwency in #7998
- chore: remove some KB CRDs from the resource category all by @leon-inf in #8036
- chore: add etcd addon by @shanshanying in #8056
- feat: support NoRSMEnv feature gate (#8059) by @free6om in #8060
- fix: updateStrategy bug by @YTGhost in #8066
- chore: turn off mongodb ha in lorry by @xuriwuyun in #8072
- chore: P10K optimizations (#8045) by @free6om in #8070
- chore: auto upgrade addons version or update apis doc by @apecloud-bot in #8073
- fix: support leave member by using any pods by @cjc7373 in #8031
- fix: mongo dump backup failed with incorrect version by @wangyelei in #8067
- chore: pick support generate primary and public key for sshd to release-0.9 by @sophon-zt in #8087
- docs: update overview in release-0.9 by @michelle-0808 in #8097
- fix: missing some annotation when restoring from ops by @wangyelei in #8101
- chore: exclude dataproctection pods from kb services by @ldming in #8102
- feat: support to specify k8s scheduling policy in cluster API by @leon-inf in #8081
- feat: support ha records by @xuriwuyun in #8089
- feat: support InstanceSet PVC ownerReference by @free6om in #8113
- feat: compDef reference support regular expression matching by @Y-Rookie in #8123
- docs: sync 0.9 docs by @michelle-0808 in #8122
- docs: fix docs format bugs (#8118) by @michelle-0808 in #8127
- chore: remove the backward compatibility to PDB by @leon-inf in #8083
- chore: apply user defined labels and annotations to account&tls secret, pvcs, services owned by comp (#8141) by @Y-Rookie in #8153
- chore: chore: generate and convert to shared account secret for sharding password defined with seed by @Y-Rookie in #8155
- feat: specify node for rebuild instance ops by @cjc7373 in #8161
- feat: redis-restore-by-keys by @Chiwency in #8129
- docs: add rabbitmq docs and update other related docs by @michelle-0808 in #8164
- chore: auto upgrade addons version or update apis doc by @apecloud-bot in #8169
- chore: remove CV update validation by @shanshanying in #8173
- chore: skip validate restore in webhook by @shanshanying in #8175
- chore: remove CV create validation by @shanshanying in #8179
- chore: pick update headless svc labels for the prometheus scrape job to release-0.9 (#8088) by @sophon-zt in #8098
- feat: opsDef and bpt support cmpd name prefix and regex matching by @wangyelei in #8174
- chore: add crd patch role by @shanshanying in #8181
- fix: the reclaim policy of the rebuilt PV is incorrect. by @wangyelei in #8184
- chore: fix the phase of the upgrade ops is incorrect by @wangyelei in #8189
- feat: add BuildInstanceName2TemplateMap public api by @YTGhost in #8194
- fix: config-related resource cannot be cleaned up after disable addons by @sophon-zt in #8188
- chore: collect the log of the backup failed by @wangyelei in #8208
- fix: create redis bpt failed by @wangyelei in #8218
- chore: set clusterdefinition.componentDefs default to empty list by @shanshanying in #8227
- fix: InPlacePodVerticalScaling not used by @free6om in #8230
Full Changelog: v0.9.0...v0.9.1