このページでは、Google Distributed Cloud(GDC)エアギャップでクラスタ ワークロードのバックアップ プランを作成して管理する方法について説明します。
バックアップ プランは、一連のバックアップの構成、ロケーション、管理機能を提供します。バックアップ プランには、ソースクラスタやバックアップするワークロードの選択などのバックアップ構成が含まれます。すべてのクラスタに少なくとも 1 つのバックアップ プランを提供することをおすすめします。
クラスタごとに 1 つ以上のバックアップ プランを作成できます。次のような理由で、クラスタのバックアップをパーティション分割することがあります。
- 1 日に 1 回で大規模なバックアップを作成するのではなく、1 日を通じて複数の小規模なバックアップを分散するようにする。
- クラスタの一部を他の部分よりも頻繁にバックアップする(たとえば、一部の名前空間を毎日バックアップし、他の名前空間は 1 時間ごとにバックアップする場合など)。
1 つのクラスタまたは仮想マシン(VM)は、1 つ以上のバックアップ プランに属することができます。バックアップ プランは複数のクラスタにまたがることはできませんが、同じクラスタに複数の VM が存在する場合は、1 つのバックアップ プランで複数の VM をキャプチャできます。すべてのバックアップ リソースと復元リソースは、プロジェクト名に関連付ける必要があります。
始める前に
バックアップ プランを作成するには、次のものが必要です。
- 必要な ID とアクセスロール:
- ユーザー クラスタ バックアップ管理者: ユーザー クラスタのバックアップ プランや復元プランなどのバックアップ リソースを管理します。組織の IAM 管理者に、ユーザー クラスタ バックアップ管理者(
user-cluster-backup-admin
)ロールの付与を依頼します。詳細については、ロールの定義をご覧ください。
- ユーザー クラスタ バックアップ管理者: ユーザー クラスタのバックアップ プランや復元プランなどのバックアップ リソースを管理します。組織の IAM 管理者に、ユーザー クラスタ バックアップ管理者(
- アプリケーション オペレーターの場合は、ユーザー クラスタ バックアップ管理者の権限を持つ管理者にバックアップ プランの作成を依頼してください。
バックアップ プランの作成
バックアップ プランの cron スケジュールを定義し、そのスケジュールに従ってバックアップが自動的に作成されるようにすることをおすすめします。ワークロードを手動でバックアップすることもできます。詳しくは、手動バックアップを作成するをご覧ください。
GDC コンソールまたは API を使用してバックアップ プランを作成します。
コンソール
- GDC コンソールにログインします。
- ナビゲーション メニューで [Backup for Clusters] をクリックします。
- [Create Backup Plan] をクリックします。
- [プランの詳細] セクションで、次の手順を完了して [続行] をクリックします。
- [クラスタ] リストで、バックアップするクラスタを選択します。
- [プロジェクト] リストで、プロジェクトを選択します。
- [バックアップ プラン名] フィールドに、選択したバックアップ プランの名前を入力します。
- (省略可)[バックアップ プランの説明] に、バックアップ プランの説明を入力します。
- [バックアップ リポジトリ] フィールドで、バックアップ リポジトリを選択します。バックアップ リポジトリは、オブジェクト ストレージ実装のセットです。
- [次へ] をクリックします。
[スコープと暗号化] セクションで、次の操作を行い、[続行] をクリックします。
バックアップ プランのスコープを次のいずれかから選択します。
- [クラスタ全体] をクリックして、バックアップ内のすべての名前空間リソースをバックアップします。
- [クラスタ内の選択した名前空間] をクリックして、復元するバックアップ内の名前空間を選択します。
- [クラスタ名前空間を編集]、[クラスタ名前空間を追加] の順にクリックして、名前空間を入力します。
- 名前空間とアプリケーション名を指定してリソースを追加するには、[このクラスタ内の選択した保護対象アプリケーション] をクリックします。
- [保護対象アプリケーションを編集]、[保護対象アプリケーションを追加] の順にクリックして、Namespace と Protected Application を入力します。
[シークレットを含める] をクリックして、Kubernetes
Secret
リソースを含めます。バックアップにボリューム データを含める場合は、[永続ボリューム データを含める] をクリックします。復元中に空のボリュームを作成する場合は、このチェックボックスをオフにします。
[スケジュールと保持] セクションで、次の手順を完了して [続行] をクリックします。
- スケジュールを定義するには、[CRON 文字列] フィールドに標準の cron 構文を使用して式を入力します。たとえば、
10 3 * * *
という式は、毎日 3 時 10 分にバックアップを作成します。時刻はすべて UTC と解釈されます。バックアップ スケジュールの最小間隔は 10 分です。 - [バックアップを削除するまでの日数] フィールドで、バックアップを保持する日数を設定します。指定した日数が経過すると、バックアップは自動的に削除されます。
- バックアップを削除できない日数を設定します。
- 保持ポリシーをロックするには、鍵アイコンをクリックして、ロックをオフからオンに切り替えます。
- スケジュールを定義するには、[CRON 文字列] フィールドに標準の cron 構文を使用して式を入力します。たとえば、
バックアップ プランの詳細を確認して、[プランの作成] をクリックします。
API
クラスタに ClusterBackupPlan
カスタム リソースを作成して、バックアップをスケジュール設定します。バックアップ プランは、backupSchedule
に基づいてバックアップを定期的にスケジュールします。ClusterBackupPlan
リソースは Namespace リソースです。ClusterBackupPlan
の例を次に示します。
apiVersion: backup.gdc.goog/v1
kind: ClusterBackupPlan
metadata:
name: backup-plan
namespace: PROJECT_NAME
spec:
targetCluster:
targetClusterType: UserCluster
targetClusterName:
kind: "Cluster"
name: "cluster-sample"
backupSchedule:
cronSchedule: "*/30 * * * *"
paused: false
clusterBackupConfig:
backupScope:
selectedNamespaces:
namespaces: ["nginx"]
clusterBackupRepositoryName: backup-repository
retentionPolicy:
backupDeleteLockDays: 10
backupRetainDays: 10
PROJECT_NAME
は、GDC プロジェクトの名前に置き換えます。
この例には次の値が含まれています。
値 | 説明 |
---|---|
targetClusterName
|
バックアップするクラスタの名前。 |
targetClusterType
|
バックアップするクラスタのタイプ。たとえば、`UserCluster` や `ManagementAPI` などです。 |
backupSchedule
|
バックアップの実行頻度を示すスケジュール。
|
clusterBackupConfig
|
バックアップの構成の詳細:
|
retentionPolicy
|
バックアップが backupRepository. に保存される期間を決定します。
保持ポリシーは、ストレージの場所の保持ポリシーをオーバーライドすることはできません。また、90 日を超えることはできません。 |
description
|
バックアップ プランの説明。 |
バックアップ プランが作成されると、バックアップ スケジュールに基づいて、指定されたバックアップ構成でバックアップが自動的に作成されます。
バックアップ プランの表示
GDC コンソールを使用してバックアップ プランを表示します。
- GDC コンソールにログインします。
- ナビゲーション メニューで [Backup for Clusters] をクリックします。
- [プロジェクトを選択] をクリックし、ロールに応じて組織またはプロジェクトを選択します。
- ユーザー クラスタ バックアップ管理者: 組織を選択して組織内のすべてのバックアップ プランを表示するか、プロジェクトを選択してプロジェクト内のすべてのバックアップ プランを表示します。
- バックアップ作成者: プロジェクトを選択して、プロジェクト内のすべてのバックアップ プランを表示します。
- [バックアップ プラン] タブをクリックします。
- リスト内のバックアップ プランをクリックして、その詳細を表示します。ユーザー クラスタ バックアップ管理者の権限を持つユーザーは、組織内のすべてのバックアップ プランを表示できます。バックアップ作成者のロールを持つユーザーは、選択したプロジェクト内のすべてのバックアップ プランを表示できます。
バックアップ プランを編集する
GDC コンソールを使用してバックアップ プランを編集します。
- GDC コンソールにログインします。
- ナビゲーション メニューで [Backup for Clusters] をクリックします。
- [プロジェクトを選択] をクリックし、ロールに応じて組織またはプロジェクトを選択します。
- ユーザー クラスタ バックアップ管理者: 組織を選択して組織内のすべてのバックアップ プランを表示するか、プロジェクトを選択してプロジェクト内のすべてのバックアップ プランを表示します。
- バックアップ作成者: プロジェクトを選択して、プロジェクト内のすべてのバックアップ プランを表示します。
- [バックアップ プラン] タブをクリックします。
- 編集するバックアップ プランの名前をクリックします。
- [プランの構成] タブをクリックして、変更可能なフィールドを表示します。
[スケジュールと保持] の edit 編集アイコンをクリックして、そのリソースを編集します。
- スケジュールを更新するには、[CRON 文字列] フィールドに標準の cron 構文を使用して式を入力します。たとえば、
10 3 * * *
という式は、毎日 3 時 10 分にバックアップを作成します。時刻はすべて UTC と解釈されます。バックアップ スケジュールの最小間隔は 10 分です。 - [バックアップを削除するまでの日数] フィールドで、バックアップを保持する日数を設定します。指定した日数が経過すると、バックアップは自動的に削除されます。
[削除を防止する期間] フィールドで、バックアップを削除できない日数を設定します。
保持ポリシーをロックするには、鍵アイコンをクリックして、ロックをオフからオンに切り替えます。
[保存] ボタンをクリックして、変更を確定します。
- スケジュールを更新するには、[CRON 文字列] フィールドに標準の cron 構文を使用して式を入力します。たとえば、
バックアップ プランを無効にする
GDC コンソールを使用してバックアップ プランを無効にするには:
- GDC コンソールにログインします。
- ナビゲーション メニューで [Backup for Clusters] をクリックします。
- [プロジェクトを選択] をクリックし、ロールに応じて組織またはプロジェクトを選択します。
- ユーザー クラスタ バックアップ管理者: 組織を選択して組織内のすべてのバックアップ プランを表示するか、プロジェクトを選択してプロジェクト内のすべてのバックアップ プランを表示します。
- バックアップ作成者: プロジェクトを選択して、プロジェクト内のすべてのバックアップ プランを表示します。
- [バックアップ プラン] タブをクリックします。
- 無効にするバックアップ プランの名前をクリックします。
- [プランを無効化] ボタンをクリックします。
- 無効にするバックアップ プランの名前をフィールドに入力します。
[無効にする] ボタンをクリックして、このバックアップ プランの無効化を完了します。