Skip to content

Releases: apecloud/kubeblocks

KubeBlocks v0.8.2

20 Mar 09:00
Compare
Choose a tag to compare

Highlights

  • Supports Redis Cluster
    KubeBlocks currently supports Redis Sentinel mode, which provides excellent failover experiences. However, since it does not inherently provide data sharding, it may limit the system's horizontal scalability when dealing with large datasets and high read/write operations. Thus, an analytics application that requires rapid aggregation and querying of large volumes of data is a top priority.
    Although the Sentinel mode ensures failover and high availability, all the data still resides on a single Redis instance, subject to its memory and performance limitations. By implementing Redis Cluster support in KubeBlocks, the analytics application can distribute its dataset across multiple Redis nodes (shards), each handling a subset of the data. This not only allows for greater memory distribution but also enables parallel processing, significantly improving the performance of data-intensive operations.

New Features

KubeBlocks

  • Sharding Topology.
  • Support for IPV4/IPV6 dual stack.

Redis

  • Supports camellia-redis-proxy.
    • Currently running on Kubernetes v1.14 and requires testing on v1.24.
    • Better to adopt MetalLB for providing access to cross-cluster applications.
    • Supports exposing frontend connections (with username and password), and configuring external Redis (outside of the Kubernetes cluster).
    • Provides high availability and monitoring features.
  • Supports Redis Cluster.

MongoDB

  • MongoDB Replicaset address supports high availability access from an external Kubernetes cluster (non-direct connection).

Lorry

  • Supports custom command probing for roleProbe.

KubeBlocks v0.7.5

14 Mar 05:40
0cf08c8
Compare
Choose a tag to compare
KubeBlocks v0.7.5 Pre-release
Pre-release

Full Changelog: v0.7.4...v0.7.5

KubeBlocks v0.7.4

13 Mar 10:20
fb26daa
Compare
Choose a tag to compare
KubeBlocks v0.7.4 Pre-release
Pre-release

Full Changelog: v0.7.3...v0.7.4

KubeBlocks v0.7.3

12 Mar 03:11
ee3c1bb
Compare
Choose a tag to compare
KubeBlocks v0.7.3 Pre-release
Pre-release

What's Changed

Full Changelog: v0.7.2...v0.7.3

KubeBlocks v0.9.0-alpha.2

26 Mar 02:56
49ef259
Compare
Choose a tag to compare
Pre-release

What's Changed

Read more

KubeBlocks v0.8.1

22 Jan 12:06
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.8.0...v0.8.1

KubeBlocks v0.8.0

12 Jan 09:34
Compare
Choose a tag to compare

KubeBlocks 0.8.0 (2024-01-12)

Exciting news! KubeBlocks v0.8.0 is officially released! 🚀 🎉 🎈

KubeBlocks v0.8.0 takes a big step forward in user experience by introducing component-level APIs, which makes standardized building blocks even smaller and more convenient to be reused.

For example, popular meta-database components like ETCD and ZK, which are widely used in various database clusters, now can be directly referenced after component modularization.
We also made Vitess Proxy a standard component, so that developers do not need to repeat their work (heavy lifting) when defining the read-write separation topology of MySQL or PostgreSQL engines in various distributions.

Further, the Addon mechanism has also been significantly improved. The helm chart of the database engine has been split from the KubeBlocks repo. From then on, changes in the database engine or version have been unbound from the KubeBlocks release.

Highlights

Independent Component API

When integrating the new database engine, we found deficiencies in the abstract design of KubeBlocks. v0.8.0 splits Component from Cluster definition to better support database types with multiple components. It supports variable references between Components, including ConfigMap, Secret, Service, ServiceReference and other variable reference types, which can better connect the relationships between components and lay the foundation for building clusters with different topologies.

Remove the addon helm chart from KubeBlocks repo

In previous versions, Helm charts for database engines were located in the "deploy" directory, tightly coupled with the KubeBlocks Operator. However, this caused two problems: first, upgrading KubeBlocks would trigger the upgrade of the database engine; second, upgrading the database engine would overwrite existing CD/CV, restarting all the clusters.

