Fix path names.
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -69,7 +69,7 @@ See [CLUSTER_REVAMP.md](./CLUSTER_REVAMP.md) for detailed procedures.
|
||||
- [ ] unifi.hcl - update paths (includes mongodb)
|
||||
|
||||
### Web Applications (HIGH-MEDIUM)
|
||||
- [ ] wordpress.hcl - update from `/data/sync/wordpress` to `/data/services/appdata/wordpress`
|
||||
- [ ] wordpress.hcl - update from `/data/sync/wordpress` to `/data/services/wordpress`
|
||||
- [ ] gitea.hcl - update paths
|
||||
- [ ] wiki.hcl - update paths, verify with exec driver
|
||||
- [ ] plausible.hcl - verify (stateless)
|
||||
|
||||
Reference in New Issue
Block a user