チュートリアル:Azure CLI を使用して Azure VM 内の SAP HANA データベースをバックアップする

このチュートリアルでは、Azure CLI を使用して SAP HANA データベース インスタンスと SAP HANA システム レプリケーション (HSR) のインスタンスをバックアップする方法について説明します。

Azure CLI は、コマンドラインやスクリプトで Azure リソースを作成および管理するために使用します。 このドキュメントでは、Azure CLI のみを使用して、SAP HANA データベースをバックアップし、オンデマンド バックアップをトリガーする方法について詳しく説明します。 これらの手順は、Azure portal を使用して実行することもできます。

このドキュメントは、Azure VM に SAP HANA データベースが既にインストールされていることを前提としています (Azure CLI を使用して VM を作成することもできます)。

サポートされているシナリオの詳細については、SAP HANA のサポート マトリックスを参照してください。

前提条件

  • Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。

  • CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。

    • ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。

    • 初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。

    • az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。

  • このチュートリアルには、Azure CLI のバージョン 2.0.30 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。

Recovery Services コンテナーを作成する

Recovery Services コンテナーは、Azure VM や Azure VM 上で実行されているワークロード (SQL や HANA データベースなど) といった各保護リソースのバックアップ データを格納する論理コンテナーです。 保護されたリソースのバックアップ ジョブを実行すると、Recovery Services コンテナー内に復元ポイントが作成されます。 この復元ポイントのいずれかを使用して、データを特定の時点に復元できます。

az backup vault create を使用して Recovery Services コンテナーを作成します。 保護する VM と同じリソース グループと場所を指定します。 この VM のクイックスタートでは、Azure CLI を使用して VM を作成する方法について説明します。

データベースの種類を選ぶ

このチュートリアルでは以下を使用します。

  • saphanaResourceGroup という名前のリソース グループ
  • saphanaVM という名前の VM
  • westus2 の場所にあるリソース。

saphanaVault という名前のコンテナーを作成します。

az backup vault create --resource-group saphanaResourceGroup \
    --name saphanaVault \
    --location westus2

既定では、Recovery Services コンテナーが geo 冗長ストレージ用に設定されています。 geo 冗長ストレージでは、プライマリ リージョンから数百マイル離れたセカンダリ Azure リージョンにバックアップ データが確実にレプリケートされます。 ストレージの冗長性設定を変更する必要がある場合は、az backup vault backup-properties set コマンドレットを使用します。

az backup vault backup-properties set \
    --name saphanaVault  \
    --resource-group saphanaResourceGroup \
    --backup-storage-redundancy "LocallyRedundant/GeoRedundant"

コンテナーが正常に作成されたかどうかを確認するには、az backup vault list コマンドレットを使用します。 次の応答が表示されます。

Location   Name             ResourceGroup
---------  ---------------  -------------  
westus2    saphanaVault     saphanaResourceGroup

SAP HANA インスタンスの登録と保護

Azure サービスで SAP HANA インスタンス (SAP HANA がインストールされている VM) を検出するには、SAP HANA マシン上で事前登録スクリプトを実行する必要があります。 スクリプトを実行する前に、前提条件がすべて満たされていることを確認してください。 スクリプトで実行される処理の詳細については、「事前登録スクリプトで実行される処理」セクションをご参照ください。

このスクリプトを実行すると、前に作成した Recovery Services コンテナーに SAP HANA インスタンスを登録できます。

データベースの種類を選ぶ

データベースのインスタンスの登録と保護を行うには、次の手順に従います。

  1. インスタンスを登録するには、az backup container register コマンドを使用します。 VMResourceId は、SAP HANA をインストールするために作成した VM のリソース ID です。

    az backup container register --resource-group saphanaResourceGroup \
        --vault-name saphanaVault \
        --workload-type SAPHANA \
        --backup-management-type AzureWorkload \
        --resource-id VMResourceId
    

    注意

    VM がコンテナーと同じリソース グループにない場合、saphanaResourceGroup は、コンテナーが作成されたリソース グループを参照します。

    SAP HANA インスタンスを登録すると、現在のすべてのデータベースが自動的に検出されます。 ただし、今後追加される可能性のある新しいデータベースを検出するには、登録済み SAP HANA インスタンスに追加された新しいデータベースの検出に関するセクションを参照してください。

  2. SAP HANA インスタンスがコンテナーに正常に登録されているかどうかを確認するには、az backup container list コマンドレットを使用します。 次の応答が表示されます。

    Name                                                    Friendly Name    Resource Group        Type           Registration Status
    ------------------------------------------------------  --------------   --------------------  ---------      ----------------------
    VMAppContainer;Compute;saphanaResourceGroup;saphanaVM   saphanaVM        saphanaResourceGroup  AzureWorkload  Registered
    

    注意

    上記の出力の列 "name" は、コンテナー名を示しています。 このコンテナー名は、次のセクションで、バックアップを有効にしてトリガーするために使用されます。 この例では、VMAppContainer;Compute;saphanaResourceGroup;saphanaVM です。

