ClawManager 多节点 Kubernetes 集群部署指南:结合 Longhorn 持久存储从零到一的完整实战
ClawManager 多节点 Kubernetes 集群部署指南结合 Longhorn 持久存储从零到一的完整实战【免费下载链接】ClawManagerA Kubernetes-native control plane for AI agent instance management, with governed AI access, runtime orchestration, and reusable resources across multiple agent runtimes.项目地址: https://gitcode.com/gh_mirrors/cl/ClawManagerClawManager 是一个 Kubernetes 原生的 AI 智能体实例管理控制平面提供受治理的 AI 访问、运行时编排和跨运行时可复用资源。本文将带你完成 ClawManager 多节点 Kubernetes 集群部署用一份内置 Longhorn 的官方清单从零搭出带持久存储的 AI 智能体管理平台全程附命令与排错要点新手也能照做。为什么多节点部署必须用 RWX 共享存储单节点部署靠本地磁盘HostPath就能跑但一旦集群扩到 3 台以上机器有一个绕不开的问题控制面组件MySQL、Redis、MinIO只需要ReadWriteOnceRWO任意一个节点的磁盘即可智能体工作区clawmanager-workspaces却被clawmanager-app、openclaw-runtime、hermes-runtime、opencode-runtime等多个 Deployment 同时挂载Pod 可能被调度到任何节点——这必须用ReadWriteManyRWX跨节点共享卷。⚠️ 官方明确不支持的伪多节点方案多节点 HostPath、用local-path等节点本地存储冒充 RWX、把集群内部 Service DNS 当 NFS 服务端、把持久数据放进emptyDir。官方验证路径选择了Longhorn作为示例 CSIlonghorn提供 RWO 卷longhorn-rwx提供基于 NFSv4 的 RWX 卷。这两个名字只是示例换成 Ceph、EFS 等同等能力的 StorageClass 完全没问题见 docs/deployment.md。集群架构一图看懂整份集群清单deployments/k8s/cluster/clawmanager.yaml一次部署出这些组件组件角色持久化clawmanager-app前端 后端 API 控制平面RWX 工作区卷mysql应用状态数据库RWO5 GiBredis会话 / Team 协作消息总线RWO1 GiBminio对象存储技能包等资源RWO10 GiBskill-scanner技能安全扫描—*-runtime各类 AI 智能体运行时池RWX 工作区卷Longhorn v1.12.0分布式块存储 RWX自身副本数据四个 PVC 的定义在清单的 clawmanager.yaml 中部署后在clawmanager-system命名空间生效。准备工作节点检查与依赖安装1. 确认节点健康kubectl config current-context kubectl get nodes -o wide所有可能跑工作负载的节点都必须是Ready。Longhorn 不会在不健康的集群上稳定工作先修好节点再安装。2. 每个节点安装存储客户端Longhorn 用 iSCSI 做块卷、NFS 做 RWX 卷因此每台工作节点都要装对应客户端# Ubuntu / Debian apt-get update apt-get install -y open-iscsi nfs-common cryptsetup dmsetup systemctl enable --now iscsid || systemctl enable --now open-iscsi # RHEL / Rocky / Alma yum install -y iscsi-initiator-utils nfs-utils cryptsetup device-mapper systemctl enable --now iscsid逐台自检command -v iscsiadm command -v mount.nfs command -v mount.nfs4 systemctl is-active iscsid || systemctl is-active open-iscsi如果mount.nfs4缺失clawmanager-workspaces的 Pod 会一直卡在ContainerCreating事件里会出现bad option; you might need a /sbin/mount.type helper program——这是新手最容易踩的坑。3. 处理 multipathd 干扰systemctl is-active multipathd || true multipath -t 2/dev/null | grep -F devnode ^sd[a-z0-9] || true期望multipathd未运行或黑名单里包含devnode ^sd[a-z0-9]。都不满足时禁用它或按 README 添加黑名单后重启。漏掉这一步的典型症状是Waiting for volume share to be available。4. 检查跨节点 Pod 网络先查是否存在重复 Pod IP有输出就说明 CNI 有问题必须先修kubectl get pods -A \ -o custom-columnsIP:.status.podIP,NS:.metadata.namespace,NAME:.metadata.name,NODE:.spec.nodeName \ --no-headers \ | awk $1 ! none { count[$1] } END { for (ip in count) if (count[ip] 1) print ip }无输出才继续下一步。5. 副本数与存储节点数对齐清单默认numberOfReplicas: 3定义见 clawmanager.yaml。只有 3 台及以上节点可用时才保持默认2 节点测试集群请先改为 2sed -i.bak s/numberOfReplicas: 3/numberOfReplicas: 2/g clawmanager.yaml否则卷会长期处于degraded降级状态。一键部署应用清单并等待组件就绪确认清单中的镜像所有节点都能拉取后离线环境请预先导入私有仓库执行kubectl apply -f deployments/k8s/cluster/clawmanager.yaml然后分三段验证。① Longhorn 存储层kubectl -n longhorn-system rollout status daemonset/longhorn-manager --timeout10m kubectl -n longhorn-system rollout status deployment/longhorn-driver-deployer --timeout10m kubectl -n longhorn-system rollout status daemonset/longhorn-csi-plugin --timeout10m kubectl get sc longhorn longhorn-rwx期望longhorn-manager与longhorn-csi-plugin在所有节点就绪两个 StorageClass 都存在。② ClawManager 工作负载kubectl -n clawmanager-system get pvc kubectl -n clawmanager-system rollout status deployment/clawmanager-app --timeout15m kubectl -n clawmanager-system get deploy,pod,pvc -o wide期望所有 PVC 为Boundclawmanager-app、openclaw-runtime、hermes-runtime、opencode-runtime及 MySQL、Redis、MinIO、skill-scannerPod 全部 Running。③ Longhorn 卷健康kubectl -n longhorn-system get volumes.longhorn.io \ -o custom-columnsNAME:.metadata.name,STATE:.status.state,ROBUSTNESS:.status.robustness,REPLICAS:.spec.numberOfReplicas,SHARESTATE:.status.shareState期望所有卷healthy工作区 RWX 卷额外应显示SHARESTATE: running和 NFS 端点share-manager正常启动的标志。访问 Web 控制台并验收部署集群清单把前端暴露为 HTTPS NodePortclawmanager.yamlkubectl get svc -n clawmanager-system # 看到 clawmanager-frontend 443:30443/TCP浏览器访问https://任意节点IP:30443。首次是自签名证书点高级 → 继续访问即可然后用默认管理员账号登录建议登录后立即改密码 用户名admin 密码admin123登录后Console 仪表盘会直接显示多节点容量视图——节点数、CPU/内存/磁盘分配一目了然这是验收多节点生效最直观的界面用户侧的 Desktop Portal 则直接呈现创建在共享工作区上的智能体实例OpenClaw / Hermes 运行时最后可以走一遍创建 AI 网关模型 → 创建实例的完整链路流程见 docs/use_guide_cn.md确认 RWX 工作区卷在运行时 Pod 中确实可用。常见问题速查表症状原因处理ImagePullBackOff节点拉不到镜像kubectl describe pod找到失败镜像检查节点仓库访问离线环境预导入PVC 一直PendingStorageClass / CSI 未就绪kubectl get sc、kubectl -n clawmanager-system describe pvc 名看事件Pod 卡ContainerCreating提示 mount helper 缺失节点没装 NFS 客户端补装nfs-common/nfs-utils后重启 PodRWX 卷卡在shareState: startingNFS 客户端缺失、multipathd干扰或跨节点网络不通查share-manager日志kubectl -n longhorn-system logs share-manager-pod卷degraded副本数 可用存储节点数下调numberOfReplicas或扩容节点longhorn-driver-deployerCrashLoop重复 Pod IP / 跨节点网络故障回到准备工作第 4 步排查 CNI遇到拿不准的排障细节按编号对照 deployments/k8s/cluster/README.md 的 Install 章节即可每一步都给了检查命令和期望输出。换成自己的存储只改 6 个环境变量longhorn/longhorn-rwx不是硬绑定。换成 Ceph、EFS 等存储时改clawmanager-appDeployment 的这几个环境变量默认值见 clawmanager.yaml变量默认值说明CLAWMANAGER_STORAGE_PROFILEcluster声明多节点 CSI 模式K8S_HOSTPATH_FALLBACK_ENABLEDfalse禁止悄悄退回 HostPathK8S_PVC_BIND_TIMEOUT2mPVC 绑定等待上限K8S_CONTROL_PLANE_STORAGE_CLASSlonghorn控制面 RWO 卷的 StorageClassK8S_INSTANCE_STORAGE_CLASSlonghorn实例 RWO 卷的 StorageClassK8S_WORKSPACE_STORAGE_CLASSlonghorn-rwx工作区 RWX 卷的 StorageClass同时把清单中 4 个 PVC 的storageClassName改为你的类名并确认K8S_WORKSPACE_ACCESS_MODEReadWriteMany与新存储的访问模式一致。更多运维细节归档大小限制CLAWMANAGER_WORKSPACE_ARCHIVE_MAX_MIB、上报问题前要收集的命令清单等都在 docs/deployment.md。干净卸载顺序不能反测试环境要拆除时必须让 Longhorn 卸载 Job 先于整体清单执行# 1. 先删 ClawManager 工作负载 kubectl delete namespace clawmanager-user-1 clawmanager-system --ignore-not-found # 2. 解锁 Longhorn 删除确认 kubectl -n longhorn-system patch settings.longhorn.io deleting-confirmation-flag \ --typemerge -p {value:true} # 3. 运行官方卸载 Job kubectl create -f deployments/k8s/cluster/uninstall.yaml kubectl wait --forconditioncomplete job/longhorn-uninstall -n longhorn-system --timeout10m # 4. 最后才删除一键清单 kubectl delete -f deployments/k8s/cluster/clawmanager.yaml --ignore-not-found如果之前误删了整体清单导致卸载卡住README 的 Recovery 章节给出了清理残留 webhook 与 CRD 的完整方法。总结回顾这条从零到一的路径节点先行——Ready 节点 iSCSI/NFS 客户端 干净的 Pod 网络占掉了 90% 的坑一键清单——Longhorn 与 ClawManager 同文件部署RWO 与 RWX 分工明确三段验证——Longhorn 就绪 → PVCBound→ 卷healthy且 RWX 卷shareState: running控制台验收——:30443登录后核对多节点容量视图跑通第一个智能体实例。按这套流程走完你就拥有了一个存储可迁移、实例可恢复、AI 访问受治理的多节点 ClawManager 集群。想进一步探索 k3s 路径、单节点 HostPath 方案或端到端验收用例可以继续看 docs/deployment.md、deployments/k3s/cluster/clawmanager.yaml 与 e2e/README.md。【免费下载链接】ClawManagerA Kubernetes-native control plane for AI agent instance management, with governed AI access, runtime orchestration, and reusable resources across multiple agent runtimes.项目地址: https://gitcode.com/gh_mirrors/cl/ClawManager创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

