バックアップからの復元

OpsCenterで以前行ったバックアップからデータを復元します。

OpsCenterで実行した、サポートされているバックアップからデータを復元します。nodetoolを使用して実行されたスナップショットから、OpsCenter Backup Service(OpsCenter バックアップ・サービス)を使用して復元することはできません。スナップショットに含まれているテーブルのサブセットを復元対象として選択できます。

始める前に

  • 暗号化バックアップを復元するには、DataStaxエージェントにDataStax Enterpriseノードでのパスワード不要のsudoアクセス権を付与する必要があります。OpsCenterを使用してDataStaxエージェントをインストールした場合、このアクセス権は既に付与されています。デフォルトとは異なるユーザーとしてエージェントを実行している状態で、暗号化テーブルを復元する必要がある場合は、system_keyテーブルを手動で復元する必要があります。
  • Solrコアであるテーブルを復元する際に、テーブルがまだ存在しない場合は、CQLテーブルとして自動的に再作成されます。これをThriftベースのテーブルにする必要がある場合は、復元する前にテーブルを手動で再作成します。現在存在しないThriftテーブルのデータを復元する場合は、復元する前にテーブルを作成する作業はユーザーが行う必要があります。
重要: Backup Service(バックアップ・サービス)は、デスティネーションの場所のデータと構造を制御する必要があります。バックアップ・デスティネーションは、OpsCenterのみが使用するものとします。これらのデスティネーションに他のディレクトリーやファイルを追加すると、Backup Service(バックアップ・サービス)がバックアップ操作または復元操作を適切に実行できなくなる可能性があります。
注: バックアップの作成と復元を行う場合、以下の点に注意してください。
  • システム・キースペースのみを含むスナップショットを復元することはできません。復元するスナップショットには、システムと非システム・キースペースの両方が含まれているか、非システム・キースペースのみが含まれている必要があります。
  • テーブル定義を含まないスナップショットを復元することはできません。
  • スナップショットを十分なディスク領域がない場所に復元すると失敗します。復元レポートには、十分な領域がないノードと、復元を正常に行うために必要な領域が表示されます。予防措置の詳細とヒントについては、「バックアップを復元するための十分なディスク領域の監視」を参照してください。
  • OpsCenterは、インデックスのバックアップを行いません。そのため、復元後に、DSEでインデックスを再計算する必要があります。

