Fix path names.

This commit is contained in:
2025-10-22 13:59:31 +01:00
parent 17711da0b6
commit f414ac0146
3 changed files with 52 additions and 52 deletions

View File

@@ -146,7 +146,7 @@ fileSystems."/data/services" = {
## Migration Steps
**Important path simplification note:**
- All service paths use `/data/services/*` directly (not `/data/services/appdata/*`)
- All service paths use `/data/services/*` directly (not `/data/services/*`)
- Example: `/data/compute/appdata/mysql``/data/services/mysql`
- Simpler, cleaner, easier to manage
@@ -1024,9 +1024,9 @@ EOF
- **Priority**: CRITICAL
- **Current**: Uses `/data/compute/appdata/mysql`
- **Target**: Affinity for zippy, allow c1/c2
- **Data**: `/data/services/appdata/mysql` (NFS from zippy)
- **Data**: `/data/services/mysql` (NFS from zippy)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/mysql` → `/data/services/appdata/mysql`
- ✏️ Volume path: `/data/compute/appdata/mysql` → `/data/services/mysql`
- ✏️ Add affinity:
```hcl
affinity {
@@ -1050,9 +1050,9 @@ EOF
- **Priority**: CRITICAL
- **Current**: Uses `/data/compute/appdata/postgres`, `/data/compute/appdata/pgadmin`
- **Target**: Affinity for zippy, allow c1/c2
- **Data**: `/data/services/appdata/postgres`, `/data/services/appdata/pgadmin` (NFS)
- **Data**: `/data/services/postgres`, `/data/services/pgadmin` (NFS)
- **Changes**:
- ✏️ Volume paths: `/data/compute/appdata/*` → `/data/services/appdata/*`
- ✏️ Volume paths: `/data/compute/appdata/*` → `/data/services/*`
- ✏️ Add affinity and constraint (same as mysql)
- **Notes**: Core database for authentik, gitea, plausible, netbox, etc.
@@ -1061,9 +1061,9 @@ EOF
- **Priority**: CRITICAL
- **Current**: Uses `/data/compute/appdata/redis`
- **Target**: Affinity for zippy, allow c1/c2
- **Data**: `/data/services/appdata/redis` (NFS)
- **Data**: `/data/services/redis` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/redis` → `/data/services/appdata/redis`
- ✏️ Volume path: `/data/compute/appdata/redis` → `/data/services/redis`
- ✏️ Add affinity and constraint (same as mysql)
- **Notes**: Used by authentik, wordpress. Should co-locate with databases.
@@ -1093,9 +1093,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/prometheus`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/prometheus` (NFS)
- **Data**: `/data/services/prometheus` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/prometheus` → `/data/services/appdata/prometheus`
- ✏️ Volume path: `/data/compute/appdata/prometheus` → `/data/services/prometheus`
- **Notes**: Metrics database. Important for monitoring but not critical for services.
#### grafana
@@ -1103,9 +1103,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/grafana`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/grafana` (NFS)
- **Data**: `/data/services/grafana` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/grafana` → `/data/services/appdata/grafana`
- ✏️ Volume path: `/data/compute/appdata/grafana` → `/data/services/grafana`
- **Notes**: Monitoring UI. Depends on prometheus.
#### loki
@@ -1113,9 +1113,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/loki`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/loki` (NFS)
- **Data**: `/data/services/loki` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/loki` → `/data/services/appdata/loki`
- ✏️ Volume path: `/data/compute/appdata/loki` → `/data/services/loki`
- **Notes**: Log aggregation. Important for debugging.
#### vector
@@ -1136,9 +1136,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/clickhouse`
- **Target**: Affinity for zippy (large dataset), allow c1/c2/c3
- **Data**: `/data/services/appdata/clickhouse` (NFS)
- **Data**: `/data/services/clickhouse` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/clickhouse` → `/data/services/appdata/clickhouse`
- ✏️ Volume path: `/data/compute/appdata/clickhouse` → `/data/services/clickhouse`
- ✏️ Add affinity for zippy (optional, but helps with performance)
- **Notes**: Used by plausible. Large time-series data. Important but can be recreated.
@@ -1147,7 +1147,7 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/unifi/mongodb`
- **Target**: Float on c1/c2/c3 (with unifi)
- **Data**: `/data/services/appdata/unifi/mongodb` (NFS)
- **Data**: `/data/services/unifi/mongodb` (NFS)
- **Changes**: See unifi below
- **Notes**: Only used by unifi. Should stay with unifi controller.
@@ -1158,9 +1158,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/sync/wordpress` (syncthing-managed to avoid slow GlusterFS)
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/wordpress` (NFS from zippy)
- **Data**: `/data/services/wordpress` (NFS from zippy)
- **Changes**:
- ✏️ Volume path: `/data/sync/wordpress` → `/data/services/appdata/wordpress`
- ✏️ Volume path: `/data/sync/wordpress` → `/data/services/wordpress`
- 📋 **Before cutover**: Copy data from syncthing to zippy: `rsync -av /data/sync/wordpress/ zippy:/persist/services/appdata/wordpress/`
- 📋 **After migration**: Remove syncthing configuration for wordpress sync
- **Notes**: Production website. Important but can tolerate brief downtime during migration.
@@ -1170,9 +1170,9 @@ EOF
- **Priority**: no longer used, should wipe
- **Current**: Uses `/data/compute/appdata/ghost`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/ghost` (NFS)
- **Data**: `/data/services/ghost` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/ghost` → `/data/services/appdata/ghost`
- ✏️ Volume path: `/data/compute/appdata/ghost` → `/data/services/ghost`
- **Notes**: Blog platform (alo.land). Can tolerate downtime.
#### gitea
@@ -1180,9 +1180,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/gitea/data`, `/data/compute/appdata/gitea/config`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/gitea/*` (NFS)
- **Data**: `/data/services/gitea/*` (NFS)
- **Changes**:
- ✏️ Volume paths: `/data/compute/appdata/gitea/*` → `/data/services/appdata/gitea/*`
- ✏️ Volume paths: `/data/compute/appdata/gitea/*` → `/data/services/gitea/*`
- **Notes**: Git server. Contains code repositories. Important.
#### wiki (tiddlywiki)
@@ -1190,7 +1190,7 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/wiki` via host volume mount
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/wiki` (NFS)
- **Data**: `/data/services/wiki` (NFS)
- **Changes**:
- ✏️ Volume mount path in `volume_mount` blocks
- ⚠️ Uses `exec` driver with host volumes - verify NFS mount works with this
@@ -1201,9 +1201,9 @@ EOF
- **Priority**: LOW
- **Current**: Uses `/data/compute/appdata/code`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/code` (NFS)
- **Data**: `/data/services/code` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/code` → `/data/services/appdata/code`
- ✏️ Volume path: `/data/compute/appdata/code` → `/data/services/code`
- **Notes**: Web IDE. Low priority, for development only.
#### beancount (fava)
@@ -1211,9 +1211,9 @@ EOF
- **Priority**: MEDIUM
- **Current**: Uses `/data/compute/appdata/beancount`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/beancount` (NFS)
- **Data**: `/data/services/beancount` (NFS)
- **Changes**:
- ✏️ Volume path: `/data/compute/appdata/beancount` → `/data/services/appdata/beancount`
- ✏️ Volume path: `/data/compute/appdata/beancount` → `/data/services/beancount`
- **Notes**: Finance tracking. Low priority.
#### adminer
@@ -1239,9 +1239,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/evcc/evcc.yaml`, `/data/compute/appdata/evcc/evcc`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/evcc/*` (NFS)
- **Data**: `/data/services/evcc/*` (NFS)
- **Changes**:
- ✏️ Volume paths: `/data/compute/appdata/evcc/*` → `/data/services/appdata/evcc/*`
- ✏️ Volume paths: `/data/compute/appdata/evcc/*` → `/data/services/evcc/*`
- **Notes**: EV charging controller. Important for daily use.
#### vikunja
@@ -1249,9 +1249,9 @@ EOF
- **Priority**: no longer used, should delete
- **Current**: Likely uses `/data/compute/appdata/vikunja`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/vikunja` (NFS)
- **Data**: `/data/services/vikunja` (NFS)
- **Changes**:
- ✏️ Volume paths: Update to `/data/services/appdata/vikunja`
- ✏️ Volume paths: Update to `/data/services/vikunja`
- **Notes**: Task management. Low priority.
#### leantime
@@ -1259,9 +1259,9 @@ EOF
- **Priority**: no longer used, should delete
- **Current**: Likely uses `/data/compute/appdata/leantime`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/leantime` (NFS)
- **Data**: `/data/services/leantime` (NFS)
- **Changes**:
- ✏️ Volume paths: Update to `/data/services/appdata/leantime`
- ✏️ Volume paths: Update to `/data/services/leantime`
- **Notes**: Project management. Low priority.
### Network Infrastructure
@@ -1271,9 +1271,9 @@ EOF
- **Priority**: HIGH
- **Current**: Uses `/data/compute/appdata/unifi/data`, `/data/compute/appdata/unifi/mongodb`
- **Target**: Float on c1/c2/c3/fractal/zippy
- **Data**: `/data/services/appdata/unifi/*` (NFS)
- **Data**: `/data/services/unifi/*` (NFS)
- **Changes**:
- ✏️ Volume paths: `/data/compute/appdata/unifi/*` → `/data/services/appdata/unifi/*`
- ✏️ Volume paths: `/data/compute/appdata/unifi/*` → `/data/services/unifi/*`
- **Notes**: UniFi network controller. Critical for network management. Has keepalived VIP for stable inform address. Floating is fine.
### Media Stack
@@ -1284,10 +1284,10 @@ EOF
- **Current**: Uses `/data/compute/appdata/radarr`, `/data/compute/appdata/sonarr`, etc. and `/data/media`
- **Target**: **MUST run on fractal** (local /data/media access)
- **Data**:
- `/data/services/appdata/radarr` (NFS) - config data
- `/data/services/radarr` (NFS) - config data
- `/data/media` (local CIFS mount on fractal, local disk on fractal)
- **Changes**:
- ✏️ Volume paths: `/data/compute/appdata/*` → `/data/services/appdata/*`
- ✏️ Volume paths: `/data/compute/appdata/*` → `/data/services/*`
- ✏️ **Add constraint**:
```hcl
constraint {
@@ -1304,9 +1304,9 @@ EOF
- **Priority**: HIGH
- **Current**: Likely uses `/data/compute/appdata/weewx`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/weewx` (NFS)
- **Data**: `/data/services/weewx` (NFS)
- **Changes**:
- ✏️ Volume paths: Update to `/data/services/appdata/weewx`
- ✏️ Volume paths: Update to `/data/services/weewx`
- **Notes**: Weather station. Low priority.
#### maps
@@ -1314,7 +1314,7 @@ EOF
- **Priority**: MEDIUM
- **Current**: Likely uses `/data/compute/appdata/maps`
- **Target**: Float on c1/c2/c3 (or fractal if large tile data)
- **Data**: `/data/services/appdata/maps` (NFS) or `/data/media/maps` if large
- **Data**: `/data/services/maps` (NFS) or `/data/media/maps` if large
- **Changes**:
- ✏️ Volume paths: Check data size, may want to move to /data/media
- **Notes**: Map tiles. Low priority.
@@ -1324,9 +1324,9 @@ EOF
- **Priority**: LOW
- **Current**: Likely uses `/data/compute/appdata/netbox`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/netbox` (NFS)
- **Data**: `/data/services/netbox` (NFS)
- **Changes**:
- ✏️ Volume paths: Update to `/data/services/appdata/netbox`
- ✏️ Volume paths: Update to `/data/services/netbox`
- **Notes**: IPAM/DCIM. Low priority, for documentation.
#### farmos
@@ -1334,9 +1334,9 @@ EOF
- **Priority**: LOW
- **Current**: Likely uses `/data/compute/appdata/farmos`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/farmos` (NFS)
- **Data**: `/data/services/farmos` (NFS)
- **Changes**:
- ✏️ Volume paths: Update to `/data/services/appdata/farmos`
- ✏️ Volume paths: Update to `/data/services/farmos`
- **Notes**: Farm management. Low priority.
#### urbit
@@ -1344,9 +1344,9 @@ EOF
- **Priority**: LOW
- **Current**: Likely uses `/data/compute/appdata/urbit`
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/urbit` (NFS)
- **Data**: `/data/services/urbit` (NFS)
- **Changes**:
- ✏️ Volume paths: Update to `/data/services/appdata/urbit`
- ✏️ Volume paths: Update to `/data/services/urbit`
- **Notes**: Urbit node. Experimental, low priority.
#### webodm
@@ -1354,9 +1354,9 @@ EOF
- **Priority**: LOW
- **Current**: Likely uses `/data/compute/appdata/webodm`
- **Target**: Float on c1/c2/c3 (or fractal if processing large imagery from /data/media)
- **Data**: `/data/services/appdata/webodm` (NFS)
- **Data**: `/data/services/webodm` (NFS)
- **Changes**:
- ✏️ Volume paths: Update to `/data/services/appdata/webodm`
- ✏️ Volume paths: Update to `/data/services/webodm`
- 🤔 May benefit from running on fractal if it processes files from /data/media
- **Notes**: Drone imagery processing. Low priority.
@@ -1411,7 +1411,7 @@ EOF
- **Priority**: MEDIUM
- **Current**: Likely same as wiki.hcl
- **Target**: Float on c1/c2/c3
- **Data**: `/data/services/appdata/tiddlywiki` (NFS)
- **Data**: `/data/services/tiddlywiki` (NFS)
- **Changes**: Same as wiki.hcl
- **Notes**: May be duplicate of wiki.hcl.
@@ -1660,7 +1660,7 @@ nomad alloc status <alloc-id>
1. ✅ **Where is `/data/sync/wordpress` mounted from?**
- **Answer**: Syncthing-managed to avoid slow GlusterFS
- **Action**: Migrate to `/data/services/appdata/wordpress`, remove syncthing config
- **Action**: Migrate to `/data/services/wordpress`, remove syncthing config
2. ✅ **Which services use `/data/media` directly?**
- **Answer**: Only media.hcl (radarr, sonarr, plex, qbittorrent)