Azure アプリケーション整合性スナップショット ツールをインストールする
この記事では、Azure NetApp Files または Azure L インスタンスで使用できる Azure アプリケーション整合性スナップショット ツール (AzAcSnap) をインストールするためのガイドを提供します。
重要
分散インストールは、プライベート ネットワークにデプロイされるため、Azure L インスタンス システムの唯一のオプションです。 接続を確保するには、各システムに AzAcSnap をインストールする必要があります。
ダウンロード可能な自己インストーラーを使用すると、スナップショット ツールを簡単に設定し、ルート以外のユーザー特権 (たとえば、azacsnap
) で実行できます。 インストーラーによってユーザーが設定され、スナップショット ツールがユーザーの $HOME/bin
サブディレクトリに配置されます。 既定値は、/home/azacsnap/bin
です。
自己インストーラーは、インストールを実行しているユーザーの構成 (ルートなど) に基づいて、すべてのファイルの正しい設定とパスを決定しようとします。 ストレージと SAP HANA との通信を有効にする前提条件の手順がルートとして実行されている場合、インストールによって秘密キーと hdbuserstore
がバックアップ ユーザーの場所にコピーされます。 知識のある管理者は、インストール後にストレージ バックエンドと SAP HANA との通信を有効にする手順を手動で実行できます。
インストールの前提条件
ガイドラインに従って、スナップショットとディザスター リカバリー コマンドを設定して実行します。 スナップショット ツールをインストールして使用する前に、ルートとして次の手順を実行することをお勧めします:
オペレーティング システムにパッチを適用し、SUSE サブスクリプション管理ツール (SMT) を設定します。 詳細については、SAP HANA on Azure (L インスタンス) のインストールと構成に関する記事をご覧ください。
時刻同期を設定します。 ネットワーク タイム プロトコル (NTP) と互換性のあるタイム サーバーを提供し、それに応じてオペレーティング システムを構成します。
データベースをインストールします。 使用している、サポートされているデータベースの指示に従います。
デプロイに使用しているストレージ バックエンドを選択します。 詳細については、この記事で後述する「ストレージとの通信を有効にする」を参照してください。
システムマネージド ID を設定するか、サービス プリンシパルの認証ファイルを生成します。
Azure NetApp Files との通信を検証している場合、通信が失敗したりタイムアウトしたりする可能性があります。AzAcSnap を実行しているシステムから次のアドレスと TCP/IP ポートへの送信トラフィックがファイアウォール規則によってブロックされていないことを確認します:
- (https://)management.azure.com:443
- (https://)login.microsoftonline.com:443
データベースとの通信を有効にします。 詳細については、この記事で後述する「データベースとの通信を有効にする」を参照してください。
この記事の「データベースとの通信を有効にする」セクションの手順に従って、適切な SAP HANA ユーザーを設定します。
セットアップ後、次の例を使用して、コマンド ラインから接続をテストできます。 次の例は、SAP HANA への SSL コミュニケーション用です。
HANA 1.0:
hdbsql -n <HANA IP address> -i <HANA instance> -U <HANA user> "\s"
HANA 2.0:
hdbsql -n <HANA IP address> -i <HANA instance> -d SYSTEMDB -U <HANA user> "\s"
ストレージとの通信を有効にする
このセクションでは、ストレージとの通信を有効にする方法について説明します。 次のタブを使用して、使用しているストレージ バックエンドを正しく選択します。
システム マネージド ID またはサービス プリンシパル ファイルを使用して Azure Resource Manager に対して認証する方法は 2 つあります。 オプションについては、以下で説明します。
Azure システム マネージド ID
AzAcSnap 9 からは、操作にサービス プリンシパルの代わりにシステムマネージド ID を使用できます。 この機能を使用すると、サービス プリンシパルの資格情報を仮想マシン (VM) に格納する必要がなくなります。 Azure Cloud Shell を使用して Azure マネージド ID を設定するには、次の手順に従います:
Bash との Cloud Shell セッション内で、次の例を使用してシェル変数を適切に設定し、Azure マネージド ID を作成するサブスクリプションに適用します。
SUBSCRIPTION
、VM_NAME
、RESOURCE_GROUP
をサイト固有の値に設定します。export SUBSCRIPTION="99z999zz-99z9-99zz-99zz-9z9zz999zz99" export VM_NAME="MyVM" export RESOURCE_GROUP="MyResourceGroup" export ROLE="Contributor" export SCOPE="/subscriptions/${SUBSCRIPTION}/resourceGroups/${RESOURCE_GROUP}"
Cloud Shell を正しいサブスクリプションに設定します:
az account set -s "${SUBSCRIPTION}"
仮想マシンのマネージド ID を作成します。 次のコマンドは、AzAcSnap VM のマネージド ID を設定します (または既に設定されているかどうかを示します):
az vm identity assign --name "${VM_NAME}" --resource-group "${RESOURCE_GROUP}"
ロールを割り当てるためのプリンシパル ID を取得します:
PRINCIPAL_ID=$(az resource list -n ${VM_NAME} --query [*].identity.principalId --out tsv)
プリンシパル ID に共同作成者ロールを割り当てます:
az role assignment create --assignee "${PRINCIPAL_ID}" --role "${ROLE}" --scope "${SCOPE}"
省略可能な RBAC
ロールベースのアクセス制御 (RBAC) でカスタム ロール定義を使用して、マネージド ID のアクセス許可を制限できます。 スナップショットを管理できるように、仮想マシンに適したロール定義を作成します。 アクセス許可設定の例については、「Azure アプリケーション整合性スナップショット ツールを使用するためのヒントとテクニック」を参照してください。
次に、ロールを Azure VM プリンシパル ID に割り当てます (SystemAssignedIdentity
とも表示されます):
az role assignment create --assignee ${PRINCIPAL_ID} --role "AzAcSnap on ANF" --scope "${SCOPE}"
サービス プリンシパル ファイルの生成
Cloud Shell セッションで、既定でサービス プリンシパルに関連付けるサブスクリプションでログオンしていることを確認します:
az account show
サブスクリプションが正しくない場合は、
az account set
コマンドを使用します:az account set -s <subscription name or id>
次の例に示すように、Azure CLI を使用してサービス プリンシパルを作成します:
az ad sp create-for-rbac --name "AzAcSnap" --role Contributor --scopes /subscriptions/{subscription-id} --sdk-auth
このコマンドは、次の例のような出力を生成する必要があります:
{ "clientId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a", "clientSecret": "00aa000a-aaaa-0000-00a0-00aa000aaa0a", "subscriptionId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a", "tenantId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a", "activeDirectoryEndpointUrl": "https://login.microsoftonline.com", "resourceManagerEndpointUrl": "https://management.azure.com/", "activeDirectoryGraphResourceId": "https://graph.windows.net/", "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/", "galleryEndpointUrl": "https://gallery.azure.com/", "managementEndpointUrl": "https://management.core.windows.net/" }
このコマンドは、RBAC 共同作成者ロールをサブスクリプション レベルでサービス プリンシパルに自動的に割り当てます。 テストでリソースを作成する特定のリソース グループにスコープを絞り込むことができます。
出力コンテンツを、
azacsnap
コマンドと同じシステムに格納されているazureauth.json
というファイルに切り取って貼り付けます。 適切なシステムアクセス許可でファイルをセキュリティで保護します。JSON ファイルの形式が前の手順で説明したとおりであることを確認し、URL を二重引用符 (") で囲みます。
データベースとの通信を有効にする
このセクションでは、データベースとの通信を有効にする方法について説明します。 次のタブを使用して、使用しているデータベースを正しく選択します。
一元化された仮想マシンにデプロイする場合は、AzAcSnap ユーザーが hdbsql
コマンドと hdbuserstore
コマンドを実行できるように SAP HANA クライアントをインストールして設定する必要があります。 SAP HANA クライアントは、SAP Development Tools Web サイト からダウンロードできます。
スナップショット ツールは SAP HANA と通信し、データベースのセーブ ポイントを開始および解放するための適切なアクセス許可を持つユーザーが必要です。 次の例は、SAP HANA 2.0 ユーザーのセットアップと、SAP HANA データベースとの通信のための hdbuserstore
を示しています。
次のコマンド例では、SAP HANA 2.0 データベース上の SYSTEMDB でユーザー (AZACSNAP
) を設定します。 必要に応じて、IP アドレス、ユーザー名、パスワードを変更します。
SYSTEMDB に接続します:
hdbsql -n <IP_address_of_host>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD>
Welcome to the SAP HANA Database interactive terminal. Type: \h for help with commands \q to quit hdbsql SYSTEMDB=>
ユーザーを作成します。 この例では、SYSTEMDB に
AZACSNAP
ユーザーを作成します:hdbsql SYSTEMDB=> CREATE USER AZACSNAP PASSWORD <AZACSNAP_PASSWORD_CHANGE_ME> NO FORCE_FIRST_PASSWORD_CHANGE;
ユーザーにアクセス許可を付与します。 この例では、データベース整合性ストレージ スナップショットを実行できるように、
AZACSNAP
ユーザーのアクセス許可を設定します:SAP HANA バージョン 2.0 SPS 03 までのリリースに対応。
hdbsql SYSTEMDB=> GRANT BACKUP ADMIN, CATALOG READ TO AZACSNAP;
SAP HANA のバージョン2.0 SPS 04 以降のリリースでは、SAP は新たに、きめ細かい特権を追加しました。
hdbsql SYSTEMDB=> GRANT BACKUP ADMIN, DATABASE BACKUP ADMIN, CATALOG READ TO AZACSNAP;
省略可能 - ユーザーのパスワードが期限切れにならないようにします。
Note
この変更を行う前に、会社のポリシーを確認します。
次の例では、
AZACSNAP
ユーザーのパスワードの有効期限を無効にします。 この変更がないと、ユーザーのパスワードが期限切れになり、スナップショットが正しく取得されない可能性があります。hdbsql SYSTEMDB=> ALTER USER AZACSNAP DISABLE PASSWORD LIFETIME;
SAP HANA Secure User Store を設定する(パスワードを変更する)。 この例では、Linux シェルから
hdbuserstore
コマンドを使用して、SAP HANA Secure User Store を設定します:hdbuserstore Set AZACSNAP <IP_address_of_host>:30013 AZACSNAP <AZACSNAP_PASSWORD_CHANGE_ME>
SAP HANA Secure User Store が正しく設定されていることを確認します。 次の例と同様に、
hdbuserstore
コマンドを使用して出力を一覧表示します。hdbuserstore
の使用について詳しくは、SAP の Web サイトを参照してください。hdbuserstore List
DATA FILE : /home/azacsnap/.hdb/sapprdhdb80/SSFS_HDB.DAT KEY FILE : /home/azacsnap/.hdb/sapprdhdb80/SSFS_HDB.KEY KEY AZACSNAP ENV : <IP_address_of_host>: USER: AZACSNAP
SAP HANA との通信での SSL の使用
AzAcSnap では、SAP HANA の hdbsql
コマンドを使用して SAP HANA と通信します。 hdbsql
を使用すると、SSL オプションを使用して SAP HANA との通信を暗号化できます。
AzAcSnap では、azacsnap --ssl
オプションを使用している場合、常に次のオプションが使用されます:
-e
: TLS/SSL 暗号化を有効にします。 サーバーにより、使用可能な最も高いレベルのものが選択されます。-ssltrustcert
: サーバーの証明書を検証するかどうかを指定します。-sslhostnameincert "*"
: サーバーの ID を検証するホスト名を指定します。 ホスト名として"*"
を指定した場合、サーバーのホスト名は検証されません。
SSL 通信には、キー ストアおよびトラスト ストア ファイルも必要です。 これらのファイルは、Linux インストール上の既定の場所に格納される可能性があります。 ただし、さまざまな SAP HANA システムで適切なキー マテリアルが使用されるようにするために (各 SAP HANA システムで異なるキー ストア ファイルとトラストストア ファイルが使用される場合)、AzAcSnap ではキー ストア ファイルとトラストストア ファイルが securityPath
の場所に格納されることを想定しています。 AzAcSnap 構成ファイルは、この場所を指定します。
キー ストア ファイル
同じキー マテリアルで複数のシステム識別子 (SID) を使用している場合は、AzAcSnap 構成ファイルで定義されているように securityPath
の場所へのリンクを簡単に作成できます。 SSL を使用するすべての SID に対してこれらの値が存在することを確認します。
openssl
の場合:ln $HOME/.ssl/key.pem <securityPath>/<SID>_keystore
commoncrypto
の場合:ln $SECUDIR/sapcli.pse <securityPath>/<SID>_keystore
SID ごとに異なるキー マテリアルを持つ複数の SID を使用している場合は、SID の AzAcSnap 構成ファイルで定義されているように securityPath
の場所にファイルをコピー (または移動および名前変更) します。
openssl
の場合:mv key.pem <securityPath>/<SID>_keystore
commoncrypto
の場合:mv sapcli.pse <securityPath>/<SID>_keystore
AzAcSnap が hdbsql
を呼び出すと、hdbsql
コマンド ラインに -sslkeystore=<securityPath>/<SID>_keystore
が追加されます。
トラスト ストア ファイル
同じキー マテリアルで複数の SID を使用している場合は、AzAcSnap 構成ファイルで定義されているように securityPath
の場所へのハード リンクを作成します。 SSL を使用するすべての SID に対してこれらの値が存在することを確認します。
openssl
の場合:ln $HOME/.ssl/trust.pem <securityPath>/<SID>_truststore
commoncrypto
の場合:ln $SECUDIR/sapcli.pse <securityPath>/<SID>_truststore
SID ごとに異なるキー マテリアルを持つ複数の SID を使用している場合は、SID の AzAcSnap 構成ファイルで定義されているように securityPath
の場所にファイルをコピー (または移動および名前変更) します。
openssl
の場合:mv trust.pem <securityPath>/<SID>_truststore
commoncrypto
の場合:mv sapcli.pse <securityPath>/<SID>_truststore
ファイル名の <SID>
コンポーネントは、すべて大文字 (H80
や PR1
など) の SAP HANA システム識別子である必要があります。 AzAcSnap が hdbsql
を呼び出すと、コマンド ラインに -ssltruststore=<securityPath>/<SID>_truststore
が追加されます。
azacsnap -c test --test hana --ssl openssl
を実行すると (SID
は構成ファイルの H80
)、次のように hdbsql
接続が実行されます:
hdbsql \
-e \
-ssltrustcert \
-sslhostnameincert "*" \
-sslprovider openssl \
-sslkeystore ./security/H80_keystore \
-ssltruststore ./security/H80_truststore
"sql statement"
上記のコードでは、バックスラッシュ (\
) 文字は、コマンド ラインで渡される複数のパラメーターをわかりやすくするためのコマンド ライン ラップです。
スナップショット ツールをインストールする
ダウンロード可能な自己インストーラーを使用すると、スナップショット ツールを簡単に設定し、ルート以外のユーザー特権 (たとえば、azacsnap
) で実行できます。 インストーラーによってユーザーが設定され、スナップショット ツールがユーザーの $HOME/bin
サブディレクトリに配置されます。 既定値は、/home/azacsnap/bin
です。
自己インストーラーにより、インストールを行うユーザーの構成 (ルートなど) に基づいて、すべてのファイルの正しい設定とパスの判別が試みられます。 ストレージと SAP HANA との通信を有効にする前のセットアップ手順をルートとして実行した場合、インストールによって秘密キーと hdbuserstore
がバックアップ ユーザーの場所にコピーされます。 知識のある管理者は、インストール後にストレージ バックエンドとデータベースとの通信を有効にする手順を手動で実行できます。
Note
SAP HANA on Azure Large Instances の以前のインストールでは、プレインストールされたスナップショット ツールのディレクトリは /hana/shared/<SID>/exe/linuxx86_64/hdb
でした。
の前提条件の手順が完了したので、次のように自己インストーラーを使用してスナップショット ツールをインストールできるようになりました:
- ダウンロードした自己インストーラーをターゲット システムにコピーします。
- ルート ユーザーとして自己インストーラーを実行します。 必要に応じて、
chmod +x *.run
コマンドを使用してファイルを実行可能にします。
引数を指定せずに自己インストーラー コマンドを実行すると、インストーラーの使用に関するヘルプが次のように表示されます:
chmod +x azacsnap_installer_v5.0.run
./azacsnap_installer_v5.0.run
Usage: ./azacsnap_installer_v5.0.run [-v] -I [-u <HLI Snapshot Command user>]
./azacsnap_installer_v5.0.run [-v] -X [-d <directory>]
./azacsnap_installer_v5.0.run [-h]
Switches enclosed in [] are optional for each command line.
- h prints out this usage.
- v turns on verbose output.
- I starts the installation.
- u is the Linux user to install the scripts into, by default this is
'azacsnap'.
- X will only extract the commands.
- d is the target directory to extract into, by default this is
'./snapshot_cmds'.
Examples of a target directory are ./tmp or /usr/local/bin
自己インストーラーには、ユーザーの作成とセットアップを実行せずに、バンドルからスナップショット ツールを抽出 (-X
) するオプションがあります。 その後、経験豊富な管理者がセットアップ手順を手動で完了するか、コマンドをコピーして既存のインストールをアップグレードできます。
スナップショット ツールの簡単なインストールを使用する (既定)
インストーラーは、SAP HANA on Azure のスナップショット ツールをすばやくインストールできます。 既定では、-I
オプションのみを使用してインストーラーを実行すると、次の手順が実行されます:
スナップショット ユーザー
azacsnap
を作成し、ホーム ディレクトリを作成し、グループ メンバーシップを設定します。azacsnap
ユーザーのログイン~/.profile
情報を構成します。AzAcSnap の
$PATH
に追加するディレクトリをファイル システムで検索します。 このタスクにより、AzAcSnap を実行するユーザーは、hdbsql
やhdbuserstore
などの SAP HANA コマンドを使用できます。AzAcSnap の
$LD_LIBRARY_PATH
に追加するディレクトリをファイル システムで検索します。 多くのコマンドでは、ライブラリ パスを正しく実行するように設定する必要があります。 このタスクは、インストールされているユーザーに対して構成します。ルート ユーザー (インストールを実行しているユーザー) から AzAcSnap のバックエンド ストレージの SSH キーをコピーします。
このタスクは、ルート ユーザーがストレージへの接続を既に構成していることを前提としています。 詳細については、前のセクション「ストレージとの通信を有効にする」を参照してください。
ターゲット ユーザー、
azacsnap
の SAP HANA 接続のセキュリティで保護されたユーザー ストアをコピーする。 このタスクは、ルート ユーザーがセキュリティで保護されたユーザー ストアを既に構成していることを前提としています。 詳細については、前のセクション「データベースとの通信を有効にする」を参照してください。スナップショット ツールは
/home/azacsnap/bin/
に抽出されます。/home/azacsnap/bin/
のコマンドには、所有権や実行可能ビットなど、アクセス許可が設定されています。
次の例は、既定のインストール オプションを使用してインストーラーを実行するときの正しい出力を示しています:
./azacsnap_installer_v5.0.run -I
+-----------------------------------------------------------+
| Azure Application Consistent Snapshot tool Installer |
+-----------------------------------------------------------+
|-> Installer version '5.0'
|-> Create Snapshot user 'azacsnap', home directory, and set group membership.
|-> Configure azacsnap .profile
|-> Search filesystem for directories to add to azacsnap's $PATH
|-> Search filesystem for directories to add to azacsnap's $LD_LIBRARY_PATH
|-> Copying SSH keys for back-end storage for azacsnap.
|-> Copying HANA connection keystore for azacsnap.
|-> Extracting commands into /home/azacsnap/bin/.
|-> Making commands in /home/azacsnap/bin/ executable.
|-> Creating symlink for hdbsql command in /home/azacsnap/bin/.
+-----------------------------------------------------------+
| Install complete! Follow the steps below to configure. |
+-----------------------------------------------------------+
+-----------------------------------------------------------+
| Install complete! Follow the steps below to configure. |
+-----------------------------------------------------------+
1. Change into the snapshot user account.....
su - azacsnap
2. Set up the HANA Secure User Store..... (command format below)
hdbuserstore Set <ADMIN_USER> <HOSTNAME>:<PORT> <admin_user> <password>
3. Change to location of commands.....
cd /home/azacsnap/bin/
4. Configure the customer details file.....
azacsnap -c configure --configuration new
5. Test the connection to storage.....
azacsnap -c test --test storage
6. Test the connection to HANA.....
a. without SSL
azacsnap -c test --test hana
b. with SSL, you will need to choose the correct SSL option
azacsnap -c test --test hana --ssl=<commoncrypto|openssl>
7. Run your first snapshot backup..... (example below)
azacsnap -c backup --volume=data --prefix=hana_test --frequency=15min --retention=1
スナップショット ツールをアンインストールする
既定の設定を使用してスナップショット ツールをインストールした場合、アンインストールで必要なのは、コマンドをインストールしたユーザーの削除のみです。 既定値は、azacsnap
です。
userdel -f -r azacsnap
スナップショット ツールを手動でインストールする
場合によっては、ツールを手動でインストールする必要があります。 ただし、インストーラーの既定のオプションを使用して、このプロセスを容易にすることをお勧めします。
ポンド (#
) 文字で始まる各行は、ルート ユーザーが文字の後にコマンドの例を実行することを示しています。 行の末尾にある円記号 (\
) は、シェル コマンドの標準的な行連結文字です。
ルート スーパーユーザーは、次の手順に従って手動でインストールできます:
sapsys
グループ ID を取得します。 この場合、グループ ID は1010
です。grep sapsys /etc/group
sapsys:x:1010:
スナップショット ユーザー
azacsnap
を作成し、ホーム ディレクトリを作成し、手順 1 のグループ ID を使用してグループ メンバーシップを設定します:useradd -m -g 1010 -c "Azure SAP HANA Snapshots User" azacsnap
azacsnap
ユーザーのログイン.profile
情報が存在することを確認します:echo "" >> /home/azacsnap/.profile
AzAcSnap の
$PATH
に追加するディレクトリをファイル システムで検索します。 通常、これらのディレクトリは、hdbsql
やhdbuserstore
などの SAP HANA ツールへのパスです。HDBSQL_PATH=`find -L /hana/shared/[A-z0-9][A-z0-9][A-z0-9]/HDB*/exe /usr/sap/hdbclient -name hdbsql -exec dirname {} + 2> /dev/null | sort | uniq | tr '\n' ':'`
更新された
$PATH
情報をユーザーのプロファイルに追加します:echo "export PATH=\"\$PATH:$HDBSQL_PATH\"" >> /home/azacsnap/.profile
AzAcSnap の
$LD_LIBRARY_PATH
に追加するディレクトリをファイル システムで検索します:NEW_LIB_PATH=`find -L /hana/shared/[A-z0-9][A-z0-9][A-z0-9]/HDB*/exe /usr/sap/hdbclient -name "*.so" -exec dirname {} + 2> /dev/null | sort | uniq | tr '\n' ':'`
更新されたライブラリ パスをユーザーのプロファイルに追加します:
echo "export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH:$NEW_LIB_PATH\"" >> /home/azacsnap/.profile
ストレージ バックエンドに応じて、次のアクションを実行します:
.NET Core の単一ファイル抽出ガイダンスに従って、ユーザーの
DOTNET_BUNDLE_EXTRACT_BASE_DIR
パスを構成します。SUSE Linux には次のコードを使用します:
echo "export DOTNET_BUNDLE_EXTRACT_BASE_DIR=\$HOME/.net" >> /home/azacsnap/.profile echo "[ -d $DOTNET_BUNDLE_EXTRACT_BASE_DIR] && chmod 700 $DOTNET_BUNDLE_EXTRACT_BASE_DIR" >> /home/azacsnap/.profile
RHEL には次のコードを使用します:
echo "export DOTNET_BUNDLE_EXTRACT_BASE_DIR=\$HOME/.net" >> /home/azacsnap/.bash_profile echo "[ -d $DOTNET_BUNDLE_EXTRACT_BASE_DIR] && chmod 700 $DOTNET_BUNDLE_EXTRACT_BASE_DIR" >> /home/azacsnap/.bash_profile
ターゲット ユーザー、
azacsnap
の SAP HANA 接続のセキュリティで保護されたユーザー ストアをコピーする。 この手順では、ルート ユーザーがセキュリティで保護されたユーザー ストアを既に構成していることを前提としています。 詳細については、前のセクション「データベースとの通信を有効にする」を参照してください。cp -pr ~/.hdb /home/azacsnap/.
hdbuserstore
ファイルに対してユーザーのアクセス許可を正しく設定します:chown -R azacsnap.sapsys /home/azacsnap/.hdb
スナップショット ツールを
/home/azacsnap/bin/
に抽出します:./azacsnap_installer_v5.0.run -X -d /home/azacsnap/bin
コマンドを実行可能にします:
chmod 700 /home/azacsnap/bin/*
ユーザーのホーム ディレクトリに適切な所有権のアクセス許可が設定されていることを確認します:
chown -R azacsnap.sapsys /home/azacsnap/*
スナップショット ツールの設定を完了する
インストーラーには、スナップショット ツールをインストールした後に完了する手順が用意されています。
次の出力は、既定のインストール オプションを使用してインストーラーを実行した後に完了する手順を示しています。 スナップショット ツールを構成してテストするには、これらの手順に従います。
1. Change into the snapshot user account.....
su - azacsnap
2. Set up the HANA Secure User Store.....
hdbuserstore Set <ADMIN_USER> <HOSTNAME>:<PORT> <admin_user> <password>
3. Change to location of commands.....
cd /home/azacsnap/bin/
4. Configure the customer details file.....
azacsnap -c configure --configuration new
5. Test the connection to storage.....
azacsnap -c test --test storage
6. Test the connection to HANA.....
a. without SSL
azacsnap -c test --test hana
b. with SSL, you will need to choose the correct SSL option
azacsnap -c test --test hana --ssl=<commoncrypto|openssl>
7. Run your first snapshot backup.....
azacsnap -c backup --volume=data --prefix=hana_test --retention=1
インストール前にデータベースとの通信を有効にしなかった場合は、手順 2 が必要です。
テスト コマンドが正しく実行されると、テストは成功します。 その後、最初のデータベース整合性ストレージ スナップショットを実行できます。
データベースを構成する
このセクションでは、データベースを構成する方法について説明します。
SAP HANA の構成
ログ バックアップとカタログを保護するために SAP HANA に適用できる変更があります。 既定では、basepath_logbackup
と basepath_catalogbackup
が設定され、SAP HANA によって関連ファイルが $(DIR_INSTANCE)/backup/log
ディレクトリに配置されます。 AzAcSnap がスナップショットを作成するように構成されているボリューム上にこの場所がある可能性は低いので、ストレージ スナップショットはこれらのファイルを保護しません。
次の hdbsql
コマンドの例は、AzAcSnap でスナップショットを作成できるストレージ ボリューム上の場所にログとカタログ のパスを設定する方法を示しています。 コマンド ラインの値がローカルの SAP HANA 構成と一致していることを確認してください。
ログ バックアップの場所を構成する
この例では、basepath_logbackup
パラメーターの変更を示します:
hdbsql -jaxC -n <HANA_ip_address>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD> "ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'basepath_logbackup') = '/hana/logbackups/H80' WITH RECONFIGURE"
カタログ バックアップの場所を構成する
この例では、basepath_catalogbackup
パラメーターの変更を示します。 まず、basepath_catalogbackup
パスがファイル システムに存在することを確認します。 そうでない場合は、ディレクトリと同じ所有権を持つパスを作成します。
ls -ld /hana/logbackups/H80/catalog
drwxr-x--- 4 h80adm sapsys 4096 Jan 17 06:55 /hana/logbackups/H80/catalog
パスを作成する必要がある場合、次の例ではパスを作成し、適切な所有権とアクセス許可を設定します。 これらのコマンドをルートとして実行する必要があります。
mkdir /hana/logbackups/H80/catalog
chown --reference=/hana/shared/H80/HDB00 /hana/logbackups/H80/catalog
chmod --reference=/hana/shared/H80/HDB00 /hana/logbackups/H80/catalog
ls -ld /hana/logbackups/H80/catalog
drwxr-x--- 4 h80adm sapsys 4096 Jan 17 06:55 /hana/logbackups/H80/catalog
次の例では、SAP HANA の設定を変更します:
hdbsql -jaxC -n <HANA_ip_address>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD> "ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'basepath_catalogbackup') = '/hana/logbackups/H80/catalog' WITH RECONFIGURE"
ログおよびカタログのバックアップの場所を確認する
ログとカタログのバックアップの場所に変更を加えた後、次のコマンドを使用して設定が正しいことを確認します。
この例では、設定は SYSTEM
設定として表示されます。 このクエリは、比較のために DEFAULT
設定も返します。
hdbsql -jaxC -n <HANA_ip_address> - i 00 -U AZACSNAP "select * from sys.m_inifile_contents where (key = 'basepath_databackup' or key ='basepath_datavolumes' or key = 'basepath_logbackup' or key = 'basepath_logvolumes' or key = 'basepath_catalogbackup')"
global.ini,DEFAULT,,,persistence,basepath_catalogbackup,$(DIR_INSTANCE)/backup/log
global.ini,DEFAULT,,,persistence,basepath_databackup,$(DIR_INSTANCE)/backup/data
global.ini,DEFAULT,,,persistence,basepath_datavolumes,$(DIR_GLOBAL)/hdb/data
global.ini,DEFAULT,,,persistence,basepath_logbackup,$(DIR_INSTANCE)/backup/log
global.ini,DEFAULT,,,persistence,basepath_logvolumes,$(DIR_GLOBAL)/hdb/log
global.ini,SYSTEM,,,persistence,basepath_catalogbackup,/hana/logbackups/H80/catalog
global.ini,SYSTEM,,,persistence,basepath_datavolumes,/hana/data/H80
global.ini,SYSTEM,,,persistence,basepath_logbackup,/hana/logbackups/H80
global.ini,SYSTEM,,,persistence,basepath_logvolumes,/hana/log/H80
ログ バックアップのタイムアウトの構成
ログ バックアップを実行する SAP HANA の既定の設定は 900
秒 (15 分) です。 この値を 300
秒 (5 分) に減らすことをおすすめします。 そして、これらのファイルの定期的なバックアップを実行することが可能です(例えば、10分ごとなど)。 これらのバックアップを作成するには、構成ファイルの OTHER
ボリューム セクションに log_backup
ボリュームを追加します。
hdbsql -jaxC -n <HANA_ip_address>:30013 -i 00 -u SYSTEM -p <SYSTEM_USER_PASSWORD> "ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'log_backup_timeout_s') = '300' WITH RECONFIGURE"
ログ バックアップのタイムアウトを確認する
ログ バックアップタイムアウトに変更を加えた後、次のコマンドを使用してタイムアウトが設定されていることを確認します。
この例では、設定は SYSTEM
設定として表示されます。 このクエリは、比較のために DEFAULT
設定も返します。
hdbsql -jaxC -n <HANA_ip_address> - i 00 -U AZACSNAP "select * from sys.m_inifile_contents where key like '%log_backup_timeout%' "
global.ini,DEFAULT,,,persistence,log_backup_timeout_s,900
global.ini,SYSTEM,,,persistence,log_backup_timeout_s,300