この記事では、Azure NetApp Files で使用できる Azure アプリケーション整合性スナップショット ツールのバックアップ コマンドを実行するためのガイドを提供します。
はじめに
ストレージ スナップショット ベースのバックアップは、azacsnap -c backup コマンドを使用して実行されます。 このコマンドを使用すると、DATA ボリューム上のデータベース整合性ストレージ スナップショットのオーケストレーションと、OTHER ボリューム上のストレージ スナップショット (データベース整合性の設定なし) が実行されます。
DATA ボリューム azacsnap ストレージ スナップショット用にデータベースを準備すると、構成されているすべてのボリュームのストレージ スナップショットが取得され、最後にスナップショットが完了したとデータベースに通知されます。 また、スナップショット バックアップ アクティビティを記録するデータベース カタログ (SAP HANA バックアップ カタログなど) も管理します。
コマンド オプション
-c backup コマンドは次の引数を使用します。
--volume=スナップショットするボリュームの種類。このパラメーターにはdata、other、またはallを含めることができます-
data構成ファイルのdataVolume節内のボリュームのスナップショットを設定します。-
data ボリューム スナップショット プロセス
- データベースをバックアップモードにします。
- 構成ファイルの
"dataVolume"スタンザに一覧表示されているボリュームのスナップショットを取得します。 - データベースのバックアップモードを終了します。
- スナップショット管理を行います。
-
data ボリューム スナップショット プロセス
-
other構成ファイルのotherVolume節内のボリュームのスナップショットを設定します。-
other ボリューム スナップショット プロセス
- 構成ファイルの
"otherVolume"スタンザに一覧表示されているボリュームのスナップショットを取得します。 - スナップショット管理を行います。
- 構成ファイルの
-
other ボリューム スナップショット プロセス
-
alldataVolume節にあるすべてのボリュームのスナップショットを取得し、その後、構成ファイルのotherVolume節にあるすべてのボリュームのスナップショットを取得します。 処理は、次の順序で行われます。-
all ボリューム スナップショット プロセス
-
data ボリューム スナップショット (通常の
--volume dataオプションと同じ)- データベースをバックアップモードにします。
- 構成ファイルの
"dataVolume"スタンザに一覧表示されているボリュームのスナップショットを取得します。 - データベースのバックアップモードを終了します。
- スナップショット管理を行います。
-
other ボリューム スナップショット (通常の
--volume otherオプションと同じ)- 構成ファイルの
"otherVolume"スタンザに一覧表示されているボリュームのスナップショットを取得します。 - スナップショット管理を行います。
- 構成ファイルの
-
data ボリューム スナップショット (通常の
-
all ボリューム スナップショット プロセス
Note
ブート ボリュームを otherVolume として使用して別の構成ファイルを作成することによって、
bootスナップショットをまったく異なるスケジュール (たとえば毎日) で実行できるようになります。-
--prefix=スナップショット名のユーザー スナップショット プレフィックス。 このパラメーターには 2 つの目的があります。 最初に、スナップショットをグループ化するための一意の名前を指定します。 2 つ目は、指定された--retentionに対して保持されるストレージ スナップショットの--prefixの数を決定します。重要
アルファベット ("A-Z、a-z、0-9")、アンダースコア ("_")、およびダッシュ ("-") 文字のみを使用できます。
--retention定義された--prefixのスナップショットを保持する数。 この--prefixに対して新しいスナップショットが作成されると、追加のスナップショットはすべて削除されます。--trimSAP HANA v2 以降では、このオプションを使用すると、バックアップ カタログと、ディスク カタログおよびログ バックアップが維持されます。--retentionオプションは、バックアップ カタログに保持するエントリの数を設定し、定義済みのプレフィックス (--prefix) の古いエントリをバックアップ カタログと関連する物理ログ バックアップから削除します。 また、ログ バックアップ以外の最古のエントリよりも古いログ バックアップ エントリも削除されます。 この--trim操作は、ログ バックアップが使用可能なすべてのディスク領域を使い切らないようにするのに役立ちます。Note
次のコマンド例では、9 つのストレージ スナップショットを保持し、保持されている 9 つのストレージ スナップショットと一致するようにバックアップ カタログが継続的にトリミングされるようにします。
azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim[--flush]データベースが "バックアップ モード" に設定された後、ボリュームの I/O バッファーをフラッシュするようにオペレーティング システム カーネルに要求するオプション。 以前のバージョンでは、"mountpoint" 値を使用してフラッシュするボリュームを示しました。AzAcSnap 10 では、--flushオプションで処理されます。 そのため、このキー/値 ("mountpoint") を構成ファイルから削除できます。Windows では、"Windows" または "Recovery" というラベルが付き、NTFS でフォーマットされたボリュームはフラッシュされません。 ボリューム ラベルに "noflush" を追加してもフラッシュされません。
重要
Windows でファイル バッファーをフラッシュするには、管理者特権が必要です。
- これらの例は、Windows で管理者特権を使用して
azacsnap.exe --flush ...を実行する方法です。- 管理者特権の CMD を起動します。
- Windows キーを押し、「cmd」と入力します。
- コマンド プロンプトを右クリックし、[管理者として実行] を選択します。
- 次に、管理者特権のウィンドウ内で
azacsnap.exeを実行します。
- 昇格で PowerShell を使用する:
Start-Process powershell -Verb RunAs -ArgumentList "-Command `"cd 'C:\Users\UserName\AzAcSnap'; .\azacsnap.exe -c backup --volume data --prefix adhoc --retention 1 -v --flush; pause`"" - タスク スケジューラを使用してサイレント昇格を行う:
- 自動化の場合は、管理者特権でスケジュールされたタスクを作成し、コマンド ラインを使用してトリガーできます。
- 管理者特権の CMD を起動します。
- これらの例は、Windows で管理者特権を使用して
Linux では、Linux
syncコマンドを使用してすべての I/O がフラッシュされます。
データベースを実行しているのと同じホストで次の例を実行すると、次のようになります。
- データベースを "バックアップ モード" にします。
- ローカル ボリュームの I/O バッファーのオペレーティング システム カーネル フラッシュを要求します (オペレーティング システム固有の詳細を参照)。
- ストレージ スナップショットを作成します。
- データベースを "バックアップ モード" から解放します。
azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim --flush[--ssl=]SAP HANA との通信に使用する暗号化方法を定義する省略可能なパラメーター (opensslまたはcommoncrypto)。 定義されている場合、azacsnap -c backupコマンドでは、同じディレクトリ内に 2 つのファイルが含まれていることが想定されています。これらのファイルには、対応する SID に基づく名前を付ける必要があります。 「SAP HANA との通信での SSL の使用」を参照してください。 次の例では、プレフィックスがhanaのhana_TEST型スナップショットを取得し、それらの9が SSL (openssl) を使用して SAP HANA と通信し続けます。azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim --ssl=openssl[--configfile <config filename>]は省略可能なパラメーターであり、カスタム構成ファイル名を使用できます。
高速なスナップショット バックアップ
スナップショット バックアップの期間は、ボリューム サイズに依存しません。 たとえば、10 TiB ボリュームは通常、10 GiB ボリュームと同時にスナップショットになります。
全体的な実行時間に影響を与える主な要因は、スナップショットされるボリュームの数と --retention パラメーターに加えた変更です (減らすとより多くのスナップショットが削除されるため、実行時間が長くなる可能性があります)。
Azure L インスタンスに提供されている構成例では、2 つのボリュームのスナップショットが完了するまでに 5 秒未満かかりました。 Azure NetApp Files の場合、2 つのボリュームのスナップショットには約 60 秒かかります。
Note
--retention値が前回のazacsnapの実行時間 (たとえば、--retention 50から--retention 5) よりもはるかに小さい場合は、追加のスナップショットを削除する必要azacsnapに応じて時間が増加します。
data パラメーターを使用した例
azacsnap -c backup --volume data --prefix hana_TEST --retention 9 --trim
このコマンドはコンソールには出力されませんが、ログ ファイル、結果ファイル、および /var/log/messagesに書き込みます。
この例では、 log ファイル 名が azacsnap-backup-azacsnap.log されます ( Log ファイルを参照)。
azacsnap オプションを指定して-c backup--volume data コマンド オプションを実行すると、バックアップの結果の確認を簡略化する結果ファイルも生成されます。 "結果" ファイルの名前は、ログ ファイルと同じベース名にサフィックス .result が付ついたものになります。
この例では、 result ファイル 名前が azacsnap-backup-azacsnap.result され、次の出力が含まれています。
cat logs/azacsnap-backup-azacsnap.result
Database # 1 (H80) : completed ok
/var/log/messages ファイルには、.result ファイルと同じ出力が含まれています。 次の例を参照してください (ルートとして実行)。
grep "azacsnap.*Database" /var/log/messages | tail -n10
Jul 2 05:22:07 server01 azacsnap[183868]: Database # 1 (H80) : completed ok
Jul 2 05:27:06 server01 azacsnap[4069]: Database # 1 (H80) : completed ok
Jul 2 05:32:07 server01 azacsnap[19769]: Database # 1 (H80) : completed ok
Jul 2 05:37:06 server01 azacsnap[35312]: Database # 1 (H80) : completed ok
Jul 2 05:42:06 server01 azacsnap[50877]: Database # 1 (H80) : completed ok
Jul 2 05:47:06 server01 azacsnap[66429]: Database # 1 (H80) : completed ok
Jul 2 05:52:06 server01 azacsnap[82964]: Database # 1 (H80) : completed ok
Jul 2 05:57:06 server01 azacsnap[98522]: Database # 1 (H80) : completed ok
Jul 2 05:59:13 server01 azacsnap[105519]: Database # 1 (H80) : completed ok
Jul 2 06:02:06 server01 azacsnap[114280]: Database # 1 (H80) : completed ok
other パラメーターを使用した例
azacsnap -c backup --volume other --prefix logs_TEST --retention 9
このコマンドはコンソールには出力されませんが、ログ ファイルにのみ書き込みます。 結果ファイルや へは "/var/log/messages"。
この例では、 log ファイル 名が azacsnap-backup-azacsnap.log されます ( Log ファイルを参照)。
other パラメーターを使用した例 (ホスト OS をバックアップする場合)
Note
ブート ボリュームのみが含まれる別の構成ファイル (--configfile bootVol.json) の使用。
azacsnap -c backup --volume other --prefix boot_TEST --retention 9 --configfile bootVol.json
重要
Azure Large Instance の場合、ブート ボリュームの構成ファイル ボリューム パラメーターが、ホスト オペレーティング システム レベルで表示されない可能性があります。 Microsoft Operations では、この値を指定できます。
このコマンドはコンソールには出力されませんが、ログ ファイルにのみ書き込みます。 結果ファイルや へは "/var/log/messages"。
この例では、 log ファイル 名が azacsnap-backup-bootVol.log されます ( Log ファイルを参照)。
ログ ファイル
ログ ファイル名は、次の "(コマンド名)-(-c オプション)-(構成ファイル名)" に基づいて作成されます。 たとえば、コマンドを実行 azacsnap -c backup --configfile h80.json --retention 5 --prefix one-off 場合、ログ ファイルは azacsnap-backup-h80.log呼び出されます。 または、同じ構成ファイル (-c test など) で azacsnap -c test --configfile h80.json オプションを使用する場合、ログ ファイルはazacsnap-test-h80.log呼び出されます。
Note
ログ ファイルは、このガイド を使用して自動的に管理することができます。