返回顶部
d

deploy-k8s-cluster

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
104
下载量
0
收藏
概述
安装方式
版本历史

deploy-k8s-cluster

# K8S 集群部署技能 使用 kubeadm 部署生产级 Kubernetes 集群。 ## Workflow Overview ``` 用户发起部署、交付请求 → 展示流程概览 → 用户确认 → 信息收集 → 架构设计 → 技术方案(部署、测试) → 部署计划 → 执行工具 → 验证测试 → 交付报告 → 复盘总结 ``` ## 流程概览 例如,当用户说"我想部署(搭建、交付)一套新的 K8S 集群"时,先展现以下流程和约束让用户确认: --- ### ⚠️ 重要提示 > **部署新的 K8S 集群,意味着需要更高权限(root),同时机器上的数据会被清理,请确保你提供的机器列表是正确的。** --- ### 部署流程 | 阶段 | 内容 | 产出物 | |:---|:---|:---| | **阶段 0: 信息收集** | 收集节点信息、SSH 凭证、版本要求 | 节点清单 | | **阶段 1: 环境勘察** | 检查 SSH 连通性、系统环境、外网访问、资源信息 | 勘察报告 | | **阶段 2: 架构设计** | 根据节点数量和资源设计集群架构 | 架构设计文档、部署技术方案、测试验收方案 | | **阶段 3: 部署计划** | 制定部署里程碑和时间计划 | 部署计划文档 | | **阶段 4: 部署执行** | 远程执行部署工具 | 可用集群 | | **阶段 5: 集群验证** | 验证集群功能正常 | 验证报告 | | **阶段 6: 交付报告** | 生成交付文档 | 交付报告 | ### 当前版本约束 | 限制项 | 说明 | |:---|:---| | 操作系统 | 仅支持 Ubuntu | | 部署方式 | 仅支持 kubeadm | | 存储 | 不支持持久化存储配置 | | GPU | 不支持 GPU 节点 | ### 用户确认 展示流程后,询问用户: > 以上是部署流程概览,是否符合您的预期?如果可以,我们开始第一阶段:信息收集。 --- ## Step 0: 信息收集 获取以下信息后开始架构设计: **必需信息**: 1. **节点 IP-主机名映射表**(支持多种格式): - JSON 格式:`{"10.0.2.11":"k8s-node1","10.0.2.12":"k8s-node2","10.0.2.13":"k8s-node3"}` - 文本文件(空格分隔): ``` 10.0.2.11 k8s-node1 10.0.2.12 k8s-node2 10.0.2.13 k8s-node3 ``` - CSV 文件:`10.0.2.11,k8s-node1` - 表格形式:直接粘贴表格 - **AI 会自动解析并转换成 JSON 格式** 2. **SSH 访问方式**(二选一): - 方式 A:提供用户名和密码 - 方式 B:提前配置好 SSH 信任关系(推荐) 3. **K8S 版本**:官方最新版 4. **软件包和镜像获取方式**: - 外网:需要访问 pkgs.k8s.io、github.com、阿里云镜像 - 内网:需要软件包源、容器镜像仓库 **约束边界**(当前版本不支持): - 持久化存储 - GPU 节点 **示例用户输入**: ``` 有 3 台虚拟机: - 10.0.2.7 (Control Plane) - 10.0.2.8 (Worker) - 10.0.2.9 (Worker) SSH: worker/work@123 K8S 版本:官方最新版本(v1.35) ``` ## Step 1: 环境勘察 根据用户提供的信息,进行环境勘察 主要检查点: SSH 登录验证 主机名 账户权限是否满足 资源是否符合信息 K8S部署前置检查 勘察报告用途 1,返回给用户确认 2,收集的信息用来做架构、部署方案的设计 ## Step 2: 架构设计 生成架构设计文档,包含: 1. **集群拓扑**:节点角色、IP 分配、网络规划 2. **组件版本**:K8S、containerd、CNI 插件版本 3. **资源规划**:节点资源分配、Pod 网段、Service 网段 4. **镜像源配置**:国内环境镜像加速方案 使用 `best-practice/best-practices.md` 生成文档,生成文件保存在 `report/` 目录中。 生成详细部署技术方案,包含: 1. **检查并修复系统配置** 3. **检查并安装 containerd** 4. **检查并安装 K8S 组件** 5. **初始化 K8S 控制面** 6. **安装 CNI 插件** 7. **加入节点** 使用 `best-practice/best-practices.md` 生成文档,生成文档保存在 `report/` 目录中。 生成详细验证测试方案,包含: 1. **检查集群状态**:节点标签、系统 Pod、CNI 插件;如果是 HA 验证 etcd 同步等 2. **测试应用部署**:nginx、busybox 3. **测试网络状态**:DNS 解析、Service 功能、应用部署访问等 4. **测试存储**:emptyDir;目前不支持 PVC 使用 `best-practice/best-practices.md` 生成文档,生成文档保存在 `report/` 目录中。 ## Step 3: 部署计划 生成部署计划文档,包含: 1. **部署里程碑**:各阶段目标 2. **依赖检查清单**:系统要求、网络要求、资源要求 3. **风险评估**:可能的问题和应对方案 4. **回滚方案**:失败时的清理和重置步骤 使用 `best-practice/deploy-plan.md` 生成文档,生成文档保存在 `report/` 目录中。 ## Step 4: 部署执行 ### 用户确认 使用阶段式执行部署 ### 交互规则(重要) **强制要求** - ✅ 每个里程碑开始前通知 - ✅ 每个里程碑结束后汇报 - ✅ 等待用户确认后再继续 **通知格式**: ``` ========================================== 🚀 开始执行 M0 - 环境检测 ========================================== 正在检测 3 个节点的环境... - SSH 连接:✅ - 系统版本:Ubuntu 24.04 - 资源配置:2核4G ... ========================================== ✅ M0 完成 - 环境检测通过 ========================================== 下一步:M1 - 系统配置 回复 'y' 继续,或 'n' 暂停 ``` **问题处理规则(重要)**: 遇到问题时,**不要直接陷入解决方案**,先给用户提供 2-3 个方案让用户选择: ``` ❌ 错误做法: 问题:DNS 解析失败 直接执行:配置 DNS 服务器... ``` ``` ✅ 正确做法: ========================================== ❌ M3 遇到问题 - DNS 解析失败 ========================================== 错误:curl: (6) Could not resolve host: pkgs.k8s.io 可能的原因: 1. DNS 服务器未配置 2. 网络隔离(无法访问外网) 3. 防火墙限制 解决方案: A. 配置 DNS 服务器(推荐) - 配置 8.8.8.8 或 114.114.114.114 - 预计耗时:1-2 分钟 B. 使用离线安装包 - 需要提前下载 K8S 安装包 - 适合内网环境 C. 跳过此步骤,稍后手动安装 - 你可以自己配置网络后继续 请选择:A / B / C ``` **禁止行为**: - ❌ 不通知直接执行下一个里程碑 - ❌ 一股脑跑完全部流程 - ❌ 只在最后汇报结果 - ❌ 遇到问题直接陷入解决方案 ### 里程碑 | 里程碑 | 脚本 | 说明 | |:---|:---|:---| | M0 | `00-survey.sh` | 环境勘察(SSH、主机名、网络、资源) | | M1 | `01-system.sh` | 系统配置检查和修正 | | M2 | `02-containerd.sh` | containerd 安装 + cgroup driver 配置 | | M3 | `03-k8s-install.sh` | kubeadm/kubelet/kubectl 安装 | | M4 | `04-kubeadm-init.sh` | Control Plane 初始化(含镜像源配置,支持 HA) | | M5 | `05-cni-plugin.sh` | CNI 网络插件安装(支持 Flannel、Calico) | | M6 | `06-join.sh` | 节点加入集群(支持 HA 多控制面) | | M7 | `07-cluster-verify.sh` | 集群验证(支持 --namespace 参数) | | M8 | `08-cluster-cleanup.sh` | 集群清理(检查状态/清理namespace/销毁集群) | ## Step 5: 验证测试 按照确定的测试方案执行验收,不自动清理测试环境,等待用户确认 | 里程碑 | 脚本 | 说明 | |:---|:---|:---| | M7 | `07-cluster-verify.sh` | 集群验证(支持 --namespace 参数) | ### 测试资源清理 用户确认后,对进行测试的资源进行清理 | 里程碑 | 脚本 | 说明 | |:---|:---|:---| | M8 | `08-cluster-cleanup.sh` | 集群清理(检查状态/清理namespace/销毁集群) | ## Step 6: 交付报告 生成交付报告文档,包含: 1. **部署概况**:集群版本、节点信息、组件版本 2. **部署耗时**: 各大阶段、子阶段耗时、阶段结果(与计划相比) 3. **验证结果**:各项测试的结果 4. **后续建议**:监控、备份、升级建议 使用 `best-practice/delivery-report-template.md` 生成文档,生成文档保存在 `report/` 目录中。 ## Troubleshooting 常见问题排查指南见 `best-practice/troubleshooting-guide.md` `best-practice/best-practice.md` ## Resources ### bin/ 部署脚本,通过 SSH 远程执行。 每个脚本支持: - 参数检查 - 错误处理 - 日志输出 - 幂等性(可重复执行) ### conf/ 本技能提供的脚本需要的配置项 - 用户提供的基础信息 - 重试与超时 - 软件包源和容器镜像仓库 - K8S 参数配置(版本、Pod 网段等) - 测试验收的配置 ### data/ 本技能执行过程中自动备份的文件 ### logs/ 执行本技能提供的工具输出的日志 ### report/ 产出的报告文档 ### best-practice/ - `best-practices.md` - 最佳实践总结 - `architecture-design-template.md` - 架构设计模板 - `troubleshooting-guide.md` - 常见问题排查指南 - `deploy-action-template.md` - 部署方案模板 - `deployment-plan-template.md` - 部署计划模板 - `check-testing-template.md` - 测试验收模板 - `delivery-report-template.md` - 交付报告模板

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 deploy-k8s-cluster-1776072909 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 deploy-k8s-cluster-1776072909 技能

通过命令行安装

skillhub install deploy-k8s-cluster-1776072909

下载 Zip 包

⬇ 下载 deploy-k8s-cluster v1.0.0

文件大小: 4.86 KB | 发布时间: 2026-4-14 10:26

v1.0.0 最新 2026-4-14 10:26
Initial release: comprehensive skill for deploying Kubernetes clusters from scratch on Ubuntu using kubeadm.

- Guides users through a detailed, step-by-step deployment workflow, from information gathering to delivery report.
- Includes architecture design, best practice documentation, troubleshooting, and customizable deployment plans.
- Deployment flow enforces milestone-based, user-confirmed execution, and offers multi-option troubleshooting when issues occur.
- Only supports Ubuntu systems and kubeadm; does not support k3s, managed K8s, persistent storage, or GPU nodes.
- Generates comprehensive reports and documentation for each deployment phase.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部