バックアップの概要

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

このページでは、バックアップの概要、仕組み、一般的なユースケース、バックアップを作成して使用する際のベスト プラクティスについて説明します。バックアップの作成と管理を行う方法とバックアップから Filestore インスタンスを復元する方法については、障害復旧のためのデータのバックアップをご覧ください。

バックアップとは

Filestore バックアップは、バックアップ作成時点からのファイル共有のすべてのファイルデータとメタデータを含むファイル共有のコピーです。ファイル共有のバックアップが作成されると、元のファイル共有を変更または削除できます。バックアップには影響しません。ファイル共有は、バックアップから新しい Filestore インスタンスとして、または既存のファイル共有に復元できます。

バックアップは、作成時に指定したリージョン内に残るリージョン リソースです。Filestore インスタンスと同じリージョン、またはリージョン間の冗長性確保のために別のリージョンにバックアップを作成できます。バックアップはグローバル アドレスに対応しており、任意の リージョンにファイル共有を復元するために使用できますが、プロジェクト間で共有することはできません。

バックアップの作成

最初に作成するバックアップは、ファイル共有上のすべてのファイルデータとメタデータの完全なコピーです。以降の各バックアップでは、前回のバックアップ以降にデータに加えられた増分変更がすべてコピーされます。同じインスタンスとリージョンに関連付けられたバックアップのグループは、「バックアップ チェーン」と呼ばれます。

以前のバックアップに含まれる未変更データは、新しいバックアップで参照されますが、コピーされません。古いバックアップが削除されると、その特異データが次の最新バックアップにコピーされ、すべての内部データ参照が自動的に更新されます。

バックアップの作成は瞬時に行われますが、バックアップが使用可能になる前にコピーされるデータ量に比例する時間を要します。この間に、バックアップは次の 3 つの状態を遷移します。

状態 期間 説明
作成中 数秒 ファイル共有の現在の状態をキャプチャする。ファイル共有データの新しい変更は、バックアップに含まれる場合と含まれない場合があります。バックアップが開始される前にインスタンスによって承認された安定した書き込みは追加されます。
最終処理中 サイズに依存 バックアップにデータをアップロードする。ファイル共有データの新しい変更は、バックアップに追加されません。
Ready バックアップが削除されるまで バックアップを使用する準備が完了しています。

作成後、バックアップは自動的に圧縮され、費用が削減されます。高スケールまたはエンタープライズ階層のインスタンスのバックアップを作成している間は、インスタンスのパフォーマンスが低下する可能性があります。バックアップを作成しても、基本階層インスタンスの可用性やパフォーマンスには影響しません。

バックアップの整合性

Filestore バックアップには、NFSv3 整合性セマンティクスがあります。バックアップが開始される前に、Filestore インスタンスが安定したストレージに書き込まれたものと認識した書き込み、または後に確認済みの COMMIT が続く書き込みは、バックアップに追加されます。詳細については、NFSv3 RFC-1813 のセクション 3.3.7 をご覧ください。

一般的なユースケース

以下のセクションでは、バックアップの一般的なユースケースについて説明します。

障害復旧用のデータのバックアップ

us-west1-c に Filestore インスタンスがあり、このリージョンに影響する障害からデータを保護する必要があるとします。このインスタンスのバックアップを定期的に遠隔のリージョン(たとえば、us- east1)に作成するジョブのスケジュールを設定できます。us-west1-c に災害が発生した場合、以前のバックアップから別のロケーションに新しいインスタンスを作成できます。

不注意による変更を防ぐためのデータのバックアップ

Filestore データを意図しない変更から保護するには、インスタンスのバックアップを定期的に作成するジョブをスケジュールします。データを紛失した場合は、バックアップのリストを参照して、必要なファイルのバージョンを含むバックアップを特定できます。その後、バックアップから新しい Filestore インスタンスを作成して、元のインスタンスと同じクライアントにマウントし、ファイルをコピーできます。

ファイルをコピーする前に、2 つのマウント ポイントで Linux diff コマンドを使用して、元のインスタンスのデータとバックアップから復元したデータの差異を確認できます。データを復元したら、復元したインスタンスを削除し、新しいバックアップを作成して、将来の使用のためにデータの現在の状態を保持できます。

