当然可以,以下是为你这份 Kind 管理脚本写的一份使用说明文档 ,可作为 README.md
或内部文档使用:
🚀 Kind 管理脚本说明文档
本脚本是一个便捷的工具,帮助你快速创建、管理和诊断基于 Kind (Kubernetes IN Docker) 的本地 Kubernetes 集群,并支持模板管理、镜像加载、kubeconfig 导出等功能。
📦 功能一览
- 创建 Kind 集群,支持使用镜像和模板配置
- 删除集群
- 列出和切换当前集群
- 导出 kubeconfig
- 加载本地 Docker 镜像到集群
- 检查集群健康状态
- 安装可选组件(如 Metrics Server 和 Ingress Controller)
- 支持自定义模板配置(集群结构)
- 支持 demo 应用运行状态检查
📄 脚本使用方法
bash
./kind-manager.sh [command] [options]
🔧 可用命令
命令 | 描述 |
---|---|
create <cluster-name> [--image <image>] [--config <template>] [--default] |
创建一个新的 Kind 集群 |
delete <cluster-name> |
删除指定集群 |
export-kubeconfig <cluster-name> |
导出 kubeconfig 到本地文件 |
load-image <cluster-name> <image> |
向指定集群加载本地 Docker 镜像 |
status <cluster-name> |
检查集群是否存在 |
list |
列出当前所有 Kind 集群 |
use <cluster-name> |
切换 kubectl 上下文到指定集群 |
health-check |
检查集群状态(节点、组件、Demo 应用等) |
cluster-demo-setting list |
查看所有支持的模板名称 |
cluster-demo-setting show <template-name> |
展示指定模板配置内容 |
help |
显示帮助信息 |
🧩 创建集群用法详解
bash
./kind-manager.sh create my-cluster --image kindest/node:v1.24.3 --config ingress-cluster-demo
可选参数说明:
参数 | 描述 |
---|---|
--image |
指定 Kind 使用的节点镜像 |
--config |
使用指定模板(位于 cluster-demo-setting/ 目录) |
--default |
使用默认镜像:kindest/node:v1.24.3 |
示例会使用模板
ingress-cluster-demo.yaml
创建一个包含 ingress 配置的集群。
📁 模板机制说明
模板文件应放在 cluster-demo-setting/
目录下,每个模板是一个标准的 Kind 配置 YAML 文件。
示例结构:
cluster-demo-setting/
├── basic.yaml
├── ingress-cluster-demo.yaml
└── multi-node.yaml
你可以使用以下命令查看模板:
bash
./kind-manager.sh cluster-demo-setting list
./kind-manager.sh cluster-demo-setting show ingress-cluster-demo
🛠️ 常见操作示例
创建并安装 ingress 和 metrics-server:
你可以修改脚本顶部变量来自动安装这些组件:
bash
WITH_METRICS=true
WITH_INGRESS=true
然后运行:
bash
./kind-manager.sh create my-cluster --default --config ingress-cluster-demo
加载 Docker 镜像到集群:
bash
docker build -t myapp:v1 .
./kind-manager.sh load-image my-cluster myapp:v1
导出 kubeconfig:
bash
./kind-manager.sh export-kubeconfig my-cluster
查看当前上下文和所有集群:
bash
./kind-manager.sh list
检查集群健康状态:
bash
./kind-manager.sh health-check
输出示例:
🧩 Nodes reachable: ✅
📈 Metrics-server running: ✅
🌐 Ingress controller running: ❌
🧪 Demo app deployed: ✅
🛰️ Ingress route configured: ✅
✅ 环境依赖
💡 进阶建议
你可以结合 Makefile
、tmux
、watch
等工具,把这个脚本纳入你的本地开发自动化流程中。
如果你需要我为你生成一个 Markdown 文件版本、配套的模板示例或者增强脚本功能(比如添加 Helm chart 安装支持),也可以随时告诉我。