--- # HomeAudit Infrastructure Migration Summary # Generated: 2025-08-24 # Comprehensive analysis of 7 devices for migration planning infrastructure: devices: omv800.local: role: "primary_storage_media_server" os: "Debian GNU/Linux 12 (bookworm)" kernel: "6.12.38+deb12-amd64" architecture: "x86_64" cpu: model: "Intel Core i5-6400 @ 2.70GHz" cores: 4 threads: 4 max_freq: "3300.0000 MHz" min_freq: "800.0000 MHz" memory: "32GB (31Gi available)" storage: total_capacity: "~20.8TB" drives: - device: "sda" size: "3.6T" filesystem: "xfs" mount: "/srv/dev-disk-by-uuid-3155f69a-52f3-4a27-8f95-493850a5a8cd" - device: "sdb" size: "476.9G" type: "system_drive" partitions: - "512M vfat /boot/efi" - "464.3G ext4 /" - "976M swap" - device: "sdc" size: "238.5G" filesystem: "ext4" mount: "/srv/dev-disk-by-uuid-0f772f0b-917d-4337-a3c5-5cc5d3badac9" - device: "sdd" size: "1.9T" filesystem: "ext4" mount: "/srv/dev-disk-by-uuid-97cb939b-5af7-4dc1-8190-072eafb37d41" - device: "sde" size: "14.6T" filesystem: "ext4" mount: "/srv/dev-disk-by-uuid-5c3ca805-b67d-4cdb-af3d-926c0e16917c" critical_data_paths: - "/srv/mergerfs/DataPool" - "/srv/mergerfs/presscloud" migration_complexity: "high" migration_priority: 1 jonathan-2518f5u: role: "home_automation_hub" os: "Ubuntu 24.04.3 LTS (Noble Numbat)" architecture: "x86_64" migration_complexity: "high" migration_priority: 2 # Additional hardware details would be gathered similarly fedora: role: "development_workstation" os: "Fedora Linux 42 (Workstation Edition)" architecture: "x86_64" migration_complexity: "medium" migration_priority: 4 lenovo420: role: "auxiliary_services" os: "Ubuntu 24.04.3 LTS" architecture: "x86_64" migration_complexity: "medium" migration_priority: 5 surface: role: "appflowy_development" os: "Ubuntu 24.04.3 LTS" architecture: "x86_64" migration_complexity: "medium" migration_priority: 6 audrey: role: "monitoring_utilities" os: "Ubuntu 24.04.3 LTS" architecture: "x86_64" migration_complexity: "low" migration_priority: 7 raspberrypi: role: "minimal_services" os: "Debian GNU/Linux 12 (bookworm)" kernel: "6.12.34+rpt-rpi-v8" architecture: "aarch64" migration_complexity: "low" migration_priority: 8 # Service Categories by Business Criticality service_categories: critical_infrastructure: description: "Essential network and storage services" priority: 1 services: - name: "AdGuard Home" host: "omv800.local" function: "DNS filtering and blocking" ports: ["53/tcp", "53/udp", "3000/tcp"] data_persistence: ["config"] - name: "Unbound" host: "omv800.local" function: "Recursive DNS resolver" ports: ["5335/tcp"] data_persistence: ["config"] media_entertainment: description: "Media streaming and entertainment services" priority: 2 services: - name: "Jellyfin" host: "omv800.local" function: "Media server" image: "jellyfin/jellyfin:latest" ports: ["8096/tcp"] volumes: - "jellyfin-config:/config" - "jellyfin-cache:/cache" bind_mounts: - "/srv/mergerfs/DataPool/Movies:/media/movies" - "/srv/mergerfs/DataPool/tv_shows:/media/tv_shows" health_check: "curl --noproxy 'localhost' -Lk -fsS http://localhost:8096/health" restart_policy: "unless-stopped" migration_notes: "Large media files require careful bandwidth planning" productivity_collaboration: description: "File sharing and productivity applications" priority: 3 services: - name: "Nextcloud" host: "omv800.local" function: "Cloud storage and collaboration" image: "nextcloud:latest" ports: ["8080/tcp"] bind_mounts: - "/srv/mergerfs/DataPool/nextcloud/data:/var/www/html" - "/srv/mergerfs/DataPool/nextcloud/config:/var/www/html/config" - "/srv/mergerfs/DataPool/nextcloud/custom_apps:/var/www/html/custom_apps" - "/srv/mergerfs/DataPool/nextcloud/themes:/var/www/html/themes" network: "nextcloud_nextcloud-internal" depends_on: - "nextcloud-db" - "nextcloud-redis" environment: - "REDIS_HOST=nextcloud-redis" - "MYSQL_HOST=nextcloud-db" - "NEXTCLOUD_TRUSTED_DOMAINS=localhost,nextcloud.local,192.168.50.66,100.98.144.95" migration_complexity: "high" migration_notes: "Database dependency requires coordinated migration" - name: "Nextcloud Database" host: "omv800.local" function: "MySQL database for Nextcloud" container: "nextcloud-db" volumes: ["database volume with critical user data"] - name: "Gitea" host: "omv800.local" function: "Git repository hosting" migration_complexity: "medium" photo_management: description: "Photo storage and AI processing" priority: 3 services: - name: "Immich" host: "omv800.local" function: "Photo management with AI" components: - "immich_postgres" - "immich_redis" - "immich_machine_learning" migration_complexity: "high" migration_notes: "ML models and PostgreSQL data require special handling" home_automation: description: "Home automation and IoT management" priority: 2 services: - name: "Home Assistant" host: "jonathan-2518f5u" function: "Home automation hub" migration_complexity: "high" migration_notes: "Critical for home automation, requires device access" - name: "ESPHome" host: "jonathan-2518f5u" function: "ESP device management" - name: "Mosquitto" host: "jonathan-2518f5u" function: "MQTT broker" - name: "Z-Wave JS UI" host: "jonathan-2518f5u" function: "Z-Wave device management" document_management: description: "Document processing and workflow" priority: 4 services: - name: "Paperless-NGX" hosts: ["omv800.local", "jonathan-2518f5u"] function: "Document management system" components: - "paperless-ngx_webserver_1" - "paperless-ngx_broker_1" - "paperless-db-1" migration_complexity: "medium" development_tools: description: "Development and testing environment" priority: 5 services: - name: "AppFlowy Cloud" host: "surface" function: "Collaborative workspace" components: - "appflowy-cloud-appflowy_cloud-1" - "appflowy-cloud-postgres-1" - "appflowy-cloud-redis-1" - "appflowy-cloud-minio-1" - "appflowy-cloud-nginx-1" - "appflowy-cloud-gotrue-1" - "appflowy-cloud-appflowy_worker-1" - "appflowy-cloud-admin_frontend-1" - "appflowy-cloud-appflowy_web-1" migration_complexity: "high" monitoring_management: description: "System monitoring and management" priority: 6 services: - name: "Portainer Agent" hosts: ["multiple"] function: "Docker container management" migration_complexity: "low" - name: "Watchtower" hosts: ["multiple"] function: "Automatic container updates" migration_complexity: "low" - name: "Uptime Kuma" host: "audrey" function: "Uptime monitoring" migration_complexity: "low" # Data Storage Analysis data_storage: critical_volumes: nextcloud_data: path: "/srv/mergerfs/DataPool/nextcloud" estimated_size: "large" contains: "user files, database, configurations" backup_required: true jellyfin_media: paths: - "/srv/mergerfs/DataPool/Movies" - "/srv/mergerfs/DataPool/tv_shows" estimated_size: "very_large" contains: "media files" backup_required: false migration_method: "sync_transfer" immich_photos: path: "/srv/mergerfs/DataPool/immich" estimated_size: "large" contains: "photos, ML models, metadata" backup_required: true home_assistant_config: path: "/config" estimated_size: "small" contains: "automation configurations, device states" backup_required: true criticality: "very_high" docker_volumes: persistent_volumes: - "jellyfin-config" - "jellyfin-cache" - "nextcloud-db-data" - "immich-postgres-data" - "gitea-data" mount_points: mergerfs_pools: - path: "/srv/mergerfs/DataPool" devices: ["multiple large drives"] function: "unified storage pool" migration_complexity: "high" # Migration Strategy Matrix migration_matrix: phase_1_critical: duration: "1-2 days" services: - "AdGuard Home" - "Unbound" - "Home Assistant" validation: - "DNS resolution functional" - "Home automation responsive" - "Network services accessible" rollback_plan: "Keep original services running until validation complete" phase_2_media: duration: "3-5 days" services: - "Jellyfin" - "Nextcloud" considerations: - "Large data transfer requirements" - "Bandwidth limitations during business hours" - "User notification required" validation: - "Media streaming functional" - "File sync operational" - "Database integrity verified" phase_3_productivity: duration: "2-3 days" services: - "Immich" - "Gitea" - "Paperless-NGX" validation: - "Photo AI processing functional" - "Git repositories accessible" - "Document processing operational" phase_4_development: duration: "1-2 days" services: - "AppFlowy Cloud" - "Development containers" validation: - "Development environment accessible" - "Collaborative features functional" phase_5_monitoring: duration: "1 day" services: - "Portainer" - "Watchtower" - "Uptime Kuma" validation: - "Container management operational" - "Monitoring dashboards accessible" # Technical Migration Requirements migration_requirements: network: bandwidth_needed: "1Gbps minimum for data transfer" downtime_tolerance: "2-4 hours for critical services" dns_changes: "Required for service discovery" storage: backup_space_required: "50% of total data" transfer_methods: - "rsync for incremental sync" - "docker volume backup/restore" - "database dumps and imports" dependencies: service_interdependencies: - "nextcloud -> nextcloud-db + nextcloud-redis" - "immich -> immich_postgres + immich_redis + immich_machine_learning" - "paperless -> paperless-db + paperless-broker" - "appflowy -> postgres + redis + minio" validation_checkpoints: automated_tests: - "container health checks" - "port accessibility tests" - "database connection tests" - "volume mount verification" manual_tests: - "user interface accessibility" - "data integrity verification" - "performance baseline comparison" # Resource Allocation Planning resource_planning: target_infrastructure: recommended_specs: cpu: "8+ cores for containerized workload" memory: "32GB+ for databases and media processing" storage: "NVMe for databases, bulk storage for media" network: "Gigabit ethernet minimum" container_resource_requirements: high_resource: - "Immich ML processing" - "Nextcloud with large user base" - "Home Assistant with many integrations" medium_resource: - "Jellyfin media serving" - "Database containers" low_resource: - "Monitoring containers" - "Proxy containers"