A comprehensive cloud simulation system that demonstrates energy-efficient resource management in data centers using Docker, Machine Learning, FastAPI, and Next.js.
This project simulates multiple virtual data centers processing tasks with real-time monitoring and ML-powered scheduling for optimal energy efficiency.
- 3 Virtual Data Centers simulated with Docker
- Real-time CPU/Memory monitoring
- ML-based energy-efficient task scheduling
- Modern Next.js dashboard with live visualization
- MongoDB for metrics storage and analysis
[DC1] [DC2] [DC3]
| | |
[Containers + Monitoring Agents]
| | |
→→→ FastAPI Backend ←←←
|
[ML Scheduler + MongoDB]
|
Next.js Dashboard (TypeScript)
-
Prerequisites
docker --version docker-compose --version node --version (v18+) python --version (3.8+)
-
Clone and Setup
git clone <your-repo> cd EcoCloud
-
Start All Services
# Start data centers and backend docker-compose up -d # Start frontend cd frontend npm install npm run dev
-
Access Dashboard
- Frontend: http://localhost:3000
- API Docs: http://localhost:8000/docs
- MongoDB: localhost:27017
EcoCloud/
├── docker_data_centers/ # Docker containers for DC simulation
├── backend/ # FastAPI backend
├── frontend/ # Next.js TypeScript dashboard
├── ml_scheduler/ # Machine learning models
├── monitoring/ # Monitoring agents
├── docs/ # Documentation
└── docker-compose.yml # Main orchestration
cd backend
pip install -r requirements.txt
uvicorn main:app --reloadcd frontend
npm install
npm run devdocker-compose up data-center-1 data-center-2 data-center-3- Real-time Monitoring: Live CPU/Memory tracking
- ML Scheduling: Intelligent task assignment
- Energy Analytics: Power consumption analysis
- Interactive Dashboard: Modern UI with charts
- Auto-scaling: Dynamic resource allocation
# Backend tests
cd backend && python -m pytest
# Frontend tests
cd frontend && npm test
# Integration tests
docker-compose -f docker-compose.test.yml upThe system demonstrates:
- 30-40% energy savings through ML scheduling
- Real-time resource optimization
- Scalable architecture for cloud environments
- Professional-grade monitoring and analytics
This project is designed for internship/academic demonstration of:
- Cloud computing concepts
- Energy-efficient computing
- Machine learning in systems
- Modern web development
- DevOps practices
MIT License - See LICENSE file for details.