Files
homelab-optimized/docs/diagrams/storage-topology.md
Gitea Mirror Bot 68e3b2110d
Some checks failed
Documentation / Build Docusaurus (push) Failing after 4s
Documentation / Deploy to GitHub Pages (push) Has been skipped
Sanitized mirror from private repository - 2026-03-17 08:13:30 UTC
2026-03-17 08:13:30 +00:00

29 KiB

💾 Storage Topology

Overview

This document details the storage architecture across the NAS cluster, including capacity, RAID configurations, and backup flows.


📊 Storage Overview (Mermaid)

graph TB
    subgraph Concord["🏠 Concord, CA - Primary Storage"]
        subgraph Atlantis["🏛️ Atlantis (DS1823xs+)"]
            ATL_VOL1["Volume 1 (Encrypted)<br/>128TB Raw / 84TB Usable<br/>8x 16TB IronWolf Pro<br/>RAID 6 - 31TB Used (37%)"]
            ATL_VOL2["Volume 2 (NVMe)<br/>885GB - 176GB Used<br/>RAID 1"]
            ATL_CACHE["NVMe Cache<br/>4x NVMe SSDs"]
            
            ATL_DOCKER["/volume1/docker<br/>Container Data"]
            ATL_MEDIA["/volume1/media<br/>Movies, TV, Music"]
            ATL_PHOTOS["/volume2/photo<br/>Synology Photos"]
            ATL_DOCS["/volume1/documents<br/>Paperless-NGX"]
            ATL_BACKUP["/volume1/backups<br/>System Backups"]
        end
        
        subgraph Calypso["🏢 Calypso (DS723+)"]
            CAL_VOL1["Volume 1 (Encrypted)<br/>24TB Raw / 11TB Usable<br/>2x 12TB IronWolf Pro<br/>RAID 1 - 4.5TB Used (43%)"]
            CAL_CACHE["NVMe Cache<br/>2x 500GB Crucial P3 Plus<br/>RAID 1"]
            
            CAL_DOCKER["/volume1/docker<br/>Container Data"]
            CAL_DATA["/volume1/data<br/>Dev Files"]
            CAL_BACKUP["/volume1/backups<br/>Atlantis Backups"]
        end
        
        subgraph Guava["💻 Guava (TrueNAS Scale)"]
            GUA_BOOT["boot-pool<br/>500GB NVMe<br/>447GB Avail"]
            GUA_DATA["data (ZFS Mirror)<br/>2x 4TB WD Blue SSD<br/>3.62TB - 1.59TB Avail<br/>1.71x Dedup"]
            
            GUA_JELLY["/mnt/data/jellyfin<br/>145GB Media"]
            GUA_PHOTOS["/mnt/data/photos<br/>158GB Photos"]
            GUA_LLAMA["/mnt/data/llama<br/>58.7GB LLM Models"]
        end
    end

    subgraph Tucson["🌵 Tucson, AZ - Remote Storage"]
        subgraph Setillo["🏛️ Setillo (DS223j)"]
            SET_VOL1["Volume 1<br/>20TB Raw / 8.9TB Usable<br/>2x 10TB WD Gold<br/>SHR-1 - 4.0TB Used (46%)"]
            
            SET_DOCKER["/volume1/docker<br/>Container Data"]
            SET_SYNC["/volume1/syncthing<br/>Syncthing Data"]
            SET_BACKUP["/volume1/backups<br/>Remote Backups"]
            SET_PLEX["/volume1/PlexMediaServer<br/>Plex Data"]
        end
    end

    %% Backup flows
    ATL_MEDIA -->|"Hyper Backup<br/>(Weekly)"| CAL_BACKUP
    ATL_PHOTOS -->|"Hyper Backup<br/>(Daily)"| CAL_BACKUP
    ATL_DOCS -->|"Hyper Backup<br/>(Daily)"| CAL_BACKUP
    
    ATL_DOCKER -->|"Syncthing<br/>(Real-time)"| SET_SYNC
    CAL_DOCKER -->|"Syncthing<br/>(Real-time)"| SET_SYNC

    %% Cache acceleration
    ATL_CACHE -.->|"Accelerates"| ATL_VOL1
    CAL_CACHE -.->|"Accelerates"| CAL_VOL1

    classDef primary fill:#3498db,stroke:#333,stroke-width:2px,color:#fff
    classDef secondary fill:#2ecc71,stroke:#333,stroke-width:2px,color:#fff
    classDef remote fill:#9b59b6,stroke:#333,stroke-width:2px,color:#fff
    classDef cache fill:#f39c12,stroke:#333,stroke-width:2px,color:#fff
    classDef folder fill:#ecf0f1,stroke:#333,stroke-width:1px,color:#333

    class ATL_VOL1 primary
    class CAL_VOL1 secondary
    class SET_VOL1 remote
    class ATL_CACHE,CAL_CACHE cache
    class ATL_DOCKER,ATL_MEDIA,ATL_PHOTOS,ATL_DOCS,ATL_BACKUP,CAL_DOCKER,CAL_APT,CAL_BACKUP,SET_SYNC folder

