KubeBlocks
BlogsKubeBlocks Cloud
⌘K
​

Getting Started

Introduction
Supported addons
Installation

Concepts and Features

Concepts

Backup and Restore

Introduction

Backup

Configure BackupRepo
Configure BackupPolicy
Scheduled backup
On-demand backup

Restore

Restore from backup set
Point-in-Time Recovery

In Place Update

Introduction
Enable in-place update

Instance Template

Introduction
Apply instance template

Trouble Shooting

FAQs
Known Issues

References

API Reference

Cluster
Operations
Parameters
Dataprotection
Add-On
Terminology
Install Addons
Install kbcli
Snapshot Controller
Create a test Kubernetes cluster
Kubernetes and Operator 101
KubeBlocks Options and Roles
Install MinIO

Upgrade KubeBlocks

Upgrade to v0.8
Upgrade to v0.9.0
Upgrade to v0.9.x

Release Notes

Release v1.0

v1.0.0-cn
v1.0.0

Release v0.9

v0.9.5
v0.9.4
v0.9.3
v0.9.2
v0.9.1
v0.9.0
  1. Before you start
  2. Create a Kubernetes cluster using Kind
  3. Create a Kubernetes cluster using Minikube
  4. Create a Kubernetes cluster using k3d

Create a test Kubernetes cluster

This tutorial introduces how to create a local Kubernetes test cluster using Minikube, K3d, and Kind. These tools make it easy to try out KubeBlocks on your local host, offering a great solution for development, testing, and experimentation without the complexity of creating a full production-grade cluster.

Before you start

Make sure you have the following tools installed on your local host:

  • Docker: All three tools rely on Docker to create containerized Kubernetes clusters.
  • kubectl: The Kubernetes command-line tool for interacting with clusters. Refer to the kubectl installation guide

Create a Kubernetes cluster using Kind

Kind stands for Kubernetes IN Docker. It runs Kubernetes clusters within Docker containers, making it an ideal tool for local Kubernetes testing.

  1. Install Kind. For details, you can refer to Kind Quick Start.

    brew install kind
    # For AMD64 / x86_64 [ $(uname -m) = x86_64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.24.0/kind-linux-amd64 # For ARM64 [ $(uname -m) = aarch64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.24.0/kind-linux-arm64 chmod +x ./kind sudo cp ./kind /usr/local/bin/kind rm -rf kind

    You can use chocolatey to install Kind.

    choco install kind
  2. Create a Kind cluster.

    kind create cluster --name mykindcluster

    This command creates a single-node Kubernetes cluster running in a Docker container.

  3. Check whether the cluster is started and running.

    kubectl get nodes > NAME STATUS ROLES AGE VERSION mykindcluster-control-plane Ready control-plane 25s v1.31.0

    You can see a node named mykindcluster-control-plane from the output, which means the cluster is created successfully.

  4. (Optional) Configure a cluster with multiple nodes.

    Kind also supports clusters with multiple nodes. You can create a multi-node cluster by a configuration file.

    kind: Cluster apiVersion: kind.x-k8s.io/v1alpha4 nodes: role: control-plane role: worker role: worker

    Use the configuration file to create a multi-node cluster.

    kind create cluster --name multinode-cluster --config kind-config.yaml
  5. If you want to delete the Kind cluster, run the command below.

    kind delete cluster --name mykindcluster

Create a Kubernetes cluster using Minikube

Minikube runs a single-node Kubernetes cluster on your local machine, either in a virtual machine or a container.

  1. Install Minikube. For details, you can refer to Minikube Quick Start.

    brew install minikube
    curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm sudo rpm -Uvh minikube-latest.x86_64.rpm

    You can use chocolatey to install Minikube.

    choco install minikube
  2. Start Minikube. This command will create a local Kubernetes cluster.

    minikube start

    You can also specify other drivers (such as Docker, Hyperkit, KVM) to start it.

    minikube start --driver=docker
  3. Verify whether Minikube and the K8s cluster is running normally.

    Check whether Minikube is running.

    minikube status > minikube type: Control Plane host: Running kubelet: Running apiserver: Running kubeconfig: Configured

    Check whether the K8s cluster is running.

    kubectl get nodes > NAME STATUS ROLES AGE VERSION minikube Ready control-plane 1d v1.26.3

    From the output, we can see that the Minikube node is ready.

Create a Kubernetes cluster using k3d

k3d is a lightweight tool that runs k3s (a lightweight Kubernetes distribution) in Docker containers.

  1. Install k3d. For details, refer to k3d Quick Start.

    brew install k3d
    curl -s https://raw.githubusercontent.com/k3d-io/k3d/main/install.sh | bash

    You can use chocolatey to install k3d.

    choco install k3d
  2. Create a k3s cluster.

    k3d cluster create myk3s

    This command will create a Kubernetes cluster named as myk3s with a single node.

  3. Verify whether this cluster is running normally.

    kubectl get nodes > NAME STATUS ROLES AGE VERSION k3d-myk3s-server-0 Ready control-plane,master 31s v1.30.4+k3s1
  4. If you want to delete the k3s cluster, run the command below.

    k3d cluster delete myk3s

© 2025 ApeCloud PTE. Ltd.