このページでは、Filestore バックアップを使用して障害復旧用のデータをバックアップする方法について説明します。バックアップ、一般的なユースケース、ベスト プラクティスについては、バックアップをご覧ください。
サポートされている階層
次の表に、バックアップ、暗号化、関連する restore
オペレーションをサポートする Filestore サービスティアを示します。
階層 | バックアップ サポート |
restore から 新しいインスタンス |
restore を既存のインスタンス にマッピング |
restore から ソース インスタンスへ |
CMEK の サポート |
---|---|---|---|---|---|
基本 HDD | ○ | はい | はい | はい | いいえ |
基本 SSD | ○ | はい | はい | はい | いいえ |
ゾーン | ○ | はい | いいえ | いいえ | ○ |
リージョン | ○ | はい | いいえ | いいえ | ○ |
Enterprise | ○ | はい | いいえ | いいえ | ○ |
準備
gcloud
をインストールします。gcloud components
を更新するgcloud components update
使用中のアカウントに、Cloud Filestore 編集者のロールか、プロジェクト オーナーまたはプロジェクト編集者の基本ロールが付与されているか確認します。Filestore のロールと権限の詳細については、アクセス制御、IAM 権限、またはサポートされているプロトコルについてを参照してください。
ファイル共有をバックアップする
Filestore のバックアップには、ファイルロックと特定のインスタンス固有の情報は含まれません。次の表に、バックアップで保持される情報と保持されない情報を示します。
維持 | 保持されない |
---|---|
インスタンス ID | 説明 |
ソース インスタンスの階層 | 場所 |
容量 | ネットワーク |
ファイル共有の名前 | IP アドレス |
作成日時 | |
IP ベースのアクセス制御 | |
ファイルロック | |
ロック状態 | |
スナップショット |
バックアップ チェーンと暗号化
バックアップ チェーンは、同じソース インスタンスを参照するバックアップのコレクションです。ソースとは別のリージョンに保存されている場合でも、バックアップ チェーンは、それ自体のバケットとリージョンに集合的に配置されます。そして、チェーン内の各バックアップは、該当する場合は、同じ CMEK を使用して暗号化されます。すべてのサービスティアでは、複数のバックアップ チェーンがサポートされます。
CMEK で暗号化されたバックアップ チェーンを作成する場合は、次の制限事項を考慮してください。
CMEK は、ベーシック HDD とベーシック SSD のバックアップでは使用できません。
バックアップ チェーンが保存されているバケットに単一の CMEK が適用されます(組み合わせや置換はできません)。
詳細については、顧客管理の暗号鍵とバックアップをご覧ください。
バックアップの作成
ファイル共有のバックアップは、次のいずれかの方法で作成できます。
コンソール
- Filestore インスタンス ページに移動
- バックアップを作成する Filestore インスタンスをクリックします。
- [バックアップ] タブをクリックします。
- [バックアップを作成] をクリックします。
- [バックアップ ID] にバックアップの名前を入力します。
- [リージョン] で、バックアップを配置する Google Cloud リージョンを選択します。
- (省略可)説明を追加します。
- (省略可)[ラベルを追加] をクリックして、バックアップにラベルを追加します。
- [作成] をクリックします。
gcloud
ローカルマシンのターミナル ウィンドウで次の gcloud filestore backups create
コマンドを実行します。--kms-key
フラグは省略可能です。
gcloud filestore backups create BACKUP-NAME \
--instance=INSTANCE-NAME \
--file-share=FILE-SHARE-NAME \
--instance-zone=ZONE \
--region=BACKUP-LOCATION \
--kms-key=projects/KMS-PROJECT/locations/KMS-LOCATION/keyRings/KEYRING/cryptoKeys/CRYPTO-KEY
ここで
- BACKUP-NAME はバックアップに付ける名前です。
- INSTANCE-NAME は、バックアップする Filestore インスタンスの名前です。
- FILE-SHARE-NAME は、Filestore インスタンス上のファイル共有の名前です。
- ZONE は、Filestore インスタンスが配置されているゾーンです。
- BACKUP-LOCATION は、バックアップが保存されるリージョンです。リージョンが指定されていない場合、バックアップは Filestore インスタンスと同じリージョンに作成されます。
- KMS-PROJECT は、KMS 鍵リソースが格納されているプロジェクト名です。
- KMS-LOCATION は、KMS 鍵リソースのリージョンです。
- KEYRING はキーリングの名前です。
- CRYPTO-KEY は KMS 鍵リソースです。
例
次のコマンドを実行すると、ゾーン us-central1-c
に配置された Filestore インスタンス nfs-server
にファイル共有 vol1
のバックアップが作成されます。バックアップの名前は mybackup
で、リージョン asia-east2
にあり、復元時にインスタンスを暗号化する暗号鍵が関連付けられています。
gcloud filestore backups create mybackup \
--instance=nfs-server \
--file-share=vol1 \
--instance-zone=us-central1-c \
--region=asia-east2 \
--kms-key=projects/purple-project/locations/us-central1/keyRings/filestore-keyring/cryptoKeys/filestore-key
バックアップを一覧表示、表示、更新、削除する
Filestore のバックアップを、一覧表示、表示、更新、削除できます。
コンソール
現在のプロジェクト内のすべてのバックアップの一覧を表示するには:
バックアップの詳細を表示するには、バックアップ ID をクリックします。
バックアップを削除するには、次の操作を行います。
- 削除するバックアップのバックアップ ID をクリックします。
- [削除] をクリックします。
- プロンプトが表示されたら、バックアップ ID を入力します。
- [削除] をクリックします。
gcloud
現在のプロジェクト内のすべてのバックアップを一覧表示する
現在のプロジェクトのバックアップのリストを表示するには、backups list
コマンドを実行します。
gcloud filestore backups list
バックアップに関する情報を表示する
バックアップに関する情報を表示するには、backups describe
コマンドを実行します。
gcloud filestore backups describe BACKUP-NAME \
--region=BACKUP-LOCATION
ここで
- BACKUP-NAME は、情報を表示するバックアップの名前です。
- BACKUP-LOCATION は、バックアップが保存されているリージョンです。
バックアップを更新する
バックアップを更新するには、backups update
コマンドを実行します。
gcloud filestore backups update BACKUP-NAME \ --region=BACKUP-LOCATION \ --description="NEW-DESCRIPTION" \ --update-labels=KEY=VALUE,...
ここで
- BACKUP-NAME は、情報を表示するバックアップの名前です。
- BACKUP-LOCATION は、バックアップが保存されているリージョンです。リージョンは変更できません。
- NEW-DESCRIPTION はバックアップの説明です。
- KEY=VALUE,... は、更新する
KEY=VALUE
ペアのリストです。ラベルが存在する場合はその値が更新され、そうでない場合は新しいラベルが作成されます。
バックアップを削除する
バックアップを削除するには、backups delete
コマンドを実行します。
gcloud filestore backups delete BACKUP-NAME \ --region=BACKUP-LOCATION
ここで
- BACKUP-NAME は、情報を表示するバックアップの名前です。
- BACKUP-LOCATION は、バックアップが保存されているリージョンです。
ファイル共有の復元
復元オペレーションを開始する前に、アプリケーション エラーのリスクを軽減するために、アプリケーションを一時停止し、ファイル システムからマウント解除することをおすすめします。その後、バックアップから復元した後にファイル共有を再マウントする必要があります。復元が正常に完了すると、古いファイルのロックがすべて解除されます。 復元中は、クライアントの READ
オペレーションと WRITE
オペレーションは一時停止します。
制限事項
ベーシック ティアのバックアップは、ソース、新しいインスタンス、または既存のインスタンスに復元できます。
ゾーン、リージョン、エンタープライズ インスタンスのバックアップを復元するには、新しいインスタンスを作成する必要があります。
新しいインスタンスを作成してバックアップ
restore
オペレーションを完了する場合、新しいインスタンスは、ソース インスタンスのサービス階層と容量範囲と一致している必要があります。たとえば、低容量範囲のゾーンサービス階層を使用してソースが作成された場合、新しいインスタンスは同じサービス階層と容量範囲を使用する必要があります。
始める前に
既存のインスタンスにバックアップを復元する際に、バックアップとインスタンスが別々の顧客管理の暗号鍵(CMEK)を使用している場合、ターゲット インスタンスのプロジェクト レベルのサービス アカウントから、バックアップのキーへのアクセス権を付与する必要があります。
gcloud
次のコマンドを実行するための適切な権限(roles/cloudkms.admin
ロールなど)があることを確認します。
gcloud projects add-iam-policy-binding KMS_PROJECT_NUMBER \
--member serviceAccount:service-TARGET_INSTANCE_PROJECT_NUMBER@cloud-filer.iam.gserviceaccount.com \
--role roles/cloudkms.cryptoKeyEncrypterDecrypter
ここで
- KMS_PROJECT_NUMBER は、鍵が配置されているプロジェクト番号です。
- TARGET_INSTANCE_PROJECT_NUMBER は、鍵に関連付けるインスタンスのプロジェクト番号です。
gcloud
フラグの詳細については、gcloud projects add-iam-policy-binding
ページをご覧ください。
ソースまたは既存のインスタンスに復元する
ベーシック ティアのバックアップは、ソース インスタンスまたは既存の Filestore インスタンスのファイル共有に復元できます。
既存の Filestore インスタンスにバックアップを復元する場合、ターゲット インスタンスの容量は、バックアップの作成元のインスタンスの容量以上である必要があります。元のインスタンスの容量が大きい場合は、復元オペレーションを行う前に、ターゲット インスタンスの容量を増やす必要があります。
基本 HDD または基本 SSD インスタンスへのバックアップの復元に失敗した場合、ファイル共有の状態は変更されません。
オペレーションが開始され、ゾーン、リージョン、またはエンタープライズ インスタンスへのバックアップの復元に失敗した場合、ファイル システムは空の状態にリセットされます。この操作は、ユーザーの責任で再試行する必要があります。
コンソール
- Filestore インスタンス ページに移動
- バックアップの復元に使用するインスタンスのインスタンス ID をクリックします。
- [バックアップ] タブをクリックします。
- 復元に使用するバックアップを見つけて、[...] > [その他の操作] をクリックします。
- [バックアップを復元] をクリックします。
- 復元するターゲット インスタンスを選択します。
- ソース インスタンスを復元する場合は、[ソース インスタンス] をクリックします。
- 別の既存のインスタンスに復元する場合は、[その他の既存のインスタンス] をクリックします。
- [インスタンスを選択] をクリックします。
- 復元したバックアップを配置するターゲット インスタンスを選択し、[選択] をクリックします。
- [復元] をクリックすると、確認ダイアログが表示されます。
- 確認チェックボックスをクリックします。
- 入力フィールドにバックアップの名前を入力し、[復元] をクリックします。
gcloud
Filestore ファイル共有を既存のインスタンスに復元するには、instances restore
コマンドを実行します。
gcloud filestore instances restore INSTANCE-NAME \
--source-backup=BACKUP-NAME \
--source-backup-region=BACKUP-LOCATION \
--file-share=FILE-SHARE-NAME \
--zone=INSTANCE-LOCATION
ここで
- INSTANCE-NAME は、ファイル共有の復元先となる既存の Filestore インスタンスの名前です。
- BACKUP-NAME は、復元元のバックアップの名前です。
- BACKUP-LOCATION は、バックアップが存在するリージョンです。
- FILE-SHARE-NAME は、復元先のファイル共有の名前です。
- INSTANCE-LOCATION は、Filestore インスタンスが配置されるゾーンです。
例
次のコマンドは、リージョン asia-east2
にある mybackup
を、ゾーン us-central1-c
にある Filestore インスタンス myinstance
のファイル共有 vol1
に復元します。
gcloud filestore instances restore myinstance \
--source-backup=mybackup \
--source-backup-region=asia-east2 \
--file-share=vol1 \
--zone=us-central1-c
新しいインスタンスに復元する
バックアップを新しい Filestore インスタンスに復元する場合、新しいファイル共有の容量はバックアップの容量以上である必要があります。 ゾーン、リージョン、エンタープライズ階層のインスタンスの場合、新しいファイル共有の容量はソース共有の容量以上である必要があります。
ソース バックアップと同じサービスティアを使用する必要があります。
コンソール
Google Cloud コンソールで、[Filestore インスタンス] ページに移動します。
[バックアップ] をクリックします。
復元元のバックアップの名前をクリックします。
[復元] をクリックします。
[インスタンスを作成] をクリックします。
ページに表示される手順に従って、新しいインスタンスを構成します。詳細については、インスタンスの作成をご覧ください。
[復元] をクリックします。
gcloud
Filestore ファイル共有を新しいインスタンスに復元するには、instances create
コマンドを実行します。
gcloud filestore instances create INSTANCE-NAME \
--zone=ZONE \
--tier=TIER \
--file-share=name=FILE-SHARE-NAME,capacity=FILE-SHARE-CAPACITY,source-backup=SOURCE-BACKUP-NAME,source-backup-region=SOURCE-BACKUP-LOCATION \
--network=name=VPC-NETWORK,reserved-ip-range=RESERVED-IP-ADDRESS
ここで
- INSTANCE-NAME は、新しい Filestore インスタンスに付与する名前です。
- ZONE は、Filestore インスタンスが存在するゾーンです。
- TIER は、使用するサービス階層に置き換えます。これは、ソース バックアップと同じにする必要があります。
- FILE-SHARE-NAME は、インスタンスから提供される NFS ファイル共有に指定する名前です。
- FILE-SHARE-CAPACITY は、ファイル共有に使用する容量です。
- SOURCE-BACKUP-NAME は、復元元のバックアップの名前です。
- SOURCE-BACKUP-LOCATION は、バックアップが存在するリージョンです。
- VPC-NETWORK は、インスタンスで使用する VPC ネットワークの名前です。
- RESERVED-IP-ADDRESS は、Filestore インスタンスの IP アドレスです。
gcloud
フラグの詳細については、インスタンスの作成をご覧ください。
例
次のコマンドを実行すると、ネットワークのデフォルトにあるゾーン us-central1-c
に新しい Filestore インスタンス myinstance-restored
が作成されます。リージョン asia-east2
に配置されたバックアップ mybackup
は、容量 2TiB
のmyinstance-restored
の ファイル共有 vol1
に復元されます。
gcloud filestore instances create myinstance-restored \
--zone=us-central1-c \
--tier=zonal \
--network=name=default \
--file-share=name=vol1,capacity=2TiB,source-backup=mybackup,source-backup-region=asia-east2
次のステップ
- Cloud Scheduler を使用してバックアップをスケジュール設定する方法を学習する。
- バックアップ、一般的なユースケース、ベスト プラクティスについて学習する。
- バックアップの料金について学習する。
- ディスク容量不足とバックアップ割り当て不足のアラートの設定方法を学習する。
- バックアップ関連の既知の問題について確認する。