OpenMediaVault(OMV)
💡 快速導航
什麼是 OMV?
OpenMediaVault(OMV) 是基於 Debian 的開源 NAS / 伺服器管理系統。
在這個 Home Lab 裡,OMV 不只是檔案伺服器,更是:
- 應用服務運行層(Docker Host)
- TrueNAS 的備援備份落地點
🎯 使用 OMV 的兩個主要目的
1) 做為 TrueNAS 的備援備份端
- 使用 1 顆 14TB HDD 作為備份盤
- 每天凌晨自動備份 TrueNAS 的 Data(包含 SATA SSD 上的資料)
- 目標是讓 TrueNAS 即使遇到人為誤刪、服務故障或硬體問題,也有獨立副本可回復
2) 做為 Docker 服務主機
- OMV 跑各種服務的 Docker containers
- 服務資料(data)統一透過 TrueNAS 的 NFS 掛載到 OMV 使用
- 將「儲存(TrueNAS)」與「應用(OMV)」拆開
- 避免單點故障同時打掛資料與服務,維運也更彈性
主機資訊
- Host:
omv - 管理方式:OMV + Docker Compose
- 對外分享版本不揭露內網 IP(以架構與實務經驗為主)
⚙️ 硬體與儲存配置
| 項目 | 配置 | 說明 |
|---|---|---|
| 系統碟(Boot) | 1 x 256GB M.2 NVMe SSD | 安裝 OMV 系統 |
| 備份資料碟 | 1 x 14TB HDD | 存放每日從 TrueNAS 同步過來的備份 |
| 角色定位 | Compute + Backup | Docker 運行 + 備份落地 |
📝 註:目前系統碟為單碟(非 mirror)。若未來要提升系統層容錯,可評估升級為 Boot mirror。
🧱 架構分工(為什麼要 TrueNAS + OMV 分離)
| 層級 | 平台 | 主要職責 |
|---|---|---|
| Storage Layer | TrueNAS | 主資料池、ZFS 容錯與資料完整性 |
| App Layer | OMV + Docker | 應用部署、服務編排、反代入口 |
| Backup Layer | OMV 14TB HDD | 每日接收 TrueNAS 備份 |
分離式架構的好處
- 故障隔離:儲存與服務故障彼此不直接牽連
- 維運彈性:升級服務時不影響主儲存架構
- 回復更快:可從 OMV 備份端快速恢復資料
🔁 備份策略(OMV 作為 TrueNAS 的備援端)
- 來源:TrueNAS Data(含 SATA SSD 相關資料)
- 目的地:OMV
14TB HDD - 頻率:每日凌晨(建議固定 00:00~03:00 視負載)
- 方式:建議 rsync / snapshot-based(待補實際任務設定)
- 保留策略:待補(例如 7 daily + 4 weekly + 3 monthly)
備份設計原則
- 備份資料與主資料分離(不同主機 / 不同磁碟)
- 可驗證(定期抽查 restore)
- 可追溯(保留歷史版本,不只覆蓋)
🐳 Docker 服務層(OMV)
- OMV 負責運行多個容器化服務(App 層)
- 服務資料(data)統一走 TrueNAS NFS 掛載,OMV 主要作為運算與容器編排節點
儲存實務(目前架構)
- 容器 data 與 config 都集中放在 TrueNAS dataset
- OMV 透過 NFS 掛載後,提供給 Docker 容器使用
- 這種做法讓應用主機(OMV)與儲存主機(TrueNAS)職責明確、遷移與維運更彈性
服務分類(目前規劃)
- 基礎設施:Nginx Proxy Manager
- 家庭/IoT:Home Assistant、TeslaMate
- 媒體:Plex、Calibre
- 生產力:Nextcloud、Bitwarden
- 相片:Immich
- 其他:Karakeep
網路規範(建議)
proxy:需要反向代理的服務internal:內部服務互通
維運 SOP(建議)
- 更新前:備份 config + DB
- 更新流程:pull → recreate → health check
- 回滾策略:保留前一版 image tag + volume snapshot
維運待辦
- 補上實際備份排程(cron / 腳本路徑)
- 補上還原演練紀錄(restore drill)
- 補上監控告警(磁碟健康、備份成功率、容器健康)