CODE-X-ABHIJIT/RootIQ
GitHub: CODE-X-ABHIJIT/RootIQ
RootIQ 是一个 Kubernetes 事件响应与自动修复框架,通过自动化检测、根因分析、修复执行与验证来缩短生产环境故障的排查和恢复时间。
Stars: 1 | Forks: 0
# RootIQ
## 📖 概述
管理 Kubernetes 生产环境通常需要工程师手动调查故障、关联事件、确定根本原因、执行恢复操作并验证集群健康状况。这个过程非常耗时、容易出错,并且高度依赖于运维经验。
RootIQ 简化了这一工作流程,它通过单一的命令行界面收集集群数据、使用基于规则的引擎分析事件、执行自动化修复、验证已应用的修复并生成全面的事件报告。
## ✨ 功能
* 🔍 自动化的 Kubernetes 集群检查
* 🧠 基于规则的根本原因分析 (RCA)
* 🛠️ 自动化修复引擎
* ✅ 修复后验证
* 📄 事件报告生成
* 📦 结构化的事件生命周期管理
* 📝 持久化的事件存储
* ☸️ Kubernetes 原生资源收集器
* 🔒 安全且可扩展的修复框架
* ⚡ 模块化且可扩展的架构
## 🏗️ 项目结构
```
RootIQ/
│
├── rootiq/
│ ├── cli/
│ ├── collectors/
│ ├── analyzers/
│ ├── rule_engine/
│ ├── repair_engine/
│ ├── validators/
│ ├── reports/
│ ├── incident/
│ ├── kubernetes/
│ ├── config/
│ └── utils/
│
├── rules/
├── templates/
├── docs/
├── tests/
│
├── requirements.txt
├── pyproject.toml
└── README.md
```
## 🧩 事件生命周期
```
NEW
│
▼
INSPECTING
│
▼
DIAGNOSED
│
▼
REPAIRING
│
▼
VALIDATED
│
▼
RESOLVED
│
▼
CLOSED
```
## ⚙️ 计划工作流程
```
Inspect Cluster
│
▼
Collect Kubernetes Resources
│
▼
Analyze Cluster State
│
▼
Identify Root Cause
│
▼
Generate Incident
│
▼
Execute Repair
│
▼
Validate Recovery
│
▼
Generate RCA Report
```
## 📋 CLI 命令
```
rootiq inspect
```
对 Kubernetes 集群进行全面检查,并在检测到问题时创建事件。
```
rootiq repair
```
根据确定的根本原因执行自动化修复。
```
rootiq validate
```
验证修复是否已成功解决问题。
```
rootiq report
```
生成详细的事件报告,包含诊断、根本原因分析、修复操作、验证结果和建议。
## 🛠️ 技术栈
* Python 3
* Kubernetes Python Client
* YAML
* JSON
* Docker
* GitHub Actions
* Linux
* AWS (EKS)
* Kubernetes
## 📦 核心组件
### 收集器
收集集群资源,例如 Pods、Deployments、ReplicaSets、StatefulSets、DaemonSets、Services、PVC、PV、Nodes、Events、ConfigMaps、Secrets、HPA、Jobs、CronJobs 以及其他 Kubernetes 对象。
### 规则引擎
根据可配置的诊断规则评估收集的数据,以确定最可能的根本原因。
### 分析器
将事件、日志、指标和 Kubernetes 资源状态进行关联,以生成智能诊断。
### 修复引擎
在维持操作安全性和可追溯性的同时,执行自动化恢复操作。
### 验证器
确认集群在修复后已恢复到健康状态。
### 报告生成
生成包含 RCA、修复历史、验证结果和建议的结构化事件报告。
## 🎯 目标
* 缩短平均检测时间 (MTTD)
* 缩短平均解决时间 (MTTR)
* 标准化 Kubernetes 事件处理
* 自动化重复的运维任务
* 提高生产环境的可靠性
* 简化 Kubernetes 故障排查
## 🚀 未来增强功能
* 多集群管理
* FastAPI REST API
* Web 仪表板
* Slack 和 Microsoft Teams 集成
* 电子邮件通知
* Prometheus 集成
* Grafana 集成
* AI 辅助的 RCA
* Helm chart 部署
* Kubernetes Operator 支持
* 多云支持 (EKS、AKS、GKE、OpenShift)
## 📄 许可证
本项目基于 MIT 许可证授权。
## 👨💻 作者
**Abhijit Sahu**
Cloud | DevOps | Kubernetes | AWS | Python
标签:Homebrew安装, 子域名突变, 故障排查, 自动修复, 自动化运维, 请求拦截