Skynet Homelab Documentation
Enterprise-Grade Self-Hosted Infrastructure
A comprehensive, scalable, and automated homelab powered by containerization, infrastructure-as-code, and modern DevOps practices.
What is Skynet?
Skynet is a fully self-hosted homelab infrastructure built on industry-standard technologies. It combines high-availability virtualization, container orchestration, infrastructure automation, and comprehensive monitoring to create a robust, production-grade environment for development, testing, and hosting applications.
Core Technology Stack
| Category | Technology | Purpose |
|---|---|---|
| Virtualization | XCP-ng | Bare-metal hypervisor for VM management |
| Container Runtime | Rootless Podman + Quadlets | Secure, systemd-integrated container orchestration |
| Automation | Ansible | Infrastructure-as-code for reproducible deployments |
| Monitoring | Prometheus + Grafana | Metrics collection and visualization |
| DNS/Security | BIND9 + Pi-hole | Internal DNS and ad-blocking |
| Networking | MikroTik RouterOS | Advanced routing, firewall, and DHCP |
| Repositories | Gitea | Self-hosted Git service |
| Orchestration | Semaphore UI | Visual Ansible automation interface |
| Databases | PostgreSQL | Relational database for applications |
Infrastructure Architecture
The Skynet infrastructure consists of 2 XCP-ng hypervisors, multiple application VMs, dedicated database servers, and NAS storage for reliable, distributed operations.
Components
- Hypervisors: beast.skynet.lan and aurora.skynet.lan (XCP-ng)
- Application VMs: artemis, apps, athena, orion, games, luffy, scanner
- Database Server: databases.skynet.lan (PostgreSQL)
- Monitoring: cortex.skynet.lan (Prometheus + Grafana)
- DNS Services: ns1.skynet.lan (Master), ns2.skynet.lan (Secondary), hades.skynet.lan (Pi-hole)
- Storage: poseidon.skynet.lan (Synology RS422+), zeus.skynet.lan (OpenMediaVault)
- Network: MikroTik Router (10.0.0.1) - Firewall, DHCP, DNS
Documentation Sections
Getting Started
- System Architecture — Network topology and VM relationships
- System Setup — Post-deployment VM configuration guide
- Services Architecture — How all services interconnect
Container & Virtualization
- Podman Installation & Setup — Rootless Podman configuration
- Podman Monitoring — Monitor container performance
- Quadlets — Systemd-integrated container unit files
- Docker Installation — Docker setup for compatibility
Networking & DNS
Monitoring & Observability
- Prometheus — Metrics collection and storage
- Grafana — Dashboards and visualization
- VM Monitoring — Monitor XCP-ng virtual machines
Services
- Gitea — Self-hosted Git repository service
- Semaphore UI — Visual Ansible automation interface
- PostgreSQL Databases — Database server setup and management
Support & Troubleshooting
Each major section includes: - Installation verification steps - Troubleshooting guides - Common issues and solutions - Performance optimization tips
Refer to the specific documentation section for your component if you encounter issues.