このページでは、単一リージョンで Cassandra を復元する方法について説明します。
単一リージョンのデプロイでは、Apigee ハイブリッドは単一のデータセンターまたはリージョンにデプロイされます。デプロイに複数の Apigee 組織がある場合、復元プロセスではすべての組織のデータが復元されます。複数組織の設定で、特定の組織を復元することはできません。
リージョンをバックアップから復元する
-
overrides.yamlファイル内の Cassandra 復元の詳細を更新します。namespace: YOUR_RESTORE_NAMESPACE # Use the same namespace as in your original cluster. cassandra: hostNetwork: false ... restore: enabled: true serviceAccountPath: "SA_JSON_FILE_PATH" dbStorageBucket: "CLOUD_STORAGE_BUCKET_NAME" cloudProvider: "GCP" # required verbatim "GCP" (all caps) snapshotTimestamp: "TIMESTAMP" ... backup: enabled: false ...
ここで
プロパティ 説明 namespaceYOUR_RESTORE_NAMESPACE
復元用の名前空間。元のクラスタと同じ名前空間を使用します。
cassandra:hostNetworkhostNetworkは必須で、必ずfalseに設定する必要があります。restore:enabledデフォルトでは、復元は無効になっています。このプロパティを trueに設定する必要があります。restore:serviceAccountPathSA_JSON_FILE_PATH
バックアップ用に作成したサービス アカウントへのファイル システム上のパス。
restore:dbStorageBucketCLOUD_STORAGE_BUCKET_NAME
データ復元に使用するバックアップ アーカイブを保存する Google Cloud Storage バケットの名前。
restore:cloudProviderGCPcloudProvider: "GCP"プロパティは必須です。restore:snapshotTimestampTIMESTAMP
復元するバックアップ スナップショットのタイムスタンプ。使用できるタイムスタンプを確認するには、
dbStorageBucketに移動し、バケット内にあるファイルを確認します。各ファイル名にはタイムスタンプの値が含まれます。例:backup_20210203213003_apigee-cassandra-default-0.tgzここで、20210203213003 は、その時点で作成されたバックアップを復元する場合に使用する
snapshotTimestampの値です。backup:enabledこのプロパティが以前 trueに設定されていた場合は、falseに設定する必要があります。 -
最初からクリーンなクラスタがない場合は、Helm のハイブリッド リージョンを廃止するのドキュメントに沿って、既存の Hybrid インストールをクリーンな状態にします(Cert Manager はインストールしたままにできます)。これにより、ステップ 12 の開始まで Apigee ハイブリッド ランタイムの設定マニュアルに従った場合と同じ状態になります。
-
Apigee の名前空間に Pod が残っていないことを確認します。
kubectl get pods -n APIGEE_NAMESPACE
-
CSI バックアップを使用している場合は、次のコマンドを実行して、復元プロセスで使用する volumesnapshots が表示されることを確認します。
kubectl get volumesnapshot -n APIGEE_NAMESPACE -
ステップ 11: Helm を使用して Apigee ハイブリッドをインストールする に記載されているように、すべての Hybrid コンポーネントを 1 つずつインストールします。
datastoreをインストールするコマンドを実行すると、apigee-cassandra-restorePod が作成されますが、apigee-orgコンポーネントをインストールした後にのみrunning状態になります。
Cassandra のバックアップと復元について詳しくは、Cassandra のバックアップの概要をご覧ください。
復元ジョブの進行状況を確認し、apigeeds と他のすべての Pod が稼働していることを確認します。
apigeedsを確認します。kubectl get apigeeds -n APIGEE_NAMESPACE
- 他のすべての Pod を確認します。
kubectl get pods -n APIGEE_NAMESPACE
復元が正常に完了し、ランタイム コンポーネントが正常であることを確認したら、クラスタにバックアップを構成することをおすすめします。
overrides-restore.yamlファイルからrestore構成を削除します。backup構成をoverrides-restore.yamlファイルに追加します。- 以下のコマンドを使用して
backup構成を適用します。helm upgrade datastore apigee-datastore/ \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides-restore.yaml