📝 ASCII Storage Layout

╔══════════════════════════════════════════════════════════════════════════════════════════╗
║                           STORAGE TOPOLOGY                                                ║
║                  3 NAS Units • 152TB Raw • Cross-Location Backup                         ║
╚══════════════════════════════════════════════════════════════════════════════════════════╝


┌─────────────────────────────────────────────────────────────────────────────────────────┐
│  🏛️ ATLANTIS - Primary Storage (Concord, CA)                                            │
│  ═══════════════════════════════════════════════════════════════════════════════════════│
│                                                                                          │
│  Model: Synology DS1823xs+ (8-Bay Enterprise)                                           │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  STORAGE POOL 1                                                                  │    │
│  │  ═══════════════                                                                 │    │
│  │                                                                                  │    │
│  │  Drive Configuration:                                                            │    │
│  │  ┌──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┐                      │    │
│  │  │ Bay1 │ Bay2 │ Bay3 │ Bay4 │ Bay5 │ Bay6 │ Bay7 │ Bay8 │                      │    │
│  │  │ 16TB │ 16TB │ 16TB │ 16TB │ 16TB │ 16TB │ 16TB │ 16TB │                      │    │
│  │  │IronWf│IronWf│IronWf│IronWf│IronWf│IronWf│IronWf│IronWf│                      │    │
│  │  │ Pro  │ Pro  │ Pro  │ Pro  │ Pro  │ Pro  │ Pro  │ Pro  │                      │    │
│  │  └──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘                      │    │
│  │                                                                                  │    │
│  │  Raw Capacity:    128 TB                                                         │    │
│  │  RAID Type:       RAID 6 (2-drive fault tolerance)                               │    │
│  │  Usable:          ~96 TB                                                         │    │
│  │                                                                                  │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  NVMe CACHE (M.2 Slots)                                                          │    │
│  │  ═══════════════════════                                                         │    │
│  │  ┌──────────────────┐  ┌──────────────────┐                                     │    │
│  │  │  M.2 Slot 1      │  │  M.2 Slot 2      │                                     │    │
│  │  │  WD Black SN750  │  │  WD Black SN750  │                                     │    │
│  │  │  SE 500GB NVMe   │  │  SE 500GB NVMe   │                                     │    │
│  │  └──────────────────┘  └──────────────────┘                                     │    │
│  │  Cache Type: Read-Write    Cache Hit: ~99%                                       │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  FOLDER STRUCTURE                                                                │    │
│  │  ════════════════                                                                │    │
│  │                                                                                  │    │
│  │  /volume1/                                                                       │    │
│  │  ├── docker/           (~2 TB)    Container persistent data                     │    │
│  │  │   ├── plex/                    Plex metadata & transcodes                    │    │
│  │  │   ├── immich/                  Photo library database                        │    │
│  │  │   ├── paperless/               Document database                             │    │
│  │  │   ├── grafana/                 Dashboards & config                           │    │
│  │  │   ├── prometheus/              Metrics database                              │    │
│  │  │   └── ... (50+ services)                                                     │    │
│  │  │                                                                              │    │
│  │  ├── media/            (~60 TB)   Media library                                 │    │
│  │  │   ├── movies/                  4K & HD movies                                │    │
│  │  │   ├── tv/                      TV series                                     │    │
│  │  │   ├── music/                   Music library                                 │    │
│  │  │   └── books/                   eBooks & audiobooks                           │    │
│  │  │                                                                              │    │
│  │  ├── photos/           (~5 TB)    Immich photo library                          │    │
│  │  │   ├── library/                 Original photos                               │    │
│  │  │   ├── thumbs/                  Thumbnails                                    │    │
│  │  │   └── encoded/                 Transcoded videos                             │    │
│  │  │                                                                              │    │
│  │  ├── documents/        (~500 GB)  Paperless-NGX documents                       │    │
│  │  │   ├── consume/                 Incoming documents                            │    │
│  │  │   ├── archive/                 Processed documents                           │    │
│  │  │   └── export/                  Exported documents                            │    │
│  │  │                                                                              │    │
│  │  ├── backups/          (~10 TB)   Local backup storage                          │    │
│  │  │   ├── hyper-backup/            Synology backups                              │    │
│  │  │   ├── time-machine/            Mac backups                                   │    │
│  │  │   └── manual/                  Manual backups                                │    │
│  │  │                                                                              │    │
│  │  └── archive/          (~15 TB)   Long-term cold storage                        │    │
│  │      ├── old-projects/                                                          │    │
│  │      └── raw-footage/                                                           │    │
│  │                                                                                  │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
└─────────────────────────────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────────────────────────────┐
│  🏢 CALYPSO - Secondary Storage (Concord, CA)                                            │
│  ═══════════════════════════════════════════════════════════════════════════════════════│
│                                                                                          │
│  Model: Synology DS723+ (2-Bay Plus)                                                    │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  STORAGE POOL 1                                                                  │    │
│  │  ═══════════════                                                                 │    │
│  │  ┌──────────────────┐  ┌──────────────────┐                                     │    │
│  │  │      Bay 1       │  │      Bay 2       │                                     │    │
│  │  │  Seagate 12TB    │  │  Seagate 12TB    │                                     │    │
│  │  │  IronWolf Pro    │  │  IronWolf Pro    │                                     │    │
│  │  │  ST12000VN0008   │  │  ST12000VN0008   │                                     │    │
│  │  └──────────────────┘  └──────────────────┘                                     │    │
│  │                                                                                  │    │
│  │  Raw Capacity:    24 TB                                                          │    │
│  │  RAID Type:       SHR-1 (1-drive fault tolerance)                               │    │
│  │  Usable:          ~10.9 TB                                                       │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  NVMe CACHE                                                                      │    │
│  │  ═══════════                                                                     │    │
│  │  ┌──────────────────┐  ┌──────────────────┐                                     │    │
│  │  │  Crucial P3 Plus │  │  Crucial P3 Plus │                                     │    │
│  │  │  500GB NVMe      │  │  500GB NVMe      │                                     │    │
│  │  └──────────────────┘  └──────────────────┘                                     │    │
│  │  Cache: 465GB allocated (RAID 1)    Hit Rate: 99%                               │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  FOLDER STRUCTURE                                                                │    │
│  │  ════════════════                                                                │    │
│  │  /volume1/                                                                       │    │
│  │  ├── docker/           (~500 GB)  Container data (17 services)                  │    │
│  │  ├── apt-cache/        (~50 GB)   Debian package cache                          │    │
│  │  ├── backups/          (~8 TB)    Atlantis backup destination                   │    │
│  │  │   ├── hyper-backup/            Encrypted backups from Atlantis               │    │
│  │  │   └── active-backup/           PC/Server backups                             │    │
│  │  └── dev/              (~200 GB)  Development files                             │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
└─────────────────────────────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────────────────────────────┐
│  🌵 SETILLO - Remote Storage (Tucson, AZ)                                                │
│  ═══════════════════════════════════════════════════════════════════════════════════════│
│                                                                                          │
│  Model: Synology DS223j (2-Bay Value)                                                   │
│  CPU: ARM Cortex-A55 Quad-Core (Realtek RTD1619B)                                       │
│  RAM: 1GB DDR4                                                                          │
│  DSM: 7.3.2-86009 Update 1                                                              │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  STORAGE POOL 1                                                                  │    │
│  │  ═══════════════                                                                 │    │
│  │  ┌──────────────────┐  ┌──────────────────┐                                     │    │
│  │  │      Bay 1       │  │      Bay 2       │                                     │    │
│  │  │  WD Gold 10TB    │  │  WD Gold 10TB    │                                     │    │
│  │  │  WD102KRYZ       │  │  WD102KRYZ       │                                     │    │
│  │  │  Temp: 38-40°C   │  │  Temp: 42-45°C   │                                     │    │
│  │  └──────────────────┘  └──────────────────┘                                     │    │
│  │                                                                                  │    │
│  │  Raw Capacity:    20 TB                                                          │    │
│  │  RAID Type:       SHR-1 (1-drive fault tolerance)                               │    │
│  │  Usable:          ~8.9 TB                                                        │    │
│  │  Used:            ~4.0 TB (46%)                                                  │    │
│  │  Available:       ~4.8 TB                                                        │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
│  ┌─────────────────────────────────────────────────────────────────────────────────┐    │
│  │  FOLDER STRUCTURE                                                                │    │
│  │  ════════════════                                                                │    │
│  │  /volume1/                                                                       │    │
│  │  ├── docker/           Container data                                           │    │
│  │  ├── syncthing/        Syncthing real-time replication                          │    │
│  │  ├── backups/          Remote backup destination                                │    │
│  │  ├── PlexMediaServer/  Plex media data                                          │    │
│  │  ├── NetBackup/        Network backup storage                                   │    │
│  │  ├── surveillance/     Surveillance Station recordings                          │    │
│  │  └── homes/            User home directories                                    │    │
│  └─────────────────────────────────────────────────────────────────────────────────┘    │
│                                                                                          │
│  Installed Packages: REDACTED_APP_PASSWORD, Syncthing, Tailscale, PlexMediaServer,           │
│                      HyperBackup, SurveillanceStation, Git, WebDAVServer                │
│                                                                                          │
└─────────────────────────────────────────────────────────────────────────────────────────┘


