Volume Recovery Queueの使用方法
環境
- ONTAP 9
概要
タイプがRWまたはDP(volume showコマンドの出力で確認できます)のボリュームに対するボリューム削除リクエストは、そのボリュームを部分的に削除された状態に移行させます。デフォルトでは、完全に削除されるまで少なくとも12時間はリカバリキューに保持されます。
- ONTAP 9.1以降でFlexGroupボリュームを削除すると、メンバーボリュームまたは構成ボリュームは、保持期間が終了するまでボリュームリカバリキューに移動されます。
- 9.7以降では、System Managerを使用して削除されたボリュームをリカバリできます: ONTAP System Manager > 削除されたボリュームのリカバリ。
- ONTAP 9.5以降では、vserverを削除すると、そのvserverの以前に削除されたボリュームがリカバリキューから自動的に削除されます。関連付けられたvserverを削除した後は、リカバリキューからボリュームをリカバリすることはできません。
手順
ボリュームの削除
回復キューに追加された削除済みボリュームに対して、次のアクションが実行されます:
- ジャンクションマッピング(つまり、
volume unmount)を削除します - LUNマッピングを削除します
- Snapshotポリシーを削除します
- エクスポートポリシーを削除します
- QoSポリシーを削除します
- クォータポリシールールを削除します
- ボリュームの状態が「
pending delete」に変更されました。 (ボリュームをオンラインにすることや、名前の変更、リカバリ、および完全な破棄以外のボリュームに対する操作を禁止します。また、診断権限レベルを除き、多くのコマンドの出力からボリュームを非表示にします。) - ボリュームの名前が変更されました。 (新しいボリューム名は「
<oldname>_<DSID>」としてフォーマットされます)
リカバリキュー内のボリューム数
この部分的に削除された状態のボリュームはWAFLやその他のボリュームテーブルに引き続き存在します。そのため、ボリューム数に関するノードおよびクラスタの制限にはカウントされ、名前とIDの衝突チェックの対象となります。ただし、所有SVMの最大ボリューム数にはカウントされません。
これらのボリュームは依然として制限にカウントされるため、すべての権限レベルでstorage aggregate show outputに報告されるボリューム数に含まれます。
リカバリキューで使用されているアグリゲートスペース
リカバリキュー内のボリュームは、引き続きアグリゲートスペースを消費します。何がアグリゲートスペースを消費しているのかについての混乱を避けるため、'volume show-footprint' コマンドはすべての権限レベルで、部分的に削除されたボリュームも出力に含めます。
ボリュームリカバリキューコマンド
メモ:
- 以下のコマンドをすべてdiag権限レベルで実行します
Recovery Queue内のボリュームをリカバリする
部分的に削除されたボリュームをリカバリし、削除前の状態に復元するには、複数の手順が必要です。このコマンドは、ボリュームを以前のタイプ(RWまたはDP)に戻し、オフラインのままにします。ボリューム名を元の名前に戻したり、ジャンクションパスの設定を復元したりすることはありません。 複数のボリュームをリカバリする必要がある場合は、-volumeパラメータで「*」を使用できますが、-vserverパラメータで各vserverを個別に指定する必要があります。 9.11.1以降を使用している場合はadvanced権限で、9.10.1以前を使用している場合は diag権限でこのコマンドを実行した後、以下のリカバリ後の手順を参照してください。
::*> volume recovery-queue recover -vserver <vserver_name> -volume <volume_name>
例:
::*> volume recovery-queue recover -vserver vs1 -volume vv4_1033
Volume recovery successful for volume "vv4_1033" in Vserver "vs1".
::*> vol recovery-queue show -vserver vs1
(volume recovery-queue show)
There are no entries matching your query.
回復後の手順:
recoverコマンドを使用した後、ボリュームに対して次の手順を実行する必要があります:
volume renameコマンドを使用してボリュームの名前を変更する必要に応じて、
volume mountコマンドを実行してジャンクションを設定します。ボリューム内のLUNのマッピングを作成し、必要に応じて
lun mapコマンドを実行します。必要に応じて、
volume modifyコマンドを使用して、スナップショットポリシー、エクスポートポリシーをボリュームに関連付けます。必要に応じて、
quota policy ruleコマンドを使用してボリュームの新しいクォータポリシールールを追加しますボリュームのQOSポリシーを追加します。必要に応じて、
volume modifyコマンドを実行します。
注意:回復したボリュームをオンラインにすると、同じアグリゲート内のすべてのボリュームのパフォーマンスが一時的に低下する可能性があります。
リカバリキューの表示
リカバリ キュー内のボリュームに関する情報を表示するには:
volume recovery-queue show -vserver <vserver_name> -volume <volume_name>
例:
::*> volume recovery-queue show -vserver vs1 Vserver Volume Deletion Request Time Retention Hours
------- --------------- ------------------------ ---------------
vs1 vol1_2147484675 Sat Jul 16 20:22:01 2011 12
リカバリキューを無効にする
volume-delete-retention-hoursをゼロに設定すると、この機能はそのVserverで無効になります。その後のボリューム削除要求はボリュームを完全に破棄し、ボリュームはリカバリキューに保持されません。この機能を無効にすることは推奨されません
::> set diag
::*> vserver modify -vserver <vserver_name> -volume-delete-retention-hours 0
ボリューム保持時間を変更する
このコマンドを使用して、削除されたボリュームがリカバリのためにリカバリキューに保持されるデフォルトの保持期間(時間単位)を設定します。デフォルト値は12時間です。
::*> vserver modify -vserver <vserver_name> -volume-delete-retention-hours <integer>
注意:値を 1 時間未満の間隔に設定することはできません。
例:
::> set diag
::*> vserver modify -volume-delete-retention-hours 8 -vserver vs1
::*> vserver show -fields volume-delete-retention-hours - vserver vs1
vserver volume-delete-retention-hours
------- -----------------------------
vs1 8
注:volume-delete-retention-hoursを変更して新しい値に設定すると、将来のボリューム削除リクエストにのみ影響します。既存の部分的に削除されたボリュームの保持期間には影響しません。
リカバリキュー内のボリューム保持時間を変更する
このコマンドを使用すると、部分的に削除されたボリュームの最小保持期間を変更できます。ボリュームを完全に破棄できるかどうかを判断する際、保持期間は常にボリュームが削除された時点からの時間数として使用されます。保持期間を短縮すると、保持期間と削除時刻の合計が過去の時刻になり、次回のバックグラウンドボリュームリーパージョブの実行時にボリュームが破棄される可能性があります。waflironの実行中にキュー内のボリュームを復元する必要がある場合は、waflironの実行中は復元が許可されないため、保持期間を延長することをお勧めします。
::*> volume recovery-queue modify -vserver <vserver_name> -volume <volume_name> -retention-hours <integer>
注意:値を 1 時間未満の間隔に設定することはできません。
例
::*> volume recovery-queue modify -vserver vs1 -volume vol1_2147484675 -retention-hours 4
::*> volume recovery-queue show -vserver vs1 Vserver Volume Deletion Request Time Retention Hours
------- --------------- ------------------------ ---------------
vs1 vol1_2147484675 Sat Jul 16 20:22:01 2011 4
ボリュームの強制削除
このコマンドは、リカバリキュー内のボリュームを強制的に削除します
::*> volume recovery-queue purge -vserver <vserver_name> -volume <volume name>
または、リカバリキュー内のすべてのボリュームを削除するには
::*> volume recovery-queue purge-all -vserver <vserver_name>
例:
::*> volume recovery-queue purge -vserver vs1 -volume v1
追加情報
注:クラスタをONTAP 8.2から8.3にアップグレードすると、以前に作成されたすべてのStorage Virtual Machine(SVM)でボリュームリカバリキューが有効になりますが、ボリューム削除の保持時間は手動で設定する必要があります。8.3へのアップグレード後に作成されたSVMの保持時間はデフォルトで12時間になります。