単一リージョンでの復元

このページでは、単一リージョンで Cassandra を復元する方法について説明します。

単一リージョンのデプロイでは、Apigee ハイブリッドは単一のデータセンターまたはリージョンにデプロイされます。デプロイに複数の Apigee 組織がある場合、復元プロセスではすべての組織のデータが復元されます。複数組織の設定で、特定の組織を復元することはできません。

リージョンをバックアップから復元する

  1. 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_PATH"
        cloudProvider: "GCP"  # required verbatim "GCP" (all caps)
        snapshotTimestamp: "TIMESTAMP"
      ...
      backup:
        enabled: false
      ...

    ここで

    プロパティ 説明
    namespace

    YOUR_RESTORE_NAMESPACE

    復元用の名前空間。元のクラスタと同じ名前空間を使用します。

    cassandra:hostNetwork

    hostNetwork は必須で、必ず false に設定する必要があります。

    restore:enabled デフォルトでは、復元は無効になっています。このプロパティを true に設定する必要があります。
    restore:serviceAccountPath

    SA_JSON_FILE_PATH

    バックアップ用に作成したサービス アカウントへのファイル システム上のパス。

    restore:dbStorageBucket

    CLOUD_STORAGE_BUCKET_PATH

    バックアップ データが保存されている Cloud Storage バケットのパス。形式は gs://BUCKET_NAME です。必ず gs:// を付ける必要があります。

    restore:cloudProvider

    GCP

    cloudProvider: "GCP" プロパティは必須です。

    restore:snapshotTimestamp

    TIMESTAMP

    復元するバックアップ スナップショットのタイムスタンプ。使用できるタイムスタンプを確認するには、dbStorageBucket に移動し、バケット内にあるファイルを確認します。各ファイル名にはタイムスタンプの値が含まれます。例: backup_20210203213003_apigee-cassandra-default-0.tgz

    ここで、20210203213003 は、その時点で作成されたバックアップを復元する場合に使用する snapshotTimestamp の値です。

    backup:enabled このプロパティが以前 true に設定されていた場合は、false に設定する必要があります。
  2. 最初からクリーンなクラスタがない場合は、Helm のハイブリッド リージョンを廃止するのドキュメントに沿って、既存の Hybrid インストールをクリーンな状態にします(Cert Manager はインストールしたままにできます)。これにより、ステップ 11 の開始まで Helm ランタイムの設定マニュアルに従った場合と同じ状態になります。

  3. Apigee の名前空間に Pod が残っていないことを確認します。

    kubectl get pods -n apigee
    kubectl get pods -n apigee-system
  4. CSI バックアップを使用している場合は、次のコマンドを実行して、復元プロセスで使用する volumesnapshots が表示されることを確認します。

    kubectl get volumesnapshot -n apigee
              
  5. インストール マニュアルのステップ 11 に記載されているように、すべての Hybrid コンポーネントを 1 つずつインストールします。datastore をインストールするコマンドを実行すると、apigee-cassandra-restore Pod が作成されますが、apigee-org コンポーネントをインストールした後にのみ running 状態になります。

Cassandra のバックアップと復元について詳しくは、Cassandra のバックアップの概要をご覧ください。

復元ジョブの進行状況を確認し、apigeeds と他のすべての Pod が稼働していることを確認します。

  1. apigeeds を確認します。
    kubectl get apigeeds -n apigee
  2. 他のすべての Pod を確認します。
    kubectl get pods -n apigee

復元が正常に完了し、ランタイム コンポーネントが正常であることを確認したら、クラスタにバックアップを構成することをおすすめします。

  1. overrides-restore.yaml ファイルから restore 構成を削除します。
  2. backup 構成を overrides-restore.yaml ファイルに追加します。
  3. 以下のコマンドを使用して backup 構成を適用します。
    helm upgrade datastore apigee-datastore/ \
      --namespace apigee \
      --atomic \
      -f overrides-restore.yaml