Install
openclaw skills install @thcjp/kubernetes-toolkit-freeopenclaw skills install @thcjp/kubernetes-toolkit-free本工具为个人开发者和小团队提供K8s集群管理能力。采用多Agent协作模式,支持常用K8s资源的创建、查询与管理。适合个人开发环境与小规模集群的日常运维。
| 功能 | 说明 | 免费版支持 |
|---|---|---|
| 资源管理 | Pod/Service/Deployment等 | 支持 |
| 多Agent | 协作管理模式 | 支持 |
| 配置管理 | ConfigMap/Secret | 支持 |
| 故障排查 | 基础问题诊断 | 支持 |
| 命名空间 | 命名空间管理 | 支持 |
| 节点管理 | 节点查询与标签 | 基础 |
| 监控告警 | 集群监控 | 不支持 |
| 策略治理 | 策略管理 | 不支持 |
输入: 用户提供管理功能所需的指令和必要参数。 处理: 解析管理功能的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回管理功能的响应数据,包含状态码、结果和日志。
| 资源 | 创建 | 查询 | 更新 | 删除 |
|---|---|---|---|---|
| Pod | 支持 | 支持 | 有限 | 支持 |
| Deployment | 支持 | 支持 | 支持 | 支持 |
| Service | 支持 | 支持 | 支持 | 支持 |
| ConfigMap | 支持 | 支持 | 支持 | 支持 |
| Secret | 支持 | 支持 | 支持 | 支持 |
| Ingress | 支持 | 支持 | 支持 | 支持 |
| PVC | 支持 | 支持 | 有限 | 支持 |
| Namespace | 支持 | 支持 | 不支持 | 支持 |
输入: 用户提供支持的资源类型所需的指令和必要参数。 处理: 解析支持的资源类型的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回支持的资源类型的响应数据,包含状态码、结果和日志。
用input_params参数进行配置。
输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:Kubernetes、集群基础管理工具、支持多、协作与常用资源操、面向个人开发者与、小团队的、集群管理工具、协作模式、等常用资源的创建、Use、when、需要代码生成、编程辅助、调试测试、开发部署时使用、不适用于无明确技、术栈的模糊需求、适用于独立开发者、企业团队和自动化、工作流场景等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。用户输入:"帮我部署一个Nginx应用"
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | K8s集群管理入门处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
# 创建Deployment
python3 (请参考skill目录中的脚本文件) deploy \
--name nginx-app \
--image nginx:1.25 \
--replicas 3 \
--port 80 \
--namespace default
# ...
# 创建Service
python3 (请参考skill目录中的脚本文件) expose \
--deployment nginx-app \
--port 80 \
--type ClusterIP \
--name nginx-service
用户输入:"让多个Agent分别管理不同命名空间"
# 配置多Agent
python3 (请参考skill目录中的脚本文件) agents config \
--agent dev-agent --namespace development \
--agent staging-agent --namespace staging \
--agent prod-agent --namespace production
# ...
# 各Agent独立管理各自命名空间
python3 (请参考skill目录中的脚本文件) agents status
用户输入:"查看default命名空间的所有资源"
# 查询资源
python3 (请参考skill目录中的脚本文件) list --namespace default --all-resources
# ...
# 输出:
# Deployments: nginx-app (3/3)
# Services: nginx-service (ClusterIP: 10.96.0.10)
# ConfigMaps: nginx-config
# Pods: nginx-app-xxx (running)
# 依赖说明
# 安装Python依赖
pip install kubernetes
# ...
# 验证连接
python3 (请参考skill目录中的脚本文件) info
# 部署应用
python3 (请参考skill目录中的脚本文件) deploy --name my-app --image my-image:v1 --replicas 3
# ...
# 查询资源
python3 (请参考skill目录中的脚本文件) list --namespace default
python3 (请参考skill目录中的脚本文件) get pod --name my-app-xxx
python3 (请参考skill目录中的脚本文件) logs --name my-app-xxx --tail 100
# ...
# 更新资源
python3 (请参考skill目录中的脚本文件) scale --deployment my-app --replicas 5
python3 (请参考skill目录中的脚本文件) rollout --deployment my-app --status
# ...
# 配置管理
python3 (请参考skill目录中的脚本文件) configmap create --name my-config --from-file ./config.yaml
python3 (请参考skill目录中的脚本文件) secret create --name my-secret --from-literal password=xxx
# ...
# 故障排查
python3 (请参考skill目录中的脚本文件) diagnose --pod my-app-xxx
响应解析: 完成完成后,查看输出响应确认任务状态。成功时输出包含解析摘要和响应数据;失败时根据错误信息排查问题,查阅错误解析章节获取恢复步骤。
k8s_config:
kubeconfig: "~/.kube/config"
context: "default"
namespace: "default"
# ...
agents:
mode: "collaborative" # collaborative | single
max_agents: 5
namespaces:
- agent: "dev-agent"
namespace: "development"
- agent: "prod-agent"
namespace: "production"
# ...
defaults:
replicas: 2
image_pull_policy: "IfNotPresent"
restart_policy: "Always"
service_type: "ClusterIP"
# ...
resources:
default_requests:
cpu: "100m"
memory: "128Mi"
default_limits:
cpu: "500m"
memory: "512Mi"
| 实践要点 | 说明 |
|---|---|
| 资源限制 | 所有Pod设置resources |
| 镜像版本 | 使用固定版本号 |
| 健康检查 | 配置liveness/readiness |
| 多Agent | 按命名空间分工,避免冲突 |
多个Agent各自管理指定命名空间的资源,互不干扰。中央协调器负责跨命名空间的协调与冲突检测。适合团队按环境或项目分工。
免费版支持最多5个命名空间的管理。如需管理更多命名空间或大规模集群,建议升级PRO版。
免费版支持查询CRD,但创建和管理CRD能力有限。如需完整CRD支持,建议升级PRO版。
配置kubeconfig文件指向已有集群的API Server。本工具通过kubernetes-python客户端连接集群,无需在集群内部署。
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
| Python | 运行时 | 必需 | 系统安装或conda环境 |
| kubernetes | Python库 | 必需 | pip install kubernetes |
| PyYAML | Python库 | 必需 | pip install pyyaml |
{
"input": "示例输入",
"output": "处理结果"
}
处理结果以结构化格式返回, 包含状态码、消息和数据字段。