To address these problems, KubeBlocks v0.8.0 has placed the database engines into a standalone repository called "kubeblocks-addon", with version numbers added for both the database engines and associated resources. This ensures that new installations do not overwrite existing resources, thereby eliminating cluster restarts. And KubeBlocks provides the "kbcli addon" command, which allows users to download, install, use, and uninstall specific engine versions.

Supports multiple versions of database engine definitions

Prior to v0.8.0, KubeBlocks upgrades might trigger a restart of the database cluster. KubeBlocks v0.8.0, with the new Component API and Addon helm chart storage mechanism, this problem has been solved to a certain extent. We will continue to optimize the design of multiple versions in the future, and ultimately achieve burden-free upgrades.

What's Changed

New features

Pika

Supports multiple Pulsar clusters that can share a zookeeper component. #5823

Clickhouse

Integrates monitoring, scale-out and high availability. #5784

Oceanbase

Adds new active and standby cluster modes to support the complete life cycle and integrate backup, restore, monitoring and switching

MySQL

  • The Community Edition of MySQL 5.7 and 8.0 supports a full lifecycle with integrated backup recovery, monitoring, and HA.

  • Adds log audit function on ApeCloud MySQL.

PostgreSQL

Postgresql supports wal-g full backup and PITR. #180

OpsRequest

Supports custom OpsRequest, enabling specific operational actions. For example, creating and deleting Kafka topics.

NodePort

Enables NodePort access for Redis.

Compatibility

Compatible with the pre-refactored ClusterDefinition and ClusterVersion APIs.

Usability

  • opsRequest supports task queuing, allowing users to submit multiple tasks at once. For tasks that cannot run concurrently, the system will automatically execute the next task after the previous one is completed #5887

  • During KubeBlocks installation, specifying the image repository address is now possible, speeding up image pull.

Observability

Unifies configuration and management for logs and metrics collection.

API

  • Adds interface definition in ComponentDefinition #5031
  • Adds OpsDefinition API #5940
  • Adds PreDelete Action for ActionSet . You can perform this action before deleting backup. #6361
    Stability
  • Stability testings and related improvements.[wip]Kubeblocks Fault Test

kbcli

  • Enhances addon sub-command, you can install the addon from the index repository.

Incompatible changes

  • In KubeBlocks 0.8.0, we have made improvements to Oceanbase (adding functions like creating master/standby clusters, support host network and dynamic ports, support backup/restore, monitoring, logging, etc.), the clusters created in version 0.7.0 are incompatible with those in version 0.8.0, so if you are using the 0.7.0 version to manage Oceanbase, you are recommended to upgrade to the 0.8.0 version of KubeBlocks. Upgrade KubeBlocks first, then upgrade Oceanbase Addon. It is recommended to use OceanBase official data import and export tools (OBLOADER and OBDUMPER) to migrate data.

  • KubeBlocks 0.8.0 streamlines the data engines installed by default when deploying KubeBlocks by removing greptime, influxdb, neon, oracle-mysql, oroledb, tdengine, mariadb, nebula, risingwave, starrocks, tidb, zookeeper. You can install them on-demand from the addon indexing repository with the kbcli addon subcommand or the kubectl apply command; if you are upgrading from a lower version, follow the upgrade manual to avoid deleting addons that are in use, which may affect running clusters.

  • The Helm Chart of KubeBlocks 0.8.0 no longer contains dependent CRDs. When installing or upgrading KubeBlocks with the helm command, you need to install the corresponding CRDs before installing or upgrading KubeBlocks, please refer to the upgrade manual for details.

KubeBlocks v0.7.2

22 Dec 00:20
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.7.1...v0.7.2

KubeBlocks v0.7.1

24 Nov 07:27
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.7.0...v0.7.1

KubeBlocks v0.6.5

17 Nov 01:39
Compare
Choose a tag to compare
KubeBlocks v0.6.5 Pre-release
Pre-release

Full Changelog: v0.6.4...v0.6.5