RHEL 7.6部署Oracle 19c ASM+Data Guard实战避坑指南

RHEL 7.6部署Oracle 19c ASM+Data Guard实战避坑指南

简介:本资源是一份面向DBA、系统运维工程师及Oracle高可用架构学习者的实战部署指南,聚焦RHEL 7.6环境下Oracle 19c单实例ASMData Guard物理备库的端到端搭建。内容覆盖硬件与系统预检(4核/20G内存/200G存储)、GI与数据库软件版本…

2026/10/9 18:00:33 阅读更多 →
医院门诊管理系统数据库设计:从需求分析到建表落地

医院门诊管理系统数据库设计:从需求分析到建表落地

简介:这是一份医院门诊管理系统数据库设计的课程设计文档,适合软件工程、数据库相关专业学生及需要完成类似课设的开发者参考。资源围绕小型医院门诊管理系统的数据库设计与实现展开,涵盖需求分析、数据流程图、数据字典、E-R图设计、概念与逻…

2026/10/10 20:02:21 阅读更多 →
Spring Boot+Vue微信小程序购物系统:从搭建到答辩全流程指南

Spring Boot+Vue微信小程序购物系统:从搭建到答辩全流程指南

简介:一套面向毕业设计场景的Java微信小程序购物系统完整可运行项目,基于Springboot与Vue实现前后端分离,适合计算机专业学生用于课题设计、期末作业或二次开发学习,也可作为微信小程序开发的进阶参考。项目已通过导师指导与答辩评…