手順

  1. クラスター名 > [Services]をクリックします。
  2. Backup Service(バックアップ・サービス)の[Details]リンクをクリックします。
  3. [Activity]タブで、[Restore Backup]をクリックします。

    [Restore from Backup]ダイアログが表示されます。

    Step 1 of 2:Select Backup、[Restore from Backup]ダイアログ
  4. 復元するバックアップの種類に対応するタブを選択します。
    • [Backups]タブから復元するキースペースを選択します。スケジュール・バックアップと手動バックアップの両方がリストに表示されます。
    • [Backups]タブに表示されていない場所から復元するには、[Other Location]を選択します。

      [Other Location]からのバックアップの選択は、一般的にクラスターを複製する場合によく使用されますが、このOpsCenterインスタンスがバックアップ場所を認識していない場合にも使用できます。

    • 特定時点(point-in-time)まで復元するには、[Point In Time]タブを選択し、「特定時点へのバックアップの復元」の手順に従います。
  5. [Next]をクリックします。
    [Restore from Backup]ダイアログの[Step 2 of 2: Configure and Restore]が表示されます。

    Step 2 of 2: [Configure and Restore]、[Restore from Backup]ダイアログ

  6. [Keyspaces and Graphs]で、復元するテーブルまたはグラフを選択します。
    • すべてのキースペースまたはすべてのグラフを復元するには、[All Keyspaces]または[All Graphs]をクリックします。
    • キースペース内のすべてのテーブルまたはすべてのグラフを含めるには、キースペース名またはグラフ名をクリックします。
    • 特定のテーブルまたはグラフを選択するには、キースペース名またはグラフ名を展開し、バックアップする特定のテーブルまたはグラフ名を選択します。
    注: DSE 6.0.0~6.0.4については、[Use sstableloader]を選択しないでDSE Graphをバックアップする場合、すべてのデータを使用できるように、DSEを再起動する必要があります。
  7. [Location]で、復元するデータのターゲット・クラスターを選択します。
    • [Location]リストは、複数のクラスターがあり、両方のクラスターが同じOpsCenterインスタンスで管理されている場合にのみ表示されます。
    • バックアップしたクラスターとは異なるクラスターを選択すると、選択したクラスターにデータが複製されます。「クラスター・データの複製」を参照してください。
    注: 暗号化キーが同一でない限り(通常は同一ではない)、暗号化されたテーブルを別のクラスターに復元しても正しく動作しません。
  8. オプション: データを復元する前に既存のキースペース・データを削除するには、[Truncate/delete existing data before restore]を選択します。これによって、復元するキースペースに対し、クラスター内の更新データが完全に削除されます。
    注: 既存データのトランケートまたは削除をしないオプションは、復元にsstableloaderを使用する場合にのみ、選択できます。sstableloaderを使用しない場合は、既存のデータをトランケートまたは削除するオプションがデフォルトで選択されます。
  9. ネットワークの過負荷を防ぐには、[Throttle DSE stream throughput at ____ MB]オプションを選択し、復元の最大転送速度を設定します。
    注: このオプションに値を入力するには、[Use sstableloader]を選択する必要があります。そうでない場合、転送速度の値は無視されます。
  10. オプション: 外部データをクラスターに一括して読み込むには、[Use sstableloader]を選択します。
    注: Sstableloaderを使用すると、元のトポロジーにかかわらず、データがクラスターに復元されます。 速度およびパフォーマンスは低下します。階層化ストレージを使用するクラスターに復元するには、sstableloaderを使用する必要があります。詳細については、「sstableloader」を参照してください。

    バックアップから復元するとき、復元が失敗した場合でも成功したとOpsCenterで報告される可能性があります。この動作は、新しいデータ・ディレクトリーにSSTableをコピーし、その後にnodetool refreshを実行する場合に発生する可能性があります。復元が失敗したかどうかを判断するには、DataStax エージェント・ログで、"Error copying sstables to data dir:"を示す文字列を検索します。この問題に関係あるのは、OpsCenter 6.7.0のみです。

  11. オプション: 必要に応じて、address.yamlbackup_staging_directory構成オプションを設定し、ステージング・ディレクトリーを変更します。
  12. 必須: [Restore Backup]をクリックします。

    [Confirm Restore]ダイアログが表示されます。

    [Confirm restore operation]ダイアログ
    警告: ストリーム出力をスロットルするための値を設定していない場合、スロットルされていない復元の影響を示す警告メッセージが表示されます。以下のいずれかのアクションを実行します。
    • [Cancel]をクリックして[Restore from Backup]ダイアログでスロットル値を設定します。
    • cassandra.yamlstream_throughput_outbound_megabits_per_secおよびinter_dc_stream_throughput_outbound_megabits_per_sec)の値を設定します。
    • ネットワークのボトルネック発生のリスクを承知した上で続行します。
    ヒント: LCMを使用してDSEクラスター構成を管理している場合は、そのクラスターの構成プロファイルcassandra.yamlのクラスター通信設定を更新して、構成ジョブを実行します。ストリーム・スループット(データ・センター間ではない)は、LCMのデフォルトで200に設定されています。

    LCMのスロットル・オプションの更新

  13. [Start Restore]をクリックして復元を確認します。

    復元前のチェックにより、自動的に検証できないスキーマの相違が検出された場合は、[Restore Schema Validation]ダイアログが表示されます。考えられる問題がリストされ、バックアップ・スキーマと現在のスキーマの比較が並んで表示されます。

  14. 現在のスキーマの調整または修正が必要であるかどうかを判断するには、情報を確認します。
    • スキーマの問題を修正するには、[Cancel]をクリックして問題を解決し、再び復元を試します。
    • スキーマに不一致があっても続行するには、[Continue Restore]をクリックします。
      警告: 互換性のないスキーマを使用してバックアップを復元しようとすると、データが破損したり、アクセスできなくなる場合があります。復元を強制する前に、現在のデータをバックアップします。

タスクの結果

復元を開始すると、[Restore Report]に復元の進行状況とステータスに関する詳細情報が表示されます。[Restore Report]ダイアログは、復元プロセスに影響を与えることなく、いつでも閉じることができます。レポートを再び開くには、[Activity]タブで「進行中」の復元をクリックします。完了した復元の[Restore Report]を表示するには、[Activity]タブで目的の復元をクリックします。

バックアップを復元するためのディスク領域が不足している場合、復元は失敗します。「バックアップを復元するための十分なディスク領域の監視」を参照してください。