SAP HANA のスナップショット ベース バックアップを作成する

完了

SAP HANA ではストレージ スナップショットがサポートされています (単一コンテナー システムに制限されます)。 複数のテナントを持つ SAP HANA MCS では、この種の SAP HANA データベース スナップショットはサポートされていません。

このプロセスは次のようになります。

  1. SAP HANA スナップショットの作成を開始して、ストレージ スナップショットの準備を行う。
  2. ストレージ スナップショット (Azure BLOB スナップショットなど) を実行する。
  3. SAP HANA スナップショットを確認する。

スナップショットは、SAP HANA Studio のバックアップ カタログにも表示されます。 ディスクでは、スナップショットは SAP HANA データ ディレクトリ内に表示されます。 ストレージ スナップショットを実行する前に、SAP HANA がスナップショット準備モードにある間に、ファイル システムの整合性も保証されるようにする必要があります。

ストレージ スナップショットが完了したら、SAP HANA スナップショットを確認することが重要です。 次の対応する SQL ステートメントを実行する必要があります:BACKUP DATA CLOSE SNAPSHOT (「BACKUP DATA CLOSE SNAPSHOT ステートメント (バックアップと回復)」を参照してください)。

重要

HANA スナップショットを確認してください。 "コピーオンライト" により、SAP HANA ではスナップショット準備モードで追加のディスク領域が必要になる場合があります。また、SAP HANA スナップショットが確認されるまで新しいバックアップは開始できません。

Azure Backup サービスを介した HANA 仮想マシンのバックアップ

Azure Backup サービスのバックアップ エージェントは、Linux 仮想マシンでは利用できません。 さらに、Linux には、Windows で VSS を使う場合と同様の機能がありません。 ファイル/ディレクトリ レベルで Azure Backup を使用するには、SAP HANA バックアップ ファイルを Windows 仮想マシンにコピーしてから、バックアップ エージェントを使用する必要があります。 それ以外では、Azure Backup サービスを介して実現できるのは Linux 仮想マシンの完全なバックアップだけです。

Azure Backup サービスには、仮想マシンをバックアップして復元するオプションが用意されています。 ただし、次の 2 つの重要な考慮事項があります。

  • Linux Virtual Machines では、ファイル整合性バックアップのみが可能です。それは、Linux には VSS に相当するプラットフォームがないからです。
  • アプリケーションでは、復元されたデータに対する独自の整合性検証メカニズムを実装する必要があります。

このため、バックアップ開始時にディスク上で SAP HANA の整合性を確保する必要があります。 より具体的には、ストレージ スナップショットが作成された後は、できるだけ早く確認または破棄することをお勧めします。 ストレージ スナップショットの準備中または作成中、スナップショット関連データはフリーズしています。 スナップショット関連データがフリーズしている間も、データベースに対する変更は可能なままです。 このような変更では、凍結されたスナップショット関連データは変更されません。 その代わり、変更は、データ領域内にある、ストレージ スナップショットとは別の場所に書き込まれます。 また、変更はログにも書き込まれます。 しかし、スナップショット関連データのフリーズ時間の長さに比例して、データ ボリュームは大きくなる可能性があります。

Azure Backup は、Azure 仮想マシン拡張機能を介してファイル システムの一貫性を管理します。 これらの拡張機能はスタンドアロンでは使用できず、Azure Backup サービスと組み合わせる場合にのみ動作します。 それでも、まだ、アプリの一貫性を保証するためにSAP HANA スナップショットを作成および削除するスクリプトを提供する必要があります。

このケースでは、Azure Backup には次の 4 つの主要なフェーズがあります。

  1. 準備スクリプトを実行する - スクリプトでは SAP HANA スナップショットを作成する必要があります
  2. スナップショットの取得
  3. スナップショット後スクリプトを実行する - スクリプトでは、準備スクリプトによって作成された SAP HANA スナップショットを削除する必要があります
  4. コンテナーへのデータ転送

これらのスクリプトをコピーする場所と Azure Backup の正確な動作の詳細については、次の記事を参照してください。

執筆時点では、Microsoft は SAP HANA 用の準備スクリプトとスナップショット後スクリプトを公開していません。 お客様またはシステム インテグレーターがこれらのスクリプトを作成し、上記のドキュメントに基づいて手順を構成する必要があります。

仮想マシンに対してアプリケーション整合性バックアップから復元を行う

Azure Backup には、Azure 仮想マシン バックアップ (回復ポイントとも呼ばれます) から Azure 仮想マシンおよびディスクを復元する機能が用意されています。 このセクションでは、Azure 仮想マシン バックアップからファイルとフォルダーを回復する方法について説明します。 ファイルとフォルダーの復元が可能なのは、Resource Manager モデルを使用してデプロイされ、Recovery Services コンテナーによって保護されている Azure 仮想マシンにおいてだけです。

