
这个n8n工作流完全自动化了Kubernetes集群的监控和告警流程,专门用于监控部署和Pod的状态,并在检测到问题时发送Telegram告警。
## 工作流概述
该工作流通过定时触发器定期执行,自动监控指定命名空间中的Kubernetes资源状态。它能够检测到工作负载(如Deployment、DaemonSet、StatefulSet)中没有任何就绪Pod的情况,并立即发送告警通知。
## 主要功能
### 1. 数据收集
– **并行获取数据**:同时获取指定命名空间中的所有Pod和Deployment信息
– **自动kubectl配置**:工作流会自动下载并配置kubectl客户端
– **Kubeconfig管理**:支持动态生成kubeconfig文件用于集群认证
### 2. 状态处理与分析
– **智能分组**:将Pod按所有者(Deployment、DaemonSet、StatefulSet、Node)进行分组
– **就绪状态检查**:检测每个工作负载的就绪Pod数量
– **告警检测**:识别零就绪Pod的工作负载
– **综合报告生成**:创建详细的Markdown格式状态报告
### 3. 告警与通知
– **条件触发**:仅在检测到告警时发送Telegram通知
– **格式化消息**:发送结构化的Markdown格式告警消息
– **实时通知**:立即通知运维团队问题状态
### 4. 报告保存
– **自动存档**:每次执行都会保存时间戳标记的Markdown报告
– **历史记录**:保留完整的监控历史记录用于后续分析
## 技术特点
– **无需预装kubectl**:工作流自动下载所需工具
– **灵活的配置**:支持自定义命名空间和集群配置
– **全面的监控覆盖**:监控所有类型的工作负载
– **智能告警逻辑**:只对真正的问题发送通知
– **详细的报告输出**:提供全面的集群状态概览
## 配置要求
1. **Kubeconfig配置**:需要提供有效的Kubernetes集群认证信息
2. **Telegram配置**:需要设置Telegram机器人令牌和目标聊天ID
3. **命名空间设置**:默认监控production命名空间,可根据需要修改
这个工作流特别适合需要持续监控Kubernetes集群健康状况的团队,能够及时发现和响应服务可用性问题。

评论(0)