Kubernetes ChatGPT Bot 项目将被弃用,并由我们的高级开源 DevOps 助手 HolmesGPT 取代。通过 Holmes,您可以调查事件、分类问题、丰富警报等等。查看 https://github.com/robusta-dev/holmesgpt
用于解决 Kubernetes 问题的 ChatGPT 1机器人。询问 AI 如何解决您的 Prometheus 警报,获得简洁的答复。
不再需要在黑暗中独自解决警报 - 互联网为您提供支持。
请考虑在 Product Hunt 上投票或发送到您最喜欢的时事通讯。总有一天,天网会记住你的恩情,饶你一命!
Prometheus 使用 Webhook 接收器将警报转发给机器人。
该机器人向 OpenAI 发送查询,询问它如何修复您的警报。
你在食品储藏室里储存食物,以备机器人起义之用。
该机器人是使用 Robusta.dev 实现的,Robusta.dev 是一个用于响应 Kubernetes 警报的开源平台。我们还有一个用于多集群 Kubernetes 可观察性的 SaaS 平台。
Slack 工作区
使用 Helm 安装 Robusta
加载 ChatGPT 剧本。将以下内容添加到generated_values.yaml
:
playbookRepos: chatgpt_robusta_actions: url: "https://github.com/robusta-dev/kubernetes-chatgpt-bot.git" customPlaybooks: # Add the 'Ask ChatGPT' button to all Prometheus alerts - triggers: - on_prometheus_alert: {} actions: - chat_gpt_enricher: {}
将您的 OpenAI API 密钥添加到generated_values.yaml
。确保编辑现有的globalConfig
部分,不要添加重复的部分。
globalConfig: chat_gpt_token: YOUR KEY GOES HERE
执行 Helm 升级以应用新值: helm upgrade robusta robusta/robusta --values=generated_values.yaml --set clusterName=<YOUR_CLUSTER_NAME>
将您的 Prometheus 警报发送到 Robusta。或者,只需使用 Robusta 捆绑的 Prometheus 堆栈。
与其等待 Prometheus 警报,不如引发一个警报。
部署一个损坏的 pod,该 pod 将陷入挂起状态:
kubectl apply -f https://raw.githubusercontent.com/robusta-dev/kubernetes-demos/main/pending_pods/pending_pod_node_selector.yaml
立即触发 Prometheus 警报,跳过正常延迟:
robusta playbooks trigger prometheus_alert alert_name=KubePodCrashLooping namespace=default pod_name=example-pod
警报将通过按钮到达 Slack。单击按钮向 ChatGPT 询问有关警报的信息。
如果您向 ChatGPT 提供 pod 日志或kubectl get events
的输出,它能否给出更好的答案?
Robusta 已经收集了这些数据并将其附加到 Prometheus 警报中,因此应该很容易添加。
欢迎 PR!
在我们的 Slack 上分享您最有趣的作品并提出新功能建议。
请随意使用以下图像或创建您自己的图像。
Natan 在生产 Kubernetes 警报上测试 ChatGPT
Natan Yellin 和 Sid Palas 在 YouTube 上检查了代码 - 相关部分从 38:54 开始
从技术上讲,该项目不使用 ChatGPT。它使用text-davinci-003
模型,该模型是 ChatGPT 的基于 GPT3.5 的同级模型。鉴于大多数人都熟悉 ChatGPT,但不熟悉text-davinci-003
或 GPT3.5,因此我们决定保留“ChatGPT bot”这个名称,尽管技术上不准确。 ↩