2026/10/10 18:21:13 阅读更多 →

最新新闻

Python开发者微信小程序后端实战指南

Python开发者微信小程序后端实战指南

简介:本资源是一份面向Python开发者的微信小程序入门与进阶实践指南,专为熟悉Python但希望拓展前端及全栈能力的工程师设计,解决JavaScript生态切入难、前后端协同不畅等实际问题。文档系统梳理了微信开发者工具配置、WXML/WXSS类比学习路径、…

2026/10/10 21:32:18 阅读更多 →
Java语法进阶:从泛型擦除到Stream流水线,突破命令式思维

Java语法进阶:从泛型擦除到Stream流水线,突破命令式思维

在团队里做代码评审这些年,我最深的感受是:Java写得好不好,和"背了多少语法点"关系不大,和"有没有建立一套表达习惯"关系很大。很多开发者写了两三年Java,每天用的还是那套if/else加for循环的组合…

2026/10/10 21:32:17 阅读更多 →
LeetCode 1784:二进制字符串连续1段数判断的上升沿解法

LeetCode 1784:二进制字符串连续1段数判断的上升沿解法

先说一下我为什么突然翻这道题。周末清理刷题记录,发现LeetCode 1784这题我居然提交了三次才通过,第一次还挂在“全0字符串”这种边界上,当场给我整不会了。仔细一看题目本身不难,但它的描述有个特别容易踩的坑——“二进制字符串…