または、バックアップ データが元の Filestore インスタンスに直接復元されるインプレース復元を実行して、すべてのデータをバックアップのデータに置き換えることができます。バックアップしていないデータが失われるため、インプレース復元を行う前に最新データのバックアップを作成することをおすすめします。

開発およびテスト用クローンの作成

本番環境のトラフィックを処理する Filestore インスタンスにデータベースが設定されているとします。データベースを入力として使用してテストを実施する場合は、テスト用の本番環境インスタンスのバックアップから新しい Filestore インスタンスを作成できます。このように、テストを実施しても、本番環境には影響が及びません。

同様に、本番環境に影響を与えることなく、バックアップを使用してオフライン分析と調査を行うことができます。

データの移行

Filestore インスタンスを作成したら、そのロケーションやサービス階層は変更できません。データを別のリージョンに移行するには、そのバックアップを作成し、そのバックアップを使用して新しい Filestore インスタンスを作成するか、既存のインスタンスに復元できます。

また、バックアップから新しい Filestore インスタンスを作成する場合、ソース インスタンスの階層に関係なく、ベーシック HDD かベーシック SDD の階層を選択できます。

機能の制限事項

  • Filestore バックアップは、基本 HDD ティアと基本 SSD ティアのインスタンスの一般提供(GA)であり、エンタープライズ高スケール階層のインスタンスのプレビュー機能です。

  • プレビュー中は、次の制限が適用されます。

    • ユーザーが新しいプロジェクトを作成し、エンタープライズまたは高スケール階層のインスタンスの機能を有効にする必要があります。本番環境ワークロードは、常にプレビュー ワークロードとは別のプロジェクト内に配置する必要があります。

    • Filestore のバックアップは、Filestore Multishares 機能と組み合わせることはできません。

    • 料金設定が実装されると、関連する料金が適用されます。

    • パフォーマンスに関しては、次の制限が適用されます。

      • 同じファイル上にある多数のハードリンクに関わる数多くの変更が行われると(数万、数十万など)、パフォーマンスに影響する可能性があります。

      • バックアップをアップロードすると、エンタープライズと高スケール階層のインスタンスのパフォーマンスが最大で 15% 低下します。基本階層のバックアップはインスタンスのパフォーマンスに影響しません。

    • ストレージに関しては、次の制限が適用されます。

      • 高スケールまたはエンタープライズ階層インスタンスに関連付けられたバックアップ チェーン全体は、単一のリージョンに配置する必要があります。

        • 基本階層のインスタンスには複数のバックアップ チェーンを含めることができますが、それぞれ別のリージョンに配置する必要があります。
      • インスタンスおよび関連付けられたバックアップ チェーンは、別々のリージョンに配置できます。インスタンスとそのバックアップ チェーンは、別々の CMEK 鍵を使用することもできます。次の制限が適用されます。

        • CMEK は、関連するバックアップと同じロケーションに存在する必要があります。

        • インスタンスに関連付けられたすべてのバックアップは、任意の時点で 1 つの鍵のみを使用できます。

        • 新しいロケーションにインスタンスのバックアップを作成する場合、または新しい CMEK を使用してバックアップを作成する場合は、まず既存のバックアップ チェーン全体を削除する必要があります。

      • CMEK の使用を選択し、エンタープライズまたは高スケール階層のバックアップを削除するには、まず CMEK を有効にする必要があります。

      • エンタープライズ階層のインスタンスに RestoreInstance オペレーションが適用されると、ユーザーはオペレーションの前に以前のスナップショットと同じ名前のスナップショットを作成できなくなります。

      • インスタンスを削除した後は、そのバックアップを削除できません。削除リクエストの送信方法については、エンタープライズおよび高スケール階層のバックアップの削除リクエストをご覧ください。

      • バックアップの削除またはスナップショットの削除中にバックアップからインスタンスを復元しようとすると、失敗します。

    • 容量に関しては、次の制限が適用されます。

      • 各バックアップはインスタンスの容量を占有します。この容量は、最後のバックアップが作成されてからデータに加えられた変更の範囲によって異なります。

        • 具体的には、バックアップが作成されると、Filestore はファイル システムの内部スナップショットを作成します。このスナップショットは使用可能なインスタンス容量の一部も占有します。

          また、スナップショット サイズは、最後のバックアップが作成されてから共有内のデータに加えられた変更のスコープにも関係します。 このスナップショットは、次の後続のバックアップが作成され、アップロードされるまで存在し続けます。

          バックアップで参照されるすべてのデータは、キャプチャされた時点の状態のままで保持され、ファイル システムから容量を消費し続けます。たとえば、マウントされたファイル システムからデータを削除しても、そのアクション自体で空き容量が増えることはありません。代わりに、大量のデータを削除または上書きした後に新しいバックアップを作成します。

        • ワークロードに十分な容量を予測するには、次のいずれかを適用することを検討してください。

          • 頻繁に行われるデータ変更や「変更率が高い」ワークロードに対応するインスタンス容量を増やす。

          • データ変更の範囲または変更率を制限する。

