mcpField
R
RobustaDev

RobustaDev

github.com/julianobarbosa云与 DevOps1448 次安装3 天前更新
代码仓库

关于 RobustaDev

RobustaDev 是 Robusta 的运维指南,介绍如何通过 Playbook 将 Kubernetes 告警转化为信息补充、通知和修复操作。它涵盖安装、触发器、动作与通知目标配置,也包括可选的 HolmesGPT AI 调查。

主要功能

  1. 01以触发器和动作配置 Playbook
  2. 02补充日志、事件与资源指标
  3. 03将通知发送至多种目标
  4. 04支持自动修复动作
  5. 05按 Slack 线程归组相关告警
  6. 06提供可选 AI 根因调查

适用场景

  1. 01为崩溃循环告警添加日志和事件
  2. 02将 Kubernetes 告警发送到 Slack
  3. 03配置自动化 Pod 修复
  4. 04排查告警未送达的问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/julianobarbosa/claude-code-skills --skill robustadev

安装后在 Claude Code 中输入/robustadev确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
Actions.md
Installation.md
Playbooks.md
Sinks.md
Triggers.md
Troubleshooting.md
Workflows/
ConfigurePlaybooks.md
ConfigureSinks.md
Install.md
Troubleshoot.md

详细介绍

RobustaDev

Robusta 综合指南——这款 SRE Agent 使用 playbook、AI 调查和自动修复,将 Kubernetes 告警转化为可执行的洞见。

快速参考

组件用途
Playbook定义告警响应的规则引擎
触发器触发 playbook 执行的事件
操作修复步骤和信息补充
接收端通知目标(Slack、Teams、PagerDuty 等)

工作流路由

工作流触发条件文件
Install“安装 robusta”、“部署 robusta”Workflows/Install.md
ConfigurePlaybooks“创建 playbook”、“配置 playbook”Workflows/ConfigurePlaybooks.md
ConfigureSinks“设置 slack”、“配置通知”Workflows/ConfigureSinks.md
Troubleshoot“robusta 无法正常工作”、“告警未触发”Workflows/Troubleshoot.md

快速开始安装

前提条件
  • Kubernetes 集群
  • 已安装 Helm 3.x
  • 已配置 kubectl
一体化安装(Robusta + Prometheus)
# Generate configuration
pipx run robusta-cli gen-config --enable-prometheus-stack

# Or using Docker
curl -fsSL -o robusta https://docs.robusta.dev/master/_static/robusta
chmod +x robusta
./robusta gen-config --enable-prometheus-stack

# Install via Helm
helm repo add robusta https://robusta-charts.storage.googleapis.com
helm repo update
helm install robusta robusta/robusta \
  -f ./generated_values.yaml \
  --set clusterName=<YOUR_CLUSTER_NAME>

# Verify installation
kubectl get pods -A | grep robusta
独立安装(使用现有 Prometheus)
pipx run robusta-cli gen-config
helm install robusta robusta/robusta -f ./generated_values.yaml

Playbook 结构

# Example playbook in generated_values.yaml
customPlaybooks:
  - triggers:
      - on_prometheus_alert:
          alert_name: KubePodCrashLooping
    actions:
      - logs_enricher: {}
      - pod_events_enricher: {}
    sinks:
      - slack
触发器类型
触发器描述
on_prometheus_alert在 Prometheus/AlertManager 告警时触发
on_pod_create创建 Pod 时触发
on_pod_update更新 Pod 时触发
on_deployment_updateDeployment 发生变更时触发
on_schedule基于 Cron 的定时执行
on_kubernetes_warning_event出现 K8s 警告事件时触发
常用操作
操作用途
logs_enricher将 Pod 日志添加到告警中
pod_events_enricher添加 K8s 事件
node_cpu_enricher添加 CPU 指标
node_memory_enricher添加内存指标
deployment_status_enricher添加 Deployment 信息
delete_pod通过删除 Pod 自动修复
node_bash_enricher在节点上运行 bash 命令

接收端配置

Slack
sinksConfig:
  - slack_sink:
      name: main_slack
      slack_channel: alerts
      api_key: xoxb-your-token
Microsoft Teams
sinksConfig:
  - ms_teams_sink:
      name: teams_alerts
      webhook_url: https://outlook.office.com/webhook/...
PagerDuty
sinksConfig:
  - pagerduty_sink:
      name: pagerduty
      api_key: your-integration-key
Webhook(通用)
sinksConfig:
  - webhook_sink:
      name: custom_webhook
      url: https://your-endpoint.com/alerts

示例

示例 1:使用 Prometheus 安装 Robusta

User: "Install Robusta on my AKS cluster"
-> Generate config with gen-config --enable-prometheus-stack
-> Add Helm repo and install with cluster name
-> Verify pods are running

示例 2:创建崩溃循环信息补充 playbook

User: "Add pod logs to CrashLoopBackOff alerts"
-> Create playbook with on_prometheus_alert trigger
-> Add logs_enricher and pod_events_enricher actions
-> Configure Slack sink for notifications

示例 3:配置 Slack 通知

User: "Send Robusta alerts to #k8s-alerts Slack channel"
-> Add slack_sink to sinksConfig
-> Set channel name and API key
-> Optionally filter by severity or namespace

示例 4:排查缺失的告警

User: "Robusta isn't sending alerts to Slack"
-> Check robusta-runner pod logs
-> Verify sink configuration in generated_values.yaml
-> Test with manual trigger: robusta playbooks trigger

核心概念

告警流
Prometheus Alert -> AlertManager -> Robusta -> Playbook -> Actions -> Sinks
Playbook 组件
  1. 触发器 - 触发 playbook 的事件
  2. 操作 - 触发后要执行的操作(补充信息、修复)
  3. 接收端 - 发送结果的目标位置
智能分组

Robusta 使用 Slack 话题串对相关告警进行分组,以减少通知刷屏。

AI 调查(HolmesGPT)

Robusta Pro 或可自托管的 HolmesGPT 提供可选的 AI 根因分析功能。

参考文档

  • references/Installation.md - 详细安装指南
  • references/Playbooks.md - 完整的 playbook 参考
  • references/Triggers.md - 所有触发器类型
  • references/Actions.md - 可用操作
  • references/Sinks.md - 接收端配置
  • references/Troubleshooting.md - 常见问题及解决方法

外部资源

评论

支持 Markdown