OpenClawのバックアップ戦略|日次・週次・災害復旧対策の完全ガイド
OpenClawバックアップ なぜ「取っているつもり」が最も危険なのか
バックアップに関して最も多い失敗は、「取っていない」ではなく「取っているつもり」のまま運用していることです。実際に障害が発生して初めて、バックアップが機能していなかったことに気づくケースが後を絶ちません。
バックアップの3大失敗パターン
- 取っていない:最もシンプルな失敗。「誰かがやっているはず」という思い込みで、誰もバックアップを設定していなかった。
- 古いバックアップしかない:手動バックアップを「たまに」実施していた結果、最新のバックアップが数ヶ月前のものしかない。データ損失は最小限でも、その間の更新内容がすべて失われる。
- リストアできない:バックアップファイルは存在するが、リストア手順を誰も知らない。ファイルが破損していても気づかない。ディスクの種類が変わって手順が通用しなくなっていた。
バックアップはリストアできて初めて意味があります。「バックアップを取っている」ではなく「バックアップからリストアできることを確認している」が正しい運用です。定期的なリストアテストを実施していない限り、バックアップは存在しないも同然です。
リストアテストを怠るリスク
バックアップファイルが破損していることは珍しくありません。圧縮コマンドのオプションミス、ディスク障害中のバックアップ取得、権限不足によるファイル欠損など、様々な理由でリストアに失敗します。障害発生時に初めてリストアを試みて失敗するという最悪のシナリオを避けるため、定期的(最低でも四半期に1回)のリストアテストを必ず実施してください。
バックアップ設計は「障害が起きたときに何を失うか」ではなく、「障害が起きても何を守れるか」という視点で考えてください。RPO(目標復旧時点)とRTO(目標復旧時間)を事前に決め、それを満たすバックアップ頻度と手順を整備することが重要です。
OpenClawバックアップ 3種類のバックアップとそれぞれの役割
OpenClawのバックアップ戦略は、取得タイミングと対象データによって3種類に分類されます。それぞれの役割を理解した上で、適切な組み合わせで運用することが重要です。
| 種類 | 頻度 | 対象 | 特徴 | 推奨ツール |
|---|---|---|---|---|
| フルバックアップ | 週次(日曜深夜) | DB全体 + 全ファイル | 完全なスナップショット。リストアが最もシンプル。容量大。 | mysqldump + tar |
| 差分バックアップ | 日次(深夜2時) | 前回フル以降の変更分 | フルバックアップとの差分のみ。容量小。リストア時はフル+差分が必要。 | rsync --checksum |
| トランザクションログ | リアルタイム(15分ごと) | DBの更新履歴 | 任意の時点への復元が可能(PITR)。MySQL binlogを使用。 | MySQL Binary Log |
OpenClawに推奨するバックアップ構成
小中規模のOpenClaw運用であれば、以下の構成が費用対効果に優れています。
- 日次:mysqldumpによるDBフルバックアップ(圧縮して7日分保持)
- 週次:アップロードファイル一式のフルバックアップ(4週分保持)
- 月次:上記を遠隔地(S3/GCS)へ転送(12ヶ月分保持)
トランザクションログ(binlog)は高可用性が求められる場合に追加します。通常の法人運用では日次DBバックアップ+週次ファイルバックアップで十分なケースがほとんどです。まずシンプルな構成で確実に動かすことを優先してください。
OpenClawバックアップ MySQLデータベースの自動バックアップ設定
OpenClawのデータはMySQLに格納されています。最も重要なバックアップ対象であり、mysqldumpを使った日次自動バックアップを最初に整備してください。
mysqldumpの基本コマンド
--single-transactionオプションを必ず付けてください。これにより、ダンプ中もDBへの書き込みを継続できます(InnoDB前提)。このオプションなしでのバックアップは、ロックが発生してOpenClawの動作に影響を与えます。
cronによる日次自動化
バックアップスクリプトを作成し、cronで自動実行します。スクリプト化することで、世代管理(古いバックアップの自動削除)や失敗時の通知も一緒に実装できます。
世代管理の考え方
- 日次バックアップ:7日分保持(ローカルストレージ)
- 週次スナップショット:日次バックアップのうち毎週日曜分を別ディレクトリにコピーして4週分保持
- 月次アーカイブ:毎月1日のバックアップを遠隔地に転送して12ヶ月分保持
パスワードをスクリプトにハードコードすることはセキュリティ上のリスクです。本番環境では/etc/mysql/conf.d/backup.cnfにMySQL認証情報を記述し、chmod 600で保護してください。スクリプトからは--defaults-extra-fileオプションで読み込みます。
OpenClawバックアップ アップロードファイルと設定ファイルの保護
DBバックアップと同様に重要なのが、ユーザーがアップロードしたファイルと設定ファイルのバックアップです。特に.envファイルやAPIキーを含む設定ファイルは、紛失すると再設定に多大な時間がかかります。
rsyncによるファイルバックアップ
rsyncは差分転送に対応しており、初回以降は変更分のみを転送するため高速です。週次フルバックアップと組み合わせて使用します。
設定ファイルの暗号化保管
.envファイルやNginx設定など、機密情報を含む設定ファイルは暗号化してからバックアップします。平文のままクラウドストレージに保存することは避けてください。
除外すべきパターン
- vendor/:Composerで再生成可能なため除外
- node_modules/:npm installで再生成可能なため除外
- cache/:再生成可能なキャッシュファイル
- *.log:ログファイル(必要なら別途アーカイブ)
- *.tmp:一時ファイル
設定ファイルは変更のたびにバックアップする習慣をつけてください。特に.envファイルはGitリポジトリに含めないため、変更履歴が残りません。変更前後にコピーを取る運用が安全です。
OpenClawバックアップ 災害復旧(DR)計画の立て方
バックアップはローカルに置くだけでは不十分です。サーバー本体が物理的に損傷・盗難・火災にあった場合、同じサーバー上のバックアップも失われます。遠隔地へのバックアップ転送と復旧手順の文書化がDR計画の核心です。
RTO/RPOの設定
DR計画を立てる前に、以下の2つの指標を決定してください。これにより、必要なバックアップ頻度とシステム構成が決まります。
| 指標 | 意味 | OpenClaw法人運用の目安 |
|---|---|---|
| RTO (目標復旧時間) |
障害発生から復旧完了までの許容時間 | 社内利用:24時間以内 顧客向け:4時間以内 |
| RPO (目標復旧時点) |
復旧時に失ってよいデータの最大期間 | 社内利用:24時間前 顧客向け:1時間前 |
遠隔地バックアップ(S3/GCS)
AWS S3またはGoogle Cloud Storageを遠隔地バックアップの保管先として使用します。AWS CLIを使えばcronで自動転送が可能です。
コールドスタンバイ vs ホットスタンバイ
| 方式 | 概要 | 復旧時間 | 費用 | 推奨ケース |
|---|---|---|---|---|
| コールドスタンバイ | バックアップを保持するだけ。障害時に新規サーバーへリストア。 | 数時間〜1日 | 低(S3ストレージ代のみ) | 社内利用・RTO 24時間以内 |
| ウォームスタンバイ | 縮小構成でスタンバイサーバーを常時起動。障害時にスケールアップ。 | 1〜2時間 | 中(スタンバイサーバー費用) | RTO 4時間以内が必要 |
| ホットスタンバイ | 同一構成のサーバーをリアルタイム同期。フェイルオーバー自動化。 | 数分以内 | 高(本番×2の費用) | 顧客向け・高可用性必須 |
ほとんどの法人OpenClaw運用ではコールドスタンバイで十分です。S3への自動転送を設定し、リストア手順を文書化しておけば、24時間以内の復旧は現実的に達成できます。
バックアップの設計と並行して、アクセス権限やAPIキーの管理も見直してください。バックアップデータには機密情報が含まれるため、暗号化と転送時のSSL/TLSは必須です。詳細はOpenClawのセキュリティ設計ガイドを参照してください。
まとめ
OpenClawのバックアップ戦略で最も重要なのは、3-2-1ルールの実践です。
- 3コピー:データのコピーを合計3つ保持する(本番 + ローカルバックアップ + 遠隔地バックアップ)
- 2種類の媒体:異なる種類のストレージに保存する(例:ローカルHDDとクラウドストレージ)
- 1つは遠隔地:必ず1つは地理的に離れた場所に保管する(S3東京リージョン等)
これに加えて、定期的なリストアテスト(最低四半期に1回)を実施し、リストア手順を文書化しておくことが、真に機能するバックアップ体制の条件です。
運用中の障害対応についてはOpenClaw保守運用ガイドも合わせてご覧ください。コスト面での最適化についてはコスト完全分解で詳しく解説しています。
よくある質問
掲載企業