このページでは、Google Distributed Cloud(GDC)エアギャップでの手動復元作成オプションの概要について説明します。
バックアップの手動復元を作成して、いつでもデータを復元できます。
バックアップが復元されると、Kubernetes リソースがターゲット クラスタに再作成されます。リソースの作成後、ワークロード機能の実際の復元は、通常のクラスタ調整プロセスに従います。たとえば、Pod はノードにスケジュールされ、そのノードで開始されます。
インポートしたバックアップから復元する
別のクラスタで完了した別のバックアップからバックアップを復元できます。たとえば、元のクラスタが非アクティブな場合や、既存のクラスタのクローンを作成する場合は、インポートしたバックアップからバックアップを復元します。
まず、ソース クラスタで使用されるストレージの場所を指すバックアップ リポジトリをターゲット クラスタに作成します。リポジトリが ReadWrite
モードのソースクラスタでアクティブに使用されている場合は、ImportPolicy
を ReadOnly
として指定する必要があります。詳細については、バックアップ リポジトリのインポート ポリシーをご覧ください。
バックアップ リポジトリを作成し、バックアップを正常にインポートすると、リポジトリ バックアップ リソースがターゲット クラスタに存在します。インポートしたバックアップを参照して、ターゲット クラスタで復元をスケジュールできます。
手動復元の概要
手動復元を作成するには、復元する既存のバックアップが必要です。GDC コンソールまたは API を使用して手動復元を作成します。この API を使用すると、ManualRestoreRequest
リソースを作成して、バックアップからのデータ復元をリクエストできます。このリソースは、復元の名前、使用する復元プラン、復元元のバックアップを指定します。
復元プランとバックアップは、リクエストと同じ Namespace に存在している必要があります。この API は、復元プロセスのステータス更新を提供し、すべての復元リクエストを一覧表示できます。詳細については、復元を作成するをご覧ください。
復元するリソースをより詳細に制御する場合は、きめ細かい復元の概要をご覧ください。
きめ細かい復元の概要
きめ細かい復元機能を使用すると、バックアップからリソースのサブセットを復元できます。この機能を使用すると、復元プランで定義された復元スコープを調整できます。きめ細かい復元スコープが復元プランで定義された元のスコープと重複していない場合、リソースは復元されません。
きめ細かい復元機能は、個々のリソースレベルの次の競合処理モードを含む復元プランを有効にできます。
MergeSkipOnConflict
: 復元中に競合するリソースがスキップされます。MergeReplaceOnConflict
: 復元プロセス中に競合するリソースは、復元するバックアップ内のリソースに置き換えられます。
きめ細かい復元を使用するには、復元プランを作成するか、既存の復元プランの namespacedResourceRestoreMode
フィールドの値を MergeSkipOnConflict
または MergeReplaceOnConflict
に更新します。FailOnConflict
または DeleteAndRestore
の名前空間の競合処理モードはサポートされていません。復元モードの詳細については、復元プランを作成するの namespacedResourceRestoreMode
フィールドをご覧ください。
包含フィルタと除外フィルタ
きめ細かい復元を作成するときは、包含フィルタと除外フィルタで 1 つ以上のフィルタ条件を定義します。これらのフィルタを使用すると、復元するバックアップからリソースのサブセットを選択または除外できます。包含フィルタと除外フィルタを同時に定義できます。両方が指定されている場合は、次の順序で処理されます。
- 包含フィルタを使用すると、復元にはそのフィルタに一致するリソースのみが含まれます。
- 除外フィルタを使用すると、一致するリソースが復元プロセスから除外されます。
- 包含フィルタと除外フィルタの両方が指定されている場合、復元では最初に包含フィルタが適用され、次に除外フィルタが適用されます。
- フィルタが指定されていない場合、親の復元プランで定義されたスコープ全体に対して復元が実行されます。
フィルタ条件を作成する際には、次の 4 つの属性を任意で指定できます。
GroupKind
: リソースの Kubernetes API グループと種類。Namespace
: Namespace スコープのリソースの Namespace。Name
: リソースの名前。Labels
: Kubernetes に基づいてリソースを選択する Key-Value ペア。ラベルの詳細については、https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ をご覧ください。
上記の 4 つの属性を組み合わせて、フィルタ条件を定義できます。複数の属性を指定した場合、属性間の関係は AND
と見なされます。フィルタ条件で定義されたすべての属性に一致するリソースが選択されます。
複数のフィルタ条件を同時に指定することもできます。異なるフィルタ条件間の関係は OR
です。リソースは、フィルタ条件のいずれかに一致する場合に選択されます。フィルタは最大 50 個まで使用でき、各フィルタには 50 個のラベル Key-Value ペアを設定できます。