System Requirements
AuroraSOC is a distributed system with multiple components. Below are the hardware and software requirements for different deployment scenarios.
Deployment Profiles
Development / Demo Mode
The minimal setup for local development and demonstrations:
| Resource | Requirement |
|---|---|
| CPU | 4 cores |
| RAM | 8 GB minimum |
| Disk | 20 GB SSD |
| GPU | Not required |
| OS | Fedora 39+ / RHEL 9+ / Debian 12+ / Arch Linux / Windows 11 (WSL2) |
Components running: API + Dashboard + Database services
Production — Single Node
Full deployment on a single server:
| Resource | Requirement |
|---|---|
| CPU | 16 cores |
| RAM | 64 GB |
| Disk | 500 GB NVMe SSD |
| GPU | NVIDIA GPU with 16+ GB VRAM (for vLLM inference) |
| Network | 1 Gbps |
| OS | Fedora 39+ / RHEL 9+ / Debian 12+ / Ubuntu 22.04+ / Arch Linux |
Production — Distributed
Multi-node deployment for large organizations:
| Component | Nodes | Per-Node Resources |
|---|---|---|
| API Gateway | 2+ | 4 CPU, 8 GB RAM |
| Agent Workers | 4+ | 8 CPU, 16 GB RAM, GPU |
| Database Cluster | 3+ | 8 CPU, 32 GB RAM, 1 TB SSD |
| Event Bus | 3+ | 4 CPU, 8 GB RAM |
| Edge Gateway | Per-site | 2 CPU, 4 GB RAM |
Software Prerequisites
Required
| Software | Version | Purpose |
|---|---|---|
| Docker or Podman | Docker 27+ or Podman 5.0+ | Container runtime for AuroraSOC services |
| Compose support | Docker Compose plugin or podman compose | Multi-container orchestration |
| Python | 3.12+ | API and agent runtime |
| Node.js | 22+ | Dashboard build |
| npm | 10+ | JavaScript package manager |
AuroraSOC repository tooling auto-detects Docker or Podman. Use COMPOSE_BIN for Makefile and script overrides, and FLEET_COMPOSE_BIN when the backend compose orchestrator must target a specific runtime.
Optional
| Software | Version | Purpose |
|---|---|---|
| NVIDIA Container Toolkit | Latest | GPU passthrough via CDI for vLLM |
| Rust | 1.83+ | Building the optional Rust fast path |
| Ollama | 0.4+ | CPU-only LLM inference alternative to vLLM |
| Alire | 2.0+ | Ada SPARK firmware (STM32) |
| probe-rs | 0.24+ | nRF52840 firmware flashing |
| Zephyr SDK | 0.16+ | ESP32-S3 firmware |
Network Requirements
AuroraSOC uses the following ports by default:
| Port | Protocol | Service | Required |
|---|---|---|---|
| 8000 | HTTP | FastAPI REST API | Yes |
| 3000 | HTTP | Next.js Dashboard | Yes |
| 5432 | TCP | PostgreSQL | Yes |
| 6379 | TCP | Redis | Yes |
| 4222 | TCP | NATS Client | Yes |
| 8222 | HTTP | NATS Monitoring | Optional |
| 8080 | HTTP | vLLM inference server | If using agents |
| 1883 | MQTT | Mosquitto (plain) | Dev only |
| 8883 | MQTTS | Mosquitto (TLS) | Production |
| 11434 | HTTP | Ollama LLM (alternative to vLLM) | If using Ollama |
| 8001 | HTTP | MCP Tool Registry | If using agents |
| 9000-9016 | HTTP | Agent A2A ports | If using agents |
| 9090 | HTTP | Prometheus | Optional |
| 3001 | HTTP | Grafana | Optional |
| 4317 | gRPC | OTel Collector | Optional |
| 8200 | HTTP | HashiCorp Vault | Optional |
Container Network Architecture
AuroraSOC uses four isolated container networks for security:
The four networks (frontend, agent-mesh, data-plane, iot-plane) ensure that edge devices on the IoT plane cannot directly access the database, and the dashboard cannot directly communicate with agents — all traffic flows through the API gateway.
The default deployment uses the Python API and event-processing path. The
rust-core service joins the data-plane and iot-plane networks only when
you enable --profile rust-core, and its host binding can be changed with
RUST_CORE_HOST_PORT.