Self-Healing Cloud Infra
Monitor, detect, decide, recover: a control loop for a Linux host.
- Java 21, Spring Boot 3.2
- Maven
- Linux / Ubuntu, port 8080
- DevForgeCore, final-year project
Problem
When a host runs out of CPU, memory or disk, someone has to notice and act. This educational prototype watches a Linux host, classifies resource trouble and runs a predefined recovery action without waiting for a human, while keeping a tamper-evident record of what it did.
Features
- Monitoring: live CPU, RAM and disk metrics with a resource-history chart.
- Detection: rule-based detection of supported overload conditions.
- Decisions: a decision engine maps each classified issue to a configured action.
- Recovery: demonstrated recovery for CPU, memory and disk scenarios.
- Event logs: incident and recovery records with blockchain-inspired, hash-chained integrity logging.
- Dashboard: system status, decisions, processes, logs and trust information in one interface.
Design decisions
- Threshold rules rather than a trained model: the README is explicit that detection is rule-based until a real ML model is added.
- Recovery is limited to predefined actions on demo processes and project-owned test files, never free-form automation.
- Every event is appended to a hash chain so the recovery history cannot be quietly edited afterwards.
- Recovery controls are meant for a disposable test VM and must not be exposed publicly without authentication and allow-lists.
Architecture
- Monitoring
- Failure detection
- Classification
- Decision engine
- Recovery service
- Event and integrity logging
Tech stack
- Java 21, Spring Boot 3.2.5, Maven
- HTML, CSS, JavaScript, Chart.js
- REST API, Linux / Ubuntu
API
/api/system-healthCurrent resource metrics and status/api/logsApplication and recovery logs/api/processesProcess information
Result
A working monitor-detect-decide-recover loop with a verifiable log, built with a team under the DevForgeCore organisation. Planned next: SHA-256 hash-chain verification, safer recovery checks with rollback, authentication and container monitoring.