おすすめの方法

以下のセクションでは、推奨されるベスト プラクティスについて説明します。

最適なバックアップ整合性を確保するため、ファイル共有を準備する

バックアップの品質は、大量の書き込みワークロード中に作成されたバックアップから復元するアプリケーションの能力によって決まります。ほとんどの場合、アプリケーションがファイル共有にデータを書き込んでいる間でも、優れた整合性を持つバックアップを作成できます。ただし、アプリケーションで厳密な整合性が求められる場合は、次のうち 1 つ以上を行うことをおすすめします。

  • sync マウントを使用する。詳細については、nfs(5) の「同期マウント オプション」をご覧ください。または、O_DIRECT\O_SYNC フラグを使用してファイルを開くこともできます。詳細については、open(2) をご覧ください。
  • ファイル共有にデータを書き込むアプリケーションまたはオペレーティング システム プロセスを一時停止し、バックアップを開始する前にファイル共有に対する変更をフラッシュする。詳細については、fsync(2) をご覧ください。
  • アプリケーションで複数の共有間の整合性が求められる場合は、すべてのアプリケーションに書き込む全インスタンスの全アプリケーションを一時停止し、すべてのファイル共有のバックアップを作成してから、アプリケーションを再開する。
  • アプリケーション レベルの整合性が必要な場合は、バックアップを作成する前に、アプリケーションを停止して、ファイル共有のマウントを解除する。

既存のバックアップを新しいバックアップのベースラインとして使用して、バックアップの作成時間を短縮する

リージョン内のファイル共有の既存のバックアップは、ファイル共有の新しいバックアップを作成するためのベースラインとして使用され、バックアップの作成時間を短縮します。 そこで、次の手順を行うことをおすすめします。

  • ファイル共有の新しいバックアップを作成してから、そのファイル共有の以前のバックアップを削除します。

  • 新しいバックアップが Ready 状態になるまで待ってから、同じファイル共有の後続のバックアップを作成します。

バックアップの作成時間を短縮するために、オフピーク時にバックアップのスケジュールを設定する

オフピーク時にバックアップを作成すると、バックアップの作成に要する時間が短縮されます。ファイル共有の定期的なバックアップのスケジュールを設定する場合は、可能な限りオフピーク時にスケジュール設定することをおすすめします。

バックアップ作成のピーク時間帯は、各営業日の終了時と、Filestore インスタンスが配置されているリージョンの午前 0 時です。早朝または営業時間中にバックアップを作成することをおすすめします。

効率を最大限高めるために、個別の Filestore インスタンスでデータを整理する

ファイル共有のデータが多いほど、バックアップのサイズが大きくなり、コストも増大します。バックアップが必要なデータのみをバックアップするには、次のように、データを別々のファイル共有に整理することをおすすめします。

  • 書き込みパターンごと、またはバックアップ要件ごとに、異なるファイル共有に重要データを保存する。
  • 1 つのファイル共有に類似のデータを保存することで、作成する必要のあるバックアップの数を減らす。

プレビューへのアクセスをリクエストする

高スケールおよびエンタープライズ階層インスタンスの Filestore バックアップは、一部のお客様のプレビュー機能として利用できます。機能へのアクセスをリクエストするには、こちらのフォームに記入して送信してください。

Filestore バックアップの使用を開始する

この機能の使用を開始するには、障害復旧用のデータのバックアップをご覧ください。

次のステップ