ボリュームをマウントしてファイルをコピーする

  1. Azure portal にサインインし、左側のペインで [仮想マシン] を選択します。 仮想マシンの一覧から仮想マシンを選んで、その仮想マシンのメニューを開きます。

  2. 仮想マシンのメニューで [バックアップ] を選び、[バックアップ] ダッシュボードを開きます。

  3. [バックアップ] メニューの [ファイルの回復] を選びます。

  4. [回復ポイントの選択]ドロップ ダウン メニューから、目的のファイルを含む回復ポイントを選択します。 既定では、最新の回復ポイントが既に選択されています。

  5. 復旧ポイントからファイルをコピーするために使用されるソフトウェアをダウンロードするには、[実行可能ファイルのダウンロード] (Windows Azure 仮想マシンの場合) または [スクリプトのダウンロード] (Linux Azure 仮想マシンの場合。Python スクリプトが生成されます) を選択します。

  6. 実行可能ファイルまたはスクリプトは、パスワードで保護されているため、パスワードが必要です。 [ファイルの回復] メニューで、コピー ボタンを選んでパスワードをメモリに読み込みます。

  7. ダウンロード場所 (通常は [ダウンロード] フォルダー) から、実行可能ファイルまたはスクリプトを右クリックし、管理者の資格情報で実行します。 メッセージが表示されたら、パスワードを入力するか、またはメモリからのパスワードを貼り付けて、Enter キーを押します。 有効なパスワードが入力されると、スクリプトが復旧ポイントに接続されます。 アクセスが制限されたコンピューターでスクリプトを実行する場合は、次にアクセスできることを確認してください。

    • download.microsoft.com

    • リカバリ サービスの URL (geo 名はリカバリ サービス コンテナーが存在するリージョンを表します)

      • https://pod01-rec2.geo-name.backup.windowsazure.com (Azure の パブリック地域用)
      • https://pod01-rec2.geo-name.backup.windowsazure.cn (Azure China 21Vianet 用)
      • https://pod01-rec2.geo-name.backup.windowsazure.us (Azure US Government 用)
      • https://pod01-rec2.geo-name.backup.windowsazure.de (Azure Germany 用)
    • 送信ポート 3260

  8. マウントされたボリュームを確認します。

    • Windows: 実行可能ファイルを実行すると、オペレーティング システムによって新しいボリュームがマウントされ、ドライブ文字が割り当てられます。 Windows エクスプローラーまたはファイル エクスプローラーを使用してそれらのドライブを参照できます。 ボリュームに割り当てられるドライブ文字は、元の仮想マシンと同じ文字にならない可能性がありますが、ボリューム名は保持されます。 ファイルまたはフォルダーが表示されるまで、スクリプトの出力に示されているすべてのボリュームを参照します。
    • Linux: Linux では、回復ポイントのボリュームは、スクリプトが実行されるフォルダーにマウントされます。 それに応じて、接続されたディスク、ボリューム、対応するマウント パスが示されます。 これらのマウント パスは、ルート レベルのアクセス権を持つユーザーに表示されます。 スクリプトの出力に示されたボリュームを参照します。
  9. ファイルを確認し、ローカル ファイル システムにコピーします

  10. ファイルを識別してローカルの保存場所にコピーした後、追加のドライブを削除 (またはマウント解除) します。 ドライブをマウント解除するには、Azure portal の [ファイルの回復] メニューで [ディスクのマウント解除] を選択します。

Azure Backup サービスを介した HANA ライセンス キーと仮想マシンの復元

Azure Backup サービスでは、復元時に新しい仮想マシンを作成できます。 復元時の VM の作成、ディスクの復元、(前のセクションで説明した) ディスク内容の復元のいずれかを選択できます。 ディスクを復元した後、その上に新しい仮想マシンを作成する必要もあります。 Azure 上で新しい仮想マシンが作成されるたびに、一意の VM ID は変化します。

Azure Backup サービスを介した復元の結果、Azure 仮想マシンの一意 ID は変化します。 SAP ライセンスに使用される SAP ハードウェア キーでは、この一意の VM ID が使用されています。 その結果、仮想マシンの復元後に新しい SAP ライセンスをインストールする必要があります。

手動ディスク スナップショットを介した SAP HANA 仮想マシンのバックアップ

Azure Backup サービスを使用するのではなく、PowerShell を使用して Azure VHD の BLOB スナップショットを手動で作成することで、個別のバックアップ ソリューションを構成することができます。 これにより柔軟性が向上しますが、前述の問題は解決しません。

  • 引き続き、SAP HANA スナップショットを作成して、SAP HANA を整合性のある状態に保つ必要があります。
  • リースが存在することを示すエラーが原因で仮想マシンの割り当て解除が行われても、OS ディスクを上書きすることはできません。 これは仮想マシンの削除後にしか機能しないので、新しい一意の VM ID と新しい SAP ライセンスのインストールの必要が生じることになります。

以下の手順に従うことで、Azure 仮想マシンのデータ ディスクだけを復元することが可能です (新しい一意の VM ID の取得と、その結果の SAP ライセンスの無効化という問題を防ぐことができます)。

  1. SAP HANA スナップショット機能によって SAP HANA が整合性のある状態であったことを確認します。
  2. ファイル システムの凍結を実行します。
  3. データ ディスクから BLOB スナップショットを作成します。
  4. ファイル システムの凍結を解除します。
  5. SAP HANA スナップショットを確認します。
  6. 仮想マシンをシャットダウンし、データ ディスクをデタッチします。
  7. BLOB スナップショットに基づいて新しいディスクをアタッチします。
  8. HANA を HANA スナップショットに戻します。