diff --git a/docs/developer_docs/external-component/reference-external-component.md b/docs/developer_docs/external-component/reference-external-component.md index 50dfc4ace36..8a304e81722 100644 --- a/docs/developer_docs/external-component/reference-external-component.md +++ b/docs/developer_docs/external-component/reference-external-component.md @@ -41,7 +41,7 @@ A KubeBlocks Pulsar cluster is composed of components including proxy, broker, b :::note -For more information about the KubeBlocks Pulsar cluster, refer to [KubeBlocks for Pulsar](./../kubeblocks-for-pulsar/cluster-management/create-pulsar-cluster-on-kubeblocks.md). +For more information about the KubeBlocks Pulsar cluster, refer to [KubeBlocks for Pulsar](./../../user_docs/kubeblocks-for-pulsar/cluster-management/create-pulsar-cluster-on-kubeblocks.md). ::: diff --git a/docs/img/kubeblocks-logo-black-font.png b/docs/img/kubeblocks-logo-black-font.png new file mode 100644 index 00000000000..5df4a7c61f6 Binary files /dev/null and b/docs/img/kubeblocks-logo-black-font.png differ diff --git a/docs/img/kubeblocks-logo-short-version.png b/docs/img/kubeblocks-logo-short-version.png new file mode 100644 index 00000000000..9dc58248446 Binary files /dev/null and b/docs/img/kubeblocks-logo-short-version.png differ diff --git a/docs/img/kubeblocks-logo-white-font.png b/docs/img/kubeblocks-logo-white-font.png new file mode 100644 index 00000000000..a5573a1084a Binary files /dev/null and b/docs/img/kubeblocks-logo-white-font.png differ diff --git a/docs/user_docs/backup-and-restore/backup/backup-repo.md b/docs/user_docs/backup-and-restore/backup/backup-repo.md index 86f11845020..c6b712474f4 100644 --- a/docs/user_docs/backup-and-restore/backup/backup-repo.md +++ b/docs/user_docs/backup-and-restore/backup/backup-repo.md @@ -19,10 +19,10 @@ You can create multiple BackupRepos to suit different scenarios. For example, ba Make sure you have all the following prepared. -* [Install kbcli](./../installation/install-with-kbcli/install-kbcli.md) +* [Install kbcli](./../../installation/install-with-kbcli/install-kbcli.md) * [Install kubectl](https://kubernetes.io/docs/tasks/tools/#kubectl) * [Install Helm](https://helm.sh/docs/intro/install/) -* [Install KubeBlocks](./..installation/install-with-helm/install-kubeblocks-with-helm.md) +* Install KubeBlocks by [kbcli](./../../installation/install-with-kbcli/install-kubeblocks-with-kbcli.md) or by [Helm](./../../installation/install-with-helm/install-kubeblocks-with-helm.md) ## Install MinIO diff --git a/docs/user_docs/backup-and-restore/introduction.md b/docs/user_docs/backup-and-restore/introduction.md index 88632beef58..41c9c0a9d60 100644 --- a/docs/user_docs/backup-and-restore/introduction.md +++ b/docs/user_docs/backup-and-restore/introduction.md @@ -18,11 +18,10 @@ KubeBlocks adopts physical backup which takes the physical files in a database a * [Scheduled backup](./backup/scheduled-backup.md): You can specify retention time, backup method, time, and other parameters to [customize your backup schedule](./backup/scheduled-backup.md#backup-by-schedule). Or you can backup your data automatically [by log](./backup/scheduled-backup.md#backup-automatically-by-log). Log backup uses the incremental log files generated by backing up the database, such as MySQL BinLog and PostgreSQL WAL, and it can also be called incremental backup. Point-in-time recovery (PITR) relies on log backup. -As for the restore function, KubeBlocks supports restoring data from the backup set and PITR. +As for the restore function, KubeBlocks supports restoring data from the backup set. * Restore * [Restore data from the backup set](./restore/restore-data-from-backup-set.md) - * [PITR](./restore/pitr.md) The backup and restore function for different database engines varies: diff --git a/docs/user_docs/installation/upgrade/upgrade-kubeblocks-to-0.6.md b/docs/user_docs/installation/upgrade/upgrade-kubeblocks-to-0.6.md deleted file mode 100644 index 4c6e41178c0..00000000000 --- a/docs/user_docs/installation/upgrade/upgrade-kubeblocks-to-0.6.md +++ /dev/null @@ -1,306 +0,0 @@ ---- -title: Upgrade to KubeBlocks v0.6 -description: Upgrade to KubeBlocks, operation, tips and notes -keywords: [upgrade, prepull images, feature changes between 0.5 and 0.6] -sidebar_position: 1 -sidebar_label: Upgrade to KubeBlocks v0.6 ---- - -# Upgrade to KubeBlocks v0.6 - -This chapter shows how to upgrade to the KubeBlocks 0.6, including notes and tips. - -## Before upgrading - -### Pull images - -KubeBlocks version 0.6 has many image changes from version 0.5. During upgrading, if there are many database instances in the cluster, the instance may be unavailable for a long time if images are pulled at the same time. It is recommended to pull the images required for version 0.6 in advance before upgrading. - -***Steps*** - -1. Write the following content to a `yaml` file. - - ```bash - apiVersion: apps/v1 - kind: DaemonSet - metadata: - name: kubeblocks-image-prepuller - spec: - selector: - matchLabels: - name: kubeblocks-image-prepuller - template: - metadata: - labels: - name: kubeblocks-image-prepuller - spec: - volumes: - - name: shared-volume - emptyDir: {} - tolerations: - - key: "kb-data" - operator: "Exists" - effect: "NoSchedule" - - key: "kb-controller" - operator: "Exists" - effect: "NoSchedule" - initContainers: - - name: pull-kb-tools - image: registry.cn-hangzhou.aliyuncs.com/apecloud/kubeblocks-tools:0.6.0 - imagePullPolicy: IfNotPresent - command: ["cp", "-r", "/bin/kbcli", "/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-1 - image: apecloud/kubeblocks-csi-driver:0.1.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-2 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/apecloud-mysql-scale:0.1.1 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-4 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/apecloud-mysql-server:8.0.30-5.alpha8.20230523.g3e93ae7.8 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-5 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/apecloud-mysql-server:8.0.30-5.beta1.20230802.g5b589f1.12 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-6 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/kubeblocks-charts:0.6.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-7 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/kubeblocks-datascript:0.6.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-8 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/kubeblocks-tools:0.6.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-9 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/kubeblocks:0.6.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-10 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/mongo:5.0.14 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-11 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/mysqld-exporter:0.14.1 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-12 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/pgbouncer:1.19.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-13 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/redis-stack-server:7.0.6-RC8 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-14 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/spilo:12.14.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-15 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/spilo:12.14.1 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-16 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/spilo:12.15.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-17 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/spilo:14.7.2 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-18 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/spilo:14.8.0 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-19 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/wal-g:mongo-latest - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-20 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/wal-g:mysql-latest - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - - name: pull-21 - image: registry.cn-hangzhou.aliyuncs.com/apecloud/agamotto:0.1.2-beta.1 - imagePullPolicy: IfNotPresent - command: ["/kb-tools/kbcli"] - volumeMounts: - - name: shared-volume - mountPath: /kb-tools - containers: - - name: pause - image: k8s.gcr.io/pause:3.2 - ``` - -2. Apply the `yaml` file to pre-pull images required before upgrading. - - ```bash - kubectl apply -f prepull.yaml - > - daemonset.apps/kubeblocks-image-prepuller created - ``` - -3. Check the pulling status. - - ```bash - kubectl get pod - > - NAME READY STATUS RESTARTS AGE - kubeblocks-image-prepuller-6l5xr 1/1 Running 0 11m - kubeblocks-image-prepuller-7t8t2 1/1 Running 0 11m - kubeblocks-image-prepuller-pxbnp 1/1 Running 0 11m - ``` - -4. Delete the pod created for pulling image. - - ```bash - kubectl delete daemonsets.apps kubeblocks-image-prepuller - ``` - -## Upgrade - -Since version 0.6 of the KubeBlocks DB cluster has many image changes, the Pod will be gradually restarted during the upgrade, resulting in the DB cluster unavailable for a short period of time. The unavailable time of the DB cluster is decided by network conditions and cluster size. The upgrade time of the KubeBlocks controller is about 2 minutes, the unavailable time of a single DB cluster is about 20s to 200s, and the complete recovery time of a single DB cluster is about 20s to 300s. If you pull images before you upgrade, see the section above, the unavailable time of a single DB cluster is about 20s to 100s, and the complete recovery time of a single DB cluster is about 20s to 150s. - -***Steps*** - -1. Install the new version of `kbcli`. - - ```bash - curl -fsSL https://kubeblocks.io/installer/install_cli.sh |bash -s 0.6.0 - ``` - -2. Upgrade KubeBlocks. - - ```bash - kbcli kubeblocks upgrade --version 0.6.0 - ``` - -## Feature changes require attention - -### RABC - -In version 0.6, KubeBlocks automatically manages the RBAC required by the cluster. Added the following 2 cluster roles. -- ClusterRole/kubeblocks-cluster-pod-role for pod. -- ClusterRole/kubeblocks-volume-protection-pod-role for full disk lock. - -When cluster reconcile is triggered, KubeBlocks creates rolebinding and serviceAccount to bind ClusterRole/kubeblocks-cluster-pod-role. - -You need to create a clusterrolebinding to bind ClusterRole/kubeblocks-volume-protection-pod-role. - -### Full disk lock - -Kubeblocks version 0.6 adds the disk full lock feature of MySQL, PostGreSQL, and MongoDB databases, which needs to be enabled by modifying the cluster definition. Due to the slight differences in the implementation methods of each database, pay attention to the following instructions: - -- For MySQL database, readwrite account cannot write to the disk when the disk usage reaches the `highwatermark` value, while superuser can still write. -- FOr PostGreSQL database and MongoDB, both readwrite user and superruser cannot write when disk usage reaches `highwatermark`. -- `90` is the default value setting for highwatermark at the component level which means 90% of disk usage is the threshold, while `85` is used for the volumes setting which will overwrites the component's threshold value. -In the cluster definition, add following content to enable full disk lock function. You can set the value according to the real situation. - -```bash -volumeProtectionSpec: - highWatermark: 90 - volumes: - - highWatermark: 85 - name: data -``` - -:::note - -The recommended value of `highWatermark` is 90. - -::: - -### Backup and restore - -The backup and restore function of Kubeblocks version 0.6 has been greatly adjusted and upgraded. After the database cluster created in version 0.5 is upgraded to version 0.6, manual adjustment is required, otherwise the new functions of version 0.6 cannot be used. - -| Database | v0.5 | v0.6 | -|----------|---------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------| -| MySQL | Snapshot backup and restore full backup and restore | Snapshot backup and restore
Full backup and restore Log file backup
PITR based on snapshot
PITR based on full data | -| PG | Snapshot backup and restore
Full backup and restore
Log file backup
PITR based on snapshot | Snapshot backup and restore
Full backup and restore
Log file backup
PITR based on snapshot | -| Redis | Snapshot backup and restore | Snapshot backup and restore
Full backup and restore | -| Mongo | Full backup and restore | Snapshot backup and restore
Full backup and restore Log file backup
PITR based on snapshot
PITR based on full data | - -### Password authentication - -The 0.6 version cancels the password-free login capability of the Postgres cluster. Compared with the password-free access of the 0.5 version, the newly created Postgres of 0.6 requires an account password to access. And after you upgrade to 0.6 version, if the cluster remains in` creating` status when restore from a backup, you can check whether there is a password authentication failed error in the pod log of the cluster. This problem can be solved by updating the password. We fix the problem in the next release. -Check whether there is a password authentication error. - -```bash -kubectl logs kb-checkrole -... -server error (FATAL: password authentication failed for user \"postgres\" (SQLSTATE 28P01))" -... -``` - -Update the password. - -```bash -kubectl exec -it -- bash -psql -c "ALTER USER postgres WITH PASSWORD '${PGPASSWORD}';" -``` diff --git a/docs/user_docs/installation/upgrade/upgrade-kubeblocks-to-0.7.md b/docs/user_docs/installation/upgrade/upgrade-kubeblocks-to-0.7.md new file mode 100644 index 00000000000..91ee0015a40 --- /dev/null +++ b/docs/user_docs/installation/upgrade/upgrade-kubeblocks-to-0.7.md @@ -0,0 +1,19 @@ +--- +title: Upgrade to KubeBlocks v0.7 +description: Upgrade to KubeBlocks, operation, tips and notes +keywords: [upgrade, 0.7] +sidebar_position: 1 +sidebar_label: Upgrade to KubeBlocks v0.7 +--- + +# Upgrade to KubeBlocks v0.7 + +**Steps:** + +1. [Install kbcli](./../install-with-kbcli/install-kbcli.md) and ensure the kbcli version is v0.7.0. + +2. Upgrade KubeBlocks from v0.6 to v0.7. + + ```bash + kbcli kubeblocks upgrade --version=0.7.0 + ``` diff --git a/docs/user_docs/overview/supported-addons.md b/docs/user_docs/overview/supported-addons.md index 13cc4d5108b..8eed4e99a16 100644 --- a/docs/user_docs/overview/supported-addons.md +++ b/docs/user_docs/overview/supported-addons.md @@ -13,14 +13,27 @@ KubeBlocks, as a cloud-native data infrastructure based on Kubernetes, providing | Add-ons | Description | |:----------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | apecloud-mysql | ApeCloud MySQL is a database that is compatible with MySQL syntax and achieves high availability through the utilization of the RAFT consensus protocol. | +| clickhouse | | elasticsearch | Elasticsearch is a distributed, RESTful search engine optimized for speed and relevance on production-scale workloads. | +| etcd | etcd is a strongly consistent, distributed key-value store that provides a reliable way to store data that needs to be accessed by a distributed system or cluster of machines. | +| foxlake | ApeCloud FoxLake is an open-source cloud-native data warehouse. | +| ggml | GGML is a tensor library for machine learning to enable large models and high performance on commodity hardware. | | greptimedb | GreptimeDB is an open-source time-series database with a special focus on scalability, analytical capabilities and efficiency. | | kafka | Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications. | -| mongodb | MongoDB is a document-oriented NoSQL database used for high volume data storage. | +| mariadb | MariaDB is a high performance open source relational database management system that is widely used for web and application servers. | | milvus | Milvus is a flexible, reliable, & blazing-fast cloud-native, open-source vector database. | +| mongodb | MongoDB is a document-oriented NoSQL database used for high volume data storage. | +| mysql (Primary-Secondary replication) | | nebula | NebulaGraph is an open source graph database that can store and process graphs with trillions of edges and vertices. | | neon | Neon is Serverless Postgres built for the cloud. | +| oceanbase | Unlimited scalable distributed database for data-intensive transactional and real-time operational analytics workloads, with ultra-fast performance that has once achieved world records in the TPC-C benchmark test. OceanBase has served over 400 customers across the globe and has been supporting all mission critical systems in Alipay. | +| official-postgresql | An official PostgreSQL cluster definition Helm chart for Kubernetes. | +| openldap | The OpenLDAP Project is a collaborative effort to develop a robust, commercial-grade, fully featured, and open source LDAP suite of applications and development tools. This chart provides KubeBlocks. | +| opensearch | Open source distributed and RESTful search engine. | +| oracle-mysql | MySQL is a widely used, open-source relational database management system (RDBMS). | +| oriolebd | OrioleDB is a new storage engine for PostgreSQL, bringing a modern approach to database capacity, capabilities and performance to the world's most-loved database platform. | | pika | Pika is a persistent huge storage service, compatible with the vast majority of redis interfaces, including string, hash, list, zset, set and management interfaces. | +| polardb-x | PolarDB-X is a cloud native distributed SQL Database designed for high concurrency, massive storage, complex querying scenarios. | | postgresql | PostgreSQL is an advanced, enterprise class open source relational database that supports both SQL (relational) and JSON (non-relational) querying. | | pulsar | Apache® Pulsar™ is an open-source, distributed messaging and streaming platform built for the cloud. | | qdrant | Qdrant is a vector database & vector similarity search engine. | @@ -28,29 +41,45 @@ KubeBlocks, as a cloud-native data infrastructure based on Kubernetes, providing | risingwave | RisingWave is a distributed SQL database for stream processing. It is designed to reduce the complexity and cost of building real-time applications. | | starrocks | StarRocks is a next-gen, high-performance analytical data warehouse that enables real-time, multi-dimensional, and highly concurrent data analysis. | | tdengine | TDengine™ is an industrial data platform purpose-built for the Industrial IoT, combining a time series database with essential features like stream processing, data subscription, and caching. | +| vllm | vLLM is a fast and easy-to-use library for LLM inference and serving. | | weaviate | Weaviate is an open-source vector database. | +| zookeeper | Apache ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. | ## Supported functions of add-ons -| Add-ons | Vertical Scaling | Horizontal Scaling | Volume Expansion | Stop/Start | Restart | Backup/Restore | Logs | Config | Upgrade | Account | Failover | Switchover | Monitor | -|:----------------|:------------------|:--------------------|:------------------|:------------|:---------|:----------------|:------|:---------|:---------|:---------|:----------|:------------|:---------| -| apecloud-mysql | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | | ✔ | ✔ | ✔ | ✔ | -| elasticsearch | ✔ | ✔ | ✔ | ✔ | ✔ | | ✔ | | | | | | | -| greptimedb | ✔ | ✔ hscale
frontend, datanode | ✔ | ✔ | ✔ | | ✔ | | | | | | | -| kafka | ✔ | ✔ hscale out
broker | ✔ | ✔ | ✔ | | ✔ | ✔ | | | | | ✔ | -| milvus | ✔ | ✔ | ✔ | ✔ | ✔ | | ✔ | | | | | | | -| mongodb | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | | | ✔ | ✔ | ✔ | -| nebula | ✔ | ✔ hscale
nebula-console, nebula-graphd, nebula-metad, nebula-storaged | ✔ | ✔ | ✔ | | ✔ | | | | | | | -| neon | ✔ | | | | | | | | | | | | | -| pika | -| postgresql | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | -| pulsar | ✔ | ✔ | ✔ | ✔ | ✔ | | ✔ | ✔ | | | | | ✔ | -| qdrant | ✔ | ✔ hscale out | ✔ | ✔ | ✔ | ✔ | ✔ | | | | | | ✔ | -| redis | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | | ✔ | ✔ | | ✔ | -| risingwave | ✔ | ✔ hscale
frontend, compute | ✔ | ✔ | ✔ | | ✔ | | | | | | | -| starrocks | ✔ | ✔ hscale be | ✔ | ✔ | ✔ | | ✔ | | | | | | | -| tdengine | ✔ | ✔ | ✔ | ✔ | ✔ | | ✔ | | | | | | | -| weaviate | ✔ | ✔ hscale out | ✔ | ✔ | ✔ | | ✔ | ✔ | | | | | ✔ | +| Add-on (v0.7.0) | version | Vscale | Hscale | Volumeexpand | Stop/Start | Restart | Backup/Restore | Logs | Config | Upgrade (DB engine version) | Account | Failover | Switchover | Monitor | +|---------------------------------------|-----------------------------------|--------|--------|--------------|------------|---------|----------------|------|--------|-----------------------------|---------|----------|------------|---------| +| apecloud-mysql | 8.0.30 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | ✔️ | ✔️ | ✔️ | ✔️ | +| clickhouse | 22.9.4 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| elasticsearch | 8.8.2 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| etcd | 3.5.6 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| foxlake | 0.2.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| ggml | N/A | | N/A | N/A | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| greptimedb | 0.3.2 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| kafka | 3.3.2 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | ✔️ | N/A | N/A | N/A | N/A | ✔️ | +| mariadb | 10.6.15 | ✔️ | N/A | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| milvus | 2.2.4 | ✔️ | N/A | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| mongodb | 4.0
4.2
4.4
5.0
5.0.20
6.0
sharding-5.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | ✔️ | ✔️ | ✔️ | +| mysql (Primary-Secondary replication) | 5.7.42
8.0.33 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | ✔️ | +| nebula | 3.5.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| neon | latest | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| oceanbase | 4.2.0.0-100010032023083021 | | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| official-postgresql | 12.15
14.7
14.7-zhparser | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| openldap | 2.4.57 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| opensearch | 2.7.0 | ✔️ | N/A | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| oracle-mysql | 8.0.32
8.0.32-perf | ✔️ | N/A | ✔️ | ✔️ | ✔️ | ✔️ | N/A | ✔️ | N/A | N/A | N/A | N/A | N/A | +| orioledb | beta1 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| polardb-x | 2.3 | ✔️ | ✔️ | N/A | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | ✔️ | +| postgresql | 12.14.0
12.14.1
12.15.0
14.7.2
14.8.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | +| pulsar | 2.11.2 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | ✔️ | N/A | N/A | N/A | N/A | ✔️ | +| qdrant | 1.5.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | ✔️ | +| redis | 7.0.6 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | ✔️ | ✔️ | N/A | ✔️ | +| risingwave | 1.0.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| starrocks | 3.1.1 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| tdengine | 3.0.5.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| vllm | N/A | N/A | N/A | N/A | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | +| weaviate | 1.18.0 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | N/A | ✔️ | N/A | N/A | N/A | N/A | ✔️ | +| zookeeper | 3.7.1 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | N/A | ✔️ | ✔️ | N/A | N/A | N/A | N/A | N/A | ## Use add-ons