Paperless-Ngx応用 バックアップとリカバリ#1

paperless-ngx Paperless-ngx
paperless-ngx

前回までのあらすじ

Paperless-Ngxの章では以下を扱っています。

Evernoteを文書保管で利用していましたが、無料版の制限が厳しくなりました。そこで代替となるPaperless-NgxをOpenmediaVault上にインストールして利用してみる、というお話です。Paperless-NGXが使えることまでは前の章まででわかりましたので、次にバックアップとリカバリに関して記載します。

バックアップの必要性

Evernoteなどサービス運営側が維持しているインフラと異なり、今回説明しているOpenMediVault上のPaperless-Ngxは自身で構築しているサーバ上で運営されているものなので(Raspberrypiで運用)、自身での障害対策が必要です。以下2点を対応していく必要がある認識です

必要性
  • 誤削除などからの復旧(論理削除対策)
  • ディスク障害など物理的故障からの復旧(物理削除対策)

バックアップの種類

用途に応じて2種類がありますが、冗長性確保の観点から、私は両方とも実装しています。物理削除だけ対策できていれば最悪のケースは免れる認識です。

論理削除対策

  • Paperless-ngxのエクスポート、インポート機能を利用した保管・復旧
  • 誤ったオペレーションに対して復旧が可能
  • △最新の履歴のみ復旧可能
  • △同じディスク内にエクスポートするため、故障への対策にはならない
  • 〇容易な復旧
  • △バージョン変更によりリカバリできない可能性(後述)

物理削除対策

  • Dockerイメージ単位での保管・復旧 
  • 〇過去取得した履歴から復旧が可能
  • 〇以下にて別ディスクへの履歴差分バックアップを説明済み、以下を利用https://mobileyasuda.com/wp-admin/post.php?post=352&action=edit
  • △論理削除対策よりは手間がかかる復旧
  • 〇過去全てのバージョンが履歴差分バックアップで保持されるため、バージョン変更によるリカバリ不能にはならない