1. Sprint 1–2: Kickoff — “From Agents to Django Controller” - ITA-Dnipro/PyDataCenter5000 GitHub Wiki
Goal Deploy VMs with Python agents and initialize the Django project for the central monitoring controller.
Subgroup | Members | Responsibilities |
---|---|---|
VM & Agent Team | 4 students | VirtualBox setup, SSH access, agent creation in Python 2.6 |
Django Backend Team | 4 students | Create Django project (Python 3.8), define models and endpoints |
Integration & Comms Team | 2 students | Design initial API contract, test TCP/HTTP communication between agent and Django controller |
Tasks Overview
-
Install OS (e.g., FreeBSD/Linux) on 3 VMs
-
Configure static IP and SSH access
-
Create
agent.py
(Python 2.6): collect hostname, IP, uptime -
Test logging locally
-
Python 3.8 virtual environment
-
django-admin startproject pydata_center
-
Create an app:
monitoring
-
Add models:
-
ServerStatus
: hostname, ip, uptime, timestamp
-
-
Create API endpoint (
POST /api/status/
) to receive data from agents -
Use
djangorestframework
for the API
-
Draft the JSON schema agent will send
{
"hostname": "server-1",
"ip": "192.168.1.101",
"uptime": "2 days, 4:15",
"timestamp": "2025-05-16T15:00:00"
}
-
Test sending sample POST request from agent to Django backend
-
Verify data saved via Django Admin or DB
PyDataCenter/
├── pydata_center/ # Django project
│ ├── settings.py
│ └── urls.py
├── monitoring/ # Django app
│ ├── models.py
│ ├── views.py
│ └── urls.py
├── agents/
│ └── agent.py # Python 2.6 client
├── docs/
│ └── sprint_plan.md
└── vagrant/ # VM setup scripts