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.

Proposed Team Structure

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

1. VirtualBox + Agent Setup (VM & Agent Team)

  • 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

2. Django Project Initialization (Backend Team)

  • 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

3. Communication Flow (Integration Team)

  • 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

Folder Structure (suggested)

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
⚠️ **GitHub.com Fallback** ⚠️