KubeBlocks 1.0.2 (2026-02-12)
We are delighted to announce the release of KubeBlocks v1.0.2. This release includes several new features, bug fixes, and various improvements. Here are the detailed update contents.
KubeBlocks
Features
- Make StorageClass reclaimPolicy configurable - Allows configuring StorageClass reclaimPolicy via values.yaml when deploying KubeBlocks. (#10040)
- Support specifying an update policy for the upgrade operation - Allows specifying update policies for upgrade operations. (#9736)
- Support referencing the service version in vars - Enables referencing service versions in variables. (#9735)
Bug Fixes
- Fix
persistentVolumeClaimRetentionPolicynot working - Ensures PVCs are kept onRetainpolicy when the cluster is deleted or scaled down. (#10043) - Remove global affinity and tolerations for worker plane - Removed global settings of affinity and tolerations for worker nodes. It's recommended to set affinity and tolerations at the cluster level through
schedulingPolicyinstead. (#9949) - Adopt Restored PVC - Adopt restored PVCs in InstanceSet when restoring from backup. (#9882)
- Improve sharding restore - Enhances the sharding cluster restore functionality. (#10026,#10023,#9900)
KubeBlocks Addons
MySQL
- Support MySQL minor versions 8.0.41, 8.0.44 (#2295)
- Fix MySQL
log_outputparameter constraint (#2408) - Disable jemalloc for ARM (#2381))
PostgreSQL
- Support PostgreSQL 18.1 (#2409)
- Improve PostgreSQL config constraint comment (#2376)
- Unset
archive_timeoutimmutable for PostgreSQL (#2380) - Set
wal_keep_sizeby data disk size (#2372)
Redis
- Support 7.2.11/7.4.6/8.0.4/8.2.2 for redis CVE-2025-49844 issue (#2123)
- Support more minor versions of Redis 7.2.12/7.4.7/8.0.5/8.2.3/8.4.0 (#2347)
- Improve Redis
maxmemoryparameter (#2392) - Fix redis cluster switchover failed (#2423)
- Fix invalid config cue constraint (#2421)
- Fix hscale failed when using loadBalance mode (#2397)
- Fix redis cluster restore failed (#2404)
- Fix redis pitr no time range (#2204)
MongoDB
- Support MongoDB minor versions 8.0.17/7.0.28/6.0.27 (#2382)
- Support MongoDB audit log (#2111)
- Fix MongoDB backup hang (#2387)
ClickHouse
- Improve ClickHouse
memberjoin(#2431) - Improve ClickHouse sharding restore (#2357)
- Fix ClickHouse restore failed when specified the init cluster name (#2429)
Elasticsearch
- Support ES 6.x, ES 7.10.2 (#1998,#2337)
- Support zone awareness shard allocation (#2185)
- Add plugin
analysis-pinyin(#2285) - Fix single node backup failed (#2290)
- Fix ES render tpl compatibility (#2411)
Kafka
- Support Kafka 3.7/3.8/3.9 (#2174)
- Support custom SASL (#2259)
- Support Kafka backup topics (#2260)
- Fix Kafka backup when both SASL and TLS enabled (#2289)
Milvus
MinIO
- Support MinIO RELEASE.2025-10-15T17-29-55Z (#2279)
Nebula
- Fix Nebula backup and restore failed (#2435)
Qdrant
- Support new version v1.15.4 (#2037)
RabbitMQ
- Support RabbitMQ 4.2.1, 4.1.6, 3.8.34(#2319)
- Support plugins management (#2317)
- Set memory limit to prevent OOMs (#2241)
- Add RabbitMQ web stomp port (#2428)
RocketMQ
- Fix RocketMQ
namesrchscale timeout (#2420)
TiDB
ZooKeeper
Breaking Changes
Variable Rendering Fix (#9935)
Variable rendering now passes map[string]any instead of map[string]string. Addons that relied on the old behavior may need template updates.
Before (KB 1.0.1 and earlier) — workaround for string-only vars:
{{if ne (index . "ENDPOINT_PORT") ""}}{{.ENDPOINT_PORT}}{{else}}5022{{end}}
After (KB 1.0.2) — simplified expression:
{{if index . "ENDPOINT_PORT"}}{{.ENDPOINT_PORT}}{{else}}5022{{end}}
Affected addons: OceanBase, MongoDB, Redis, Redis Cluster. See Issue #9934 for context.
Symptoms
After upgrading to KubeBlocks v1.0.2, existing clusters that use the OceanBase, MongoDB, Redis, or Redis Cluster addons may show:
-
When you run
kubectl describe component, events similar to:template: vars:1:50: executing "vars" at <.REDIS_HOST_NETWORK_PORT>: map has no entry for key "REDIS_HOST_NETWORK_PORT"
-
In the KubeBlocks operator logs, errors similar to:
INFO ComponentParameterReconciler failed to create task context: template: vars:1:50: executing "vars" at <.REDIS_HOST_NETWORK_PORT>: map has no entry for key "REDIS_HOST_NETWORK_PORT" {"controller": "componentparameter", "controllerGroup": "parameters.kubeblocks.io", "controllerKind"
Resolution
- Option 1 — In-place fix: Follow the approach in PR #2328 and update the variable rendering logic in the affected ComponentDefinition locally. If
ComponentDefinitiongoesUNAVAILABLE, pls annotate theComponentDefinitionCR to allow the changes.kubectl annotate cmpd <COMPONENT_DEFINITION_NAME> apps.kubeblocks.io/skip-immutable-check=true
- Option 2 — Upgrade addon and migrate clusters: Upgrade the affected addon, then migrate existing clusters to the new addon version one by one. See Migrate Existing Clusters to a New Addon Version.
Upgrade to v1.0.2
Refer to Upgrade to KubeBlocks v1.0.x.
Full Changelog
You can check the full changelog for additional changes and kubeblocks-addons for addons changes.