创建本地 Kubernetes 测试集群
本文将说明如何使用三种流行的轻量级工具:Minikube、K3d 和 Kind,在本地创建 Kubernetes 测试集群,可用于在本地环境试用 KubeBlocks。这些工具非常适合开发、测试和实验,而无需搭建完整的生产级 Kubernetes 集群。
前置条件
在开始之前,请确保您已经在本地安装了以下工具:
- Docker:所有三个工具都使用 Docker 来创建容器化的 Kubernetes 集群。
- kubectl:Kubernetes 的命令行工具,用于与集群交互。参考 kubectl 安装文档。
使用 Kind 创建 Kubernetes 集群
Kind 是 Kubernetes IN Docker 的缩写。它在 Docker 容器中运行 Kubernetes 集群,非常适合在本地进行 Kubernetes 测试。
安装 Kind。详情可参考 Kind Quick Start。
- macOS
- Linux
- Windows
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可使用 chocolatey 安装 Kind。
choco install kind
通过 Kind 创建 Kubernetes 集群:
kind create cluster --name mykindcluster
该命令将创建一个单节点的 Kubernetes 集群,运行在 Docker 容器中。
检查集群是否已启动并运行。
kubectl get nodes
从输出结果中可以看到一个名为
mykindcluster-control-plane
的节点。(可选)配置多节点集群。
Kind 也支持创建多节点的集群。可通过配置文件来创建多节点集群:
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
role: control-plane
role: worker
role: worker使用该配置文件创建集群:
kind create cluster --name multinode-cluster --config kind-config.yaml
如需删除 Kind 集群,可以使用以下命令。
kind delete cluster --name mykindcluster
使用 Minikube 创建 Kubernetes 集群
Minikube 支持在本地机器的虚拟机或容器中运行单节点的 Kubernetes 集群。
安装 Minikube。详情可参考 Minikube Quck Start。
- macOS
- Linux
- Windows
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可使用 chocolatey 安装 Minikube。
choco install minikube
启动 Minikube。该命令将创建一个本地的 Kubernetes 集群:
minikube start
您也可以指定其他驱动(例如 Docker、Hyperkit、KVM 等)启动。
minikube start --driver=docker
验证安装。
检查 Minikube 是否正在运行:
minikube status
检查 Kubernetes 集群是否已启动:
kubectl get nodes
>
NAME STATUS ROLES AGE VERSION
minikube Ready control-plane 197d v1.26.3从输出结果中可以看到 Minikube 节点处于 Ready 状态。
使用 k3d 创建 Kubernetes 集群
k3d 是一个轻量级工具,它在 Docker 容器中运行 k3s(一个轻量的 Kubernetes 发行版)。
安装 k3d。详情可参考 k3d Quick Start。
- macOS
- Linux
- Windows
brew install k3d
curl -s https://raw.githubusercontent.com/k3d-io/k3d/main/install.sh | bash
可使用 chocolatey 安装 k3d。
choco install k3d
创建 k3s 集群。
k3d cluster create myk3s
执行该命令后,将创建一个名为
myk3s
的 Kubernetes 集群,包含一个服务器节点。验证集群是否运行。
kubectl get nodes
如需删除 k3s 集群,可使用以下命令。
k3d cluster delete mycluster