FY26 - ディザスタリカバリ
参考資料
背景
ディザスタリカバリとは、災害発生時に GitLab.com をすべての顧客データを保持した状態で動作する状態に復元するために必要なツールと手順を指します。これはコンプライアンス上の理由から報告が必要な管理された活動です。私たちは災害時に復旧できるという確信を持ち、一貫した測定可能な結果を通じてその確信を顧客に示せるようにしなければなりません。
北極星(目指す姿)
ディザスタリカバリはハンズオフで、システムに組み込まれています。災害イベントからの復旧能力を検証するために自動化された方法でテストされます。自動化されたテスト結果を使用して、顧客に対して復旧能力を示します。これは .com と Dedicated の両方に対して一貫しています。
FY26 の目標
ゲームデイをプロセス対応から検証へ移行する
現在、ディザスタリカバリのゲームデイは、GitLab.com のゾーン分散における手動対応が必要な領域に焦点を当てることがほとんどでした。これは重要ですが、GitLab.com および新しい Cells インフラには設計上で回復力を持つべき領域があり、その設計をテストして検証する必要があります。
また、サービスオーナーに対して、対応型の対処からより能動的なサービス実装への改善に役立つフィードバックを提供することも含まれます。
ゲームデイを本番環境で実施する
ゲームデイはこれまで混乱を避けて信頼性を高めるためにステージング環境(GSTG)を対象としてきました。回復力をテストする検証型ゲームデイはタイミングデータをより正確に把握し、本番環境が劣化に対して対応できることを検証するために、本番環境で実施する必要があります。
ゲームデイの継続的な改善
定期的にゲームデイを実施し続けます。フィードバックを収集して、テスト対象のサービスとゲームデイ自体を改善します。自動化を向上させてトイルを最小化し、DR 検証の実施に自動化を活用する機会を探します。ゲームデイの測定値を使用して RTO/RPO の値を見直します。インスタンス管理ツールを活用して、ディザスタリカバリ関連の対応をより迅速かつ確信を持って実施できるようにします。
ディザスタリカバリのオーナーシップを文書化して共有する
チームのディザスタリカバリ能力のテストと検証における目標を明確に示すために、Ops のハンドブックとプロセスを更新します。これには、他チームとの連携方法およびディザスタリカバリの対応と能力を向上させるためのフィードバック提供方法も含めます。
Cells における DR の探索
GCP Dedicated に Geo を有効化する方法を検討し、それを新しい Cell 作成時のデフォルト設定とします。既存の Cell を再設定して Geo が有効になっていることを確認します。データ復旧を実施できるよう、各 Cell の GitLab インスタンスのバックアップ/スナップショットを設定します。