2026/10/10 21:32:17 阅读更多 →
AI数据中心超节点设计:从互联拓扑到NCCL调优的工程实践

AI数据中心超节点设计:从互联拓扑到NCCL调优的工程实践

1. 从单卡到超节点:为什么AI数据中心需要重新设计如果你最近一年在跟AI基础设施打交道,大概率会频繁听到一个词——超节点。我第一次接触这个概念是在一个千卡级训练集群的扩容讨论会上,当时团队面临一个很尴尬的局面:单卡算力明明…

2026/10/10 21:32:17 阅读更多 →
UE5.8 Mesh Terrain完全指南:从启用插件到高效地形雕刻

UE5.8 Mesh Terrain完全指南:从启用插件到高效地形雕刻

打开虚幻引擎 5.8,很多做关卡美术和地形编辑的朋友应该已经注意到,传统 Landscape 高度图系统之外,这次更新带来了一种全新的地形工作流——Mesh Terrain。简单说,它允许你用真正的三维网格体去组织和雕刻地形,而不再局…

2026/10/10 21:32:17 阅读更多 →
马行为识别数据集:从VOC解析到YOLO训练全流程

马行为识别数据集:从VOC解析到YOLO训练全流程

简介:马行为识别数据集是一套面向计算机视觉与深度学习场景的标注资源,主要用于马匹行为自动识别,覆盖站立、吃草、躺下等常见动作,对应不同的标注类别,整体识别准确率约为89.8%。压缩包共2000个文件,均为P…

2026/10/10 21:31:17 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →