rename appdata-Failover→appdata-Fallback in docs; critical sync 15→30min; transcode 3→7min

appdata-Failover → appdata-Fallback:
  All .md files updated — scripts and confs already used appdata-Fallback.
  Share was renamed; docs were the only stale references.

critical_sync_maintenance.sh: */15 → */30, 96/day → 48/day:
  critical_sync_maintenance.sh header, master.conf, host1/2.conf comments,
  Orchestrators README, User Script Plug-in README, Partnership README/manual/script,
  Docker_Essentials README/downloaders_reset.sh, Fallback README,
  weekly_sync_maintenance.sh, user_script_plug-in.sh all updated.

rsync_emby_failover User Script superseded:
  Emby dirty sync was already in HOST1_CRITICAL_SYNC_SHARES — it now runs inside
  critical_sync_maintenance.sh every 30min alongside auth sync and partnership check.
  Section in User Script Plug-in README marked for deletion from plugin.

transcode_management.sh: */3 → */7:
  transcode_management.sh, transcode_manager.sh, transcode_cleanup.sh headers,
  Transcodes README/manual, Orchestrators README, User Script Plug-in README,
  user_script_plug-in.sh all updated.
This commit is contained in:
Gmer4Lfe
2026-05-22 22:22:21 -04:00
parent 2d0c91ea13
commit ee086f309e
22 changed files with 129 additions and 156 deletions
+22 -49
View File
@@ -127,7 +127,7 @@ the array stops. Check with: `pgrep -f "stability_watchdog\|docker_watchdog\|fai
```
Category: Orchestrators
Name: transcode_management
Schedule: */3 * * * * (every 3 minutes)
Schedule: */7 * * * * (every 7 minutes)
Background: YES
```
@@ -138,7 +138,7 @@ Background: YES
**What it does:**
Runs transcode_cleanup.sh then transcode_manager.sh — in that exact order every
3 minutes. Order is non-negotiable: cleanup removes stale files first so the manager
7 minutes. Order is non-negotiable: cleanup removes stale files first so the manager
sees real active session usage, not inflated numbers from ended sessions.
**transcode_cleanup.sh:**
@@ -167,7 +167,7 @@ auto-flip to SSD, missing transcoding-temp → recreate immediately.
```
Category: Orchestrators
Name: critical_sync_maintenance
Schedule: */15 * * * * (every 15 minutes)
Schedule: */30 * * * * (every 30 minutes)
Background: YES
```
@@ -177,13 +177,13 @@ Background: YES
```
**What it does:**
Keeps the auth stack and Emby watch state current on HOST2 — 15 minutes is the
maximum staleness for failover-critical data.
Keeps the auth stack and Emby watch state current on HOST2 — 30 minutes is the
maximum staleness for fallback-critical data.
**Jobs in order:**
```
rsync Critical-Data — pushes auth stack to HOST2 (NPM rules, certs, LLDAP users,
Authelia config). HOST2's auth is always within 15min of HOST1.
Authelia config). HOST2's auth is always within 30min of HOST1.
rsync Emby dirty sync — pushes watch states, user activity, library delta to HOST2
with Emby running. WAL files excluded — safe mid-write.
HOST2 Emby restarts after sync to pick up config changes.
@@ -191,7 +191,7 @@ partnership --check — reads remote state file, increments offline counter
unreachable, triggers auto-offboard at PARTNERSHIP_OFFLINE_THRESHOLD
```
**Silent when healthy:** no output on clean cycles — runs 96 times per day.
**Silent when healthy:** no output on clean cycles — runs 48 times per day.
---
@@ -286,35 +286,14 @@ in one orchestrated sequence.
### ── rsync_emby_failover ─────────────────────────────────────────────────────
```
Category: Orchestrators
Name: rsync_emby_failover
Schedule: */30 * * * * (every 30 minutes)
Background: YES
```
> **Superseded by `critical_sync_maintenance`.** Delete this User Script from the
> plugin. The emby-fallback dirty sync now runs as step 2 inside
> `critical_sync_maintenance.sh` every 30 minutes alongside the auth stack sync
> and partnership check. Running both produces duplicate syncs.
```bash
#!/bin/bash
/mnt/user/appdata/unraid_scripts/Rsync/rsync.sh \
/mnt/user/Media_Server/Emby --profile=emby-fallback
```
**What it does:**
Keeps HOST2's Emby within 30 minutes of HOST1 on watch states, play positions, and
library changes — with Emby running on both sides. Not a full sync (that's weekly) —
this is continuous coverage of what matters for failover.
**What syncs (emby-fallback profile):**
```
Syncs: users.db, library.db, authentication.db, config/
Skips: *.wal *.shm — WAL files being written by Emby, unsafe to copy mid-write
transcodes/ — volatile, never needed on HOST2
logs/ — local diagnostics only
cache/ — rebuilt automatically
```
**HOST2 Emby restarts after each sync** to pick up config changes.
**Result:** if HOST1 goes down, users resume from a position at most 30min stale.
The Emby dirty sync (`/mnt/user/Media_Server/Emby --profile=emby-fallback`) is
configured in `HOST1_CRITICAL_SYNC_SHARES` in host1.conf. It runs automatically
when critical_sync_maintenance.sh runs.
---
@@ -346,7 +325,7 @@ updates at zero extra downtime, weekly container restarts.
5. Pull images remotely — if WEEKLY_SYNC_UPDATES_REMOTE=true (SSH to remote)
6. rsync WEEKLY_SYNC_SHARES:
/mnt/user/Media_Server/Emby — full clean mirror, databases checkpointed
/mnt/user/appdata-Failover/Critical-Data — auth stack clean state
/mnt/user/appdata-Fallback/Critical-Data — auth stack clean state
7. Start remote containers— dependency order, new image, settle + verify each
8. Start local containers — same
9. docker_weekly_restart.sh — restarts less-critical services that benefit from
@@ -774,7 +753,7 @@ Background: YES
```bash
#!/bin/bash
/mnt/user/appdata/unraid_scripts/Rsync/rsync.sh \
/mnt/user/appdata-Failover/Critical-Data
/mnt/user/appdata-Fallback/Critical-Data
```
**What syncs:** auth stack — NPM proxy rules, TLS certificates, LLDAP user data,
@@ -816,7 +795,7 @@ Background: YES
```bash
#!/bin/bash
/mnt/user/appdata/unraid_scripts/Rsync/rsync.sh \
/mnt/user/appdata-Failover/Arrs_Stack
/mnt/user/appdata-Fallback/Arrs_Stack
```
**What syncs:** all arr appdata — Sonarr, Radarr, Lidarr, Prowlarr, Bazarr, Pinchflat
@@ -837,7 +816,7 @@ Background: YES
```bash
#!/bin/bash
/mnt/user/appdata/unraid_scripts/Rsync/rsync.sh \
/mnt/user/appdata-Failover/Important-Data
/mnt/user/appdata-Fallback/Important-Data
```
**What syncs:** NextCloud, Postgres-NextCloud, Immich, PostgreSQL-Immich appdata.
@@ -857,7 +836,7 @@ Background: YES
```bash
#!/bin/bash
/mnt/user/appdata/unraid_scripts/Rsync/rsync.sh \
/mnt/user/appdata-Failover/Gmer4Lfe
/mnt/user/appdata-Fallback/Gmer4Lfe
```
**What syncs:** HOST1 server appdata backup — everything in the Gmer4Lfe appdata share.
@@ -1175,7 +1154,7 @@ Current usage on both ramdisk and SSD.
```
Category: Transcodes
Name: transcode_manager_manual
Schedule: None — run manually (runs via transcode_management.sh every 3 min)
Schedule: None — run manually (runs via transcode_management.sh every 7 min)
Background: NO
```
@@ -1641,17 +1620,11 @@ Wrong startup setup (old approach):
At Startup of Array:
array_start BG: YES — single entry, handles everything
*/3 * * * * (every 3 min):
*/7 * * * * (every 7 min):
transcode_management BG: YES — cleanup then manager
*/10 * * * * (every 10 min):
webgui_watchdog BG: YES — silent when healthy
*/15 * * * * (every 15 min):
critical_sync_maintenance BG: YES — auth stack + Emby dirty + partnership check
*/30 * * * * (every 30 min):
rsync_emby_failover BG: YES — Emby watch state sync
critical_sync_maintenance BG: YES — auth stack + Emby dirty sync + partnership
0 */6 * * * (every 6 hours):
arrs_failed_stalled_recovery BG: YES — blocklist + re-search failed imports