SAP HANA データベースでバックアップを有効にする

az backup protect-item list コマンドレットを使うと、前の手順で登録した、SAP HANA インスタンスで検出されたすべてのデータベースが一覧表示されます。

データベースの種類を選ぶ

データベース インスタンスのバックアップを有効にするには、次の手順に従います。

  1. 保護するデータベースを一覧表示するには、次のコマンドを実行します。

    az backup protectable-item list --resource-group saphanaResourceGroup \
        --vault-name saphanaVault \
        --workload-type SAPHANA \
        --output table
    

    次のように、バックアップ対象のデータベースがこの一覧に表示されます。

    Name                           Protectable Item Type    ParentName    ServerName    IsProtected
    -----------------------------  ----------------------   ------------  -----------   ------------
    saphanasystem;hxe              SAPHanaSystem            HXE           hxehost       NotProtected  
    saphanadatabase;hxe;systemdb   SAPHanaDatabase          HXE           hxehost       NotProtected
    saphanadatabase;hxe;hxe        SAPHanaDatabase          HXE           hxehost       NotProtected
    

    上記の出力からわかるように、SAP HANA システムの SID は HXE です。 このチュートリアルでは、hxehost サーバー上にある saphanadatabase;hxe;hxe データベースのバックアップを構成します。

  2. データベースのバックアップの保護と構成を行うには、一つひとつのデータベースに az backup protection enable-for-azurewl コマンドレットを実行します。 使用するポリシーの名前を指定します。 CLI を使用してポリシーを作成するには、az backup policy create コマンドレットを使用します。 このチュートリアルでは、sapahanaPolicy ポリシーを使用します。

    az backup protection enable-for-azurewl --resource-group saphanaResourceGroup \
        --vault-name saphanaVault \
        --policy-name saphanaPolicy \
        --protectable-item-name "saphanadatabase;hxe;hxe"  \
        --protectable-item-type SAPHANADatabase \
        --server-name hxehost \
        --workload-type SAPHANA \
        --output table
    
  3. 上記のバックアップ構成が完了したかどうかを確認するには、az backup job list コマンドレットを使用します。 出力は次のように表示されます。

    Name                                  Operation         Status     Item Name   Start Time UTC
    ------------------------------------  ---------------   ---------  ----------  -------------------  
    e0f15dae-7cac-4475-a833-f52c50e5b6c3  ConfigureBackup   Completed  hxe         2019-12-03T03:09:210831+00:00  
    

az backup job list コマンドレットを実行すると、登録、バックアップの構成、バックアップ データの削除などの他の操作に加えて、保護されたデータベース上で実行されたか、現在実行中のすべてのバックアップ ジョブ (スケジュール済みまたはオンデマンド) が一覧表示されます。

Note

Azure Backup では、Azure VM で実行されている SAP HANA データベースをバックアップしている場合、夏時間変更に合わせた自動調整は行われません。

必要に応じて手動でポリシーを変更してください。

コンテナー名を取得する

コンテナー名を取得するには、次のコマンドを実行します。 この CLI コマンドについて説明します

    az backup item list --resource-group <resource group name> --vault-name <vault name>

オンデマンド バックアップをトリガーする

上記のセクションでは、スケジュールされたバックアップの構成方法について詳しく説明していますが、このセクションでは、オンデマンド バックアップのトリガーについて説明します。 これを行うには、az backup protection backup-now コマンドを使用します。

Note

このバックアップの保持期間は、実行したオンデマンド バックアップの種類によって決まります。

  • "オンデマンドの完全バックアップ" は、最短で "45 日間"、最大で "99 年間" 保持されます。
  • "オンデマンド差分バックアップ" は、"ポリシーに設定されているログ保持" に従って保持されます。
  • "オンデマンド増分バックアップ" は現在、サポートされていません。

データベースの種類を選ぶ

オンデマンド バックアップを実行するには、次のコマンドを実行します。

az backup protection backup-now --resource-group saphanaResourceGroup \
    --item-name saphanadatabase;hxe;hxe \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --backup-type Full
    --retain-until 01-01-2040
    --output table

出力は次のように表示されます。

Name                                  ResourceGroup
------------------------------------  -------------
e0f15dae-7cac-4475-a833-f52c50e5b6c3  saphanaResourceGroup

応答によってジョブ名がわかります。 このジョブ名を使用し、az backup job show コマンドレットを使用してジョブの状態を追跡できます。

注意

ログ バックアップは、内部的に SAP HANA によって自動的にトリガーおよび管理されます。

次のステップ