╔════════════════════════════════════════════════════════════════════════════════════════╗
║  BACKUP STRATEGY                                                                        ║
║  ═══════════════                                                                        ║
║                                                                                         ║
║  ┌─────────────────┐      Weekly       ┌─────────────────┐                             ║
║  │    ATLANTIS     │ ───────────────► │    CALYPSO      │  (Hyper Backup, encrypted)  ║
║  │  (Primary Data) │                   │ (Local Backup)  │                             ║
║  └─────────────────┘                   └─────────────────┘                             ║
║           │                                    │                                        ║
║           │ Real-time (Syncthing)              │                                        ║
║           ▼                                    ▼                                        ║
║  ┌─────────────────────────────────────────────────────────────────────────┐           ║
║  │                        SETILLO (Tucson - Off-site)                       │           ║
║  │                    Geographic redundancy, 1000+ miles away               │           ║
║  └─────────────────────────────────────────────────────────────────────────┘           ║
║                                                                                         ║
║  3-2-1 Backup Rule:                                                                     ║
║  • 3 copies of data (Atlantis + Calypso + Setillo)                                     ║
║  • 2 different storage types (NAS + NAS w/different RAID)                              ║
║  • 1 off-site location (Tucson)                                                         ║
╚════════════════════════════════════════════════════════════════════════════════════════╝

📊 Storage Capacity Summary (Verified Feb 2025)

System Raw Capacity Usable Used RAID Drives Location
Atlantis Vol1 128 TB ~84 TB 31TB (37%) RAID 6 8x 16TB IronWolf Pro Concord
Atlantis Vol2 0.9 TB 0.9 TB 176GB (20%) RAID 1 2x NVMe Concord
Calypso 24 TB ~11 TB 4.5TB (43%) RAID 1 2x 12TB IronWolf Pro Concord
Guava 8 TB 3.6 TB 2.0TB (56%) ZFS Mirror 2x 4TB WD Blue SSD Concord
Setillo 20 TB ~8.9 TB 4.0TB (46%) SHR-1 2x 10TB WD Gold Tucson
Total ~181 TB ~108 TB ~42TB - 16 drives -