14_kubernetes_setup/14.4_kind.md
Kind (Kubernetes in Docker) 是一个使用 Docker 容器作为节点运行本地 Kubernetes 集群的工具。主要用于测试 Kubernetes 本身,也非常适合本地开发和 CI 环境。
版本说明:本文档基于 Kind v0.31.0 编写。Kind 会根据下载时的默认行为自动拉取对应的 Kubernetes 版本。建议定期更新 Kind 到最新版本以获得最新的 Kubernetes 支持。详见 Kind Releases。
Kind 相比其他本地集群方案 (如 Minikube) 有以下显著优势:
Kind 是一个二进制文件,并在 PATH 中即可使用。以下是不同系统的安装方法。
brew install kind
可以下载二进制文件:
# Linux AMD64
# 注意:v0.31.0 为编写本文档时的最新版本,请根据需要替换为当前版本
# 参见 https://github.com/kubernetes-sigs/kind/releases
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.31.0/kind-linux-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind
最简单的创建方式:
kind create cluster
指定集群名称:
kind create cluster --name my-cluster
Kind 会自动将 kubeconfig 合并到 ~/.kube/config。
kubectl cluster-info --context kind-kind
kubectl get nodes
创建一个 kind-config.yaml 来定制集群,例如映射端口到宿主机:
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
extraPortMappings:
- containerPort: 80
hostPort: 8080
protocol: TCP
- role: worker
- role: worker
应用配置:
kind create cluster --config kind-config.yaml
kind delete cluster