本当に復旧できるセルフホスティング VPS を計画する
良いセルフホスティング VPS はアプリを起動できる大きさだけでは不十分です。文書化したワークロード、対応 OS、限定されたネットワーク露出、監視する容量、独立バックアップ、検証済み復元経路、退出計画が必要です。代替できないデータを移す前に設計してください。
重要情報
- 最初の容量設計要素
- ワークロード、利用者、データ増加、許容停止時間
- 初期に多い制約
- アプリ、データベース、キャッシュによるメモリ圧迫
- 復旧の基準
- 復元確認済みの暗号化されたサーバー外バックアップ
- 運用方式
- アンマネージドでは顧客がゲストシステムを管理します
プラン選定前にワークロードを棚卸しする
すべてのサービス、データベース、定期処理、保存先、ドメイン、証明書、外部依存、管理者、外部連携を列挙します。利用者数、ピーク要求、データ増加、許容できる最大データ損失と停止時間を見積もります。小規模サイト、写真庫、共同作業アプリ、メールサーバーでは、平均 CPU が似ていても運用負担が大きく異なります。
データを機密性と代替可能性で分類します。公開静的ファイルは再構築できますが、秘密鍵、元のアップロード、DB 状態、顧客記録は復旧できない場合があります。メールは、評判、配送、スパム対策、逆引き DNS、キュー監視、不正利用対応が必要で、パッケージ 1 つの導入より難しいため特に注意します。
- 各サービスと秘密情報に責任者を割り当てる。
- ポート、ドメイン、データ経路、上流依存を記録する。
- バックアップ頻度を決める前に復旧目標を定義する。
ピーク、保守、成長に備えて容量を決める
アプリの最低要件から始め、OS、DB、キャッシュ、バックアップ、更新、ログローテーション、短時間のピーク分を確保します。メモリ枯渇は激しいスワップやプロセス終了を招き、ファイルシステム満杯は処理を壊します。画面の 1 数値だけでなく CPU steal、メモリ、スワップ、空き容量、inode、I/O 遅延、転送量を監視します。
垂直拡張ができ移行を理解しているなら、小さく可逆な構成から始めます。急増データと捨てられるキャッシュを分けます。アプリ、DB、バックアップ、唯一の管理経路が 1 台の同じ障害領域に入るなら、移動困難になる前に再設計します。
- 更新、一時ファイル、復元作業用の空きを残す。
- ホーム画面だけでなく代表的な処理を負荷試験する。
- 停止前に対応できる時点で容量警告を出す。
公開面と信頼面を減らす
対応イメージを使い、現行セキュリティ更新を入れ、個別管理者を作成し、SSH 鍵を優先し、必要サービスだけを許可します。非公開 DB と管理画面はローカル・プライベートアドレスへ束縛し、秘密情報は狭い権限で保存します。複数人や自動化が 1 つの root 認証情報を共有しないでください。
アンマネージドでは通常、ゲスト更新、設定、アプリ安全性、監視、バックアップ、障害対応を顧客が担います。管理サービス範囲は異なるため、具体的な作業と対応境界を読みます。管理パネルは日常作業を簡単にしますが、更新・保護が必要な特権ソフトウェアでもあります。
- 管理者ごとに追跡可能なアクセス経路を持たせる。
- サンプルアプリ、不要パッケージ、公開管理ポートを削除する。
- OS と各アプリを誰が更新するか記録する。
緑の表示ではなく復元を基準にバックアップを設計する
少なくとも 1 コピーを VPS 外かつ同じ管理上の障害経路外に置きます。DB、利用者アップロード、設定、デプロイ定義、復元の復号・認証に必要な情報を含めます。事業者スナップショットは短期ロールバックに有用でも、主サーバーを損なったアカウント、リージョン、保存基盤、削除事象を共有する場合があります。
隔離環境への復元を定期的に試します。アプリ整合性、権限、DB 移行、証明書、所要時間を確認し、結果を記録して手順を直します。一度も復元していないバックアップは仮定であり、実証された復旧能力ではありません。
- バックアップを暗号化し、復旧鍵を別に守る。
- 発見の遅れに備え複数時点を保存する。
- 復旧可能なデータ時点と完全復元時間を測る。
継続運用し、明確な退出経路を保つ
更新、失敗処理、認証イベント、ディスク増加、証明書期限、バックアップ結果、アプリ状態を定期確認します。連絡先、封じ込め、証拠場所、資格情報変更、顧客連絡責任を含む短い障害手順を作り、本番依存が高まる前に 1 つの故障を演習します。
ドメイン、DNS、ソース、データ出力、秘密情報、導入手順、バックアップを移植可能にします。他社またはローカル環境への移行を試します。可搬性はロックインを減らし、事業者障害、方針変更、容量不足を緊急事態でなく計画作業にします。
- 確認を自動化しても人の責任者を置く。
- 対応中のクリーンイメージから再構築する手順を書く。
- 検証済み移行後、旧サーバーのデータと認証情報を消す。
出典
よくある質問
セルフホスティング VPS に必要な RAM は?
共通の容量はありません。アプリ、DB、キャッシュ、OS、保守、ピークの要件を合計し、メモリ圧迫を測り、成長余地を残します。
事業者スナップショットだけで十分ですか?
通常、唯一のコピーには不十分です。同じ事業者、アカウント、リージョン、保存障害を共有し得ます。暗号化した独立バックアップを持ち、完全復元を試してください。
最初の VPS でメールをセルフホストすべきですか?
配送評判、逆引き DNS、スパム対策、キュー監視、安全性、バックアップ、不正利用対応を理解した後に限ります。メールは多くの Web アプリより運用が複雑です。
アンマネージド VPS とは?
一般にゲスト OS とアプリを顧客が管理します。境界は異なるため、注文前に事業者が何を更新、監視、バックアップ、支援するか確認します。