FSx for NetApp ONTAP のスナップショットポリシーを外しスナップショットをまとめて削除してみた

たくさんあるスナップショットをまとめて削除できるか試してみました。
2024.03.17

コーヒーが好きな emi です。

FSx for NetApp ONTAP でたくさん取得したスナップショットをまとめて削除したくなったので、削除方法を調べて試してみました。

スナップショットポリシーを外す

スナップショットポリシーが割り当たったままだとスナップショットが取得され続けてしまうため、まずスナップショットポリシーを外します。

今ボリュームに割り当たっているスナップショットポリシーを確認

volume show コマンドで今ボリュームに割り当たっているスナップショットポリシーを確認します。

実行コマンド

volume show -volume emiki_fsxn_vol1 -fields snapshot-policy

▼実行結果

FsxId00d1bd3ff74723825::> volume show -volume emiki_fsxn_vol1 -fields snapshot-policy
vserver        volume          snapshot-policy
-------------- --------------- ------------------------------
emiki-fsxn-svm emiki_fsxn_vol1 emiki_snapshot_policy_200_5min

FsxId00d1bd3ff74723825::>

スナップショットポリシーを外す

volume modify コマンドでスナップショットポリシーを外します。

実行コマンド

volume modify -volume emiki_fsxn_vol1 -snapshot-policy none

▼実行結果

FsxId00d1bd3ff74723825::> volume modify -volume emiki_fsxn_vol1 -snapshot-policy none

Warning: You are changing the Snapshot policy on volume "emiki_fsxn_vol1" to "none". Snapshot copies on this
         volume that do not match any of the prefixes of the new Snapshot policy will not be deleted. However,
         when the new Snapshot policy takes effect, depending on the new retention count, any existing Snapshot
         copies that continue to use the same prefixes might be deleted. See the 'volume modify' man page for
         more information.
Do you want to continue? {y|n}: y
Volume modify successful on volume emiki_fsxn_vol1 of Vserver emiki-fsxn-svm.

FsxId00d1bd3ff74723825::>

スナップショットポリシーが外れたか確認

スナップショットポリシーが外れたか確認します。

実行コマンド

volume show -volume emiki_fsxn_vol1 -fields snapshot-policy

▼実行結果

FsxId00d1bd3ff74723825::> volume show -volume emiki_fsxn_vol1 -fields snapshot-policy
vserver        volume          snapshot-policy
-------------- --------------- ---------------
emiki-fsxn-svm emiki_fsxn_vol1 none

FsxId00d1bd3ff74723825::>

スナップショットポリシーが none になっており、外れているのが確認できます。

スナップショットを削除する

スナップショット一覧を確認

volume snapshot show コマンドで今あるスナップショットを確認します。

実行コマンド

volume snapshot show -volume emiki_fsxn_vol1

▼実行結果

FsxId00d1bd3ff74723825::> volume snapshot show -volume emiki_fsxn_vol1
                                                                 ---Blocks---
Vserver  Volume   Snapshot                                  Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
emiki-fsxn-svm
         emiki_fsxn_vol1
                  emiki_5min.2024-03-17_0850               168KB     0%    1%
                  emiki_5min.2024-03-17_0855              5.28MB     0%   23%
                  emiki_5min.2024-03-17_0900              6.57MB     0%   27%
                  emiki_5min.2024-03-17_0905              9.30MB     0%   35%
                  emiki_5min.2024-03-17_0910              3.50MB     0%   17%
                  emiki_5min.2024-03-17_0915               136KB     0%    1%
6 entries were displayed.

FsxId00d1bd3ff74723825::>

スナップショットが 6 つあります。

スナップショットを 1 つ削除

まずはスナップショットを 1 つだけ指定し削除してみます。スナップショットは volume snapshot delete コマンドで削除できます。

実行コマンド

volume snapshot delete -vserver emiki-fsxn-svm -volume emiki_fsxn_vol1 -snapshot emiki_5min.2024-03-17_0850

▼実行結果

FsxId00d1bd3ff74723825::> volume snapshot delete -vserver emiki-fsxn-svm -volume emiki_fsxn_vol1 -snapshot emiki_5min.2024-03-17_0850

Warning: Deleting a Snapshot copy permanently removes data that is stored only in that Snapshot copy. Are you
         sure you want to delete Snapshot copy "emiki_5min.2024-03-17_0850" for volume "emiki_fsxn_vol1" in
         Vserver "emiki-fsxn-svm" ? {y|n}: y

FsxId00d1bd3ff74723825::>

スナップショットが削除されたか確認

指定したスナップショットが消えたか確認します。

実行コマンド

volume snapshot show -volume emiki_fsxn_vol1

▼実行結果

FsxId00d1bd3ff74723825::> volume snapshot show -volume emiki_fsxn_vol1
                                                                 ---Blocks---
Vserver  Volume   Snapshot                                  Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
emiki-fsxn-svm
         emiki_fsxn_vol1
                  emiki_5min.2024-03-17_0855              5.28MB     0%   23%
                  emiki_5min.2024-03-17_0900              6.57MB     0%   27%
                  emiki_5min.2024-03-17_0905              9.30MB     0%   35%
                  emiki_5min.2024-03-17_0910              3.50MB     0%   17%
                  emiki_5min.2024-03-17_0915               140KB     0%    1%
5 entries were displayed.

FsxId00d1bd3ff74723825::>

指定したスナップショットが削除されているのがわかります。

ワイルドカード(*)を使ってスナップショットをまとめて削除

では、スナップショットをまとめて削除できるか試してみます。ワイルドカード * が使えるので、emiki_5min.2024-03-17_* と指定して、今日日付で取得されたスナップショットが削除されるようにしてみました。

実行コマンド

volume snapshot delete -vserver emiki-fsxn-svm -volume emiki_fsxn_vol1 -snapshot emiki_5min.2024-03-17_*

▼実行結果

FsxId00d1bd3ff74723825::> volume snapshot delete -vserver emiki-fsxn-svm -volume emiki_fsxn_vol1 -snapshot emiki_5min.2024-03-17_*

Warning: Deleting a Snapshot copy permanently removes data that is stored only in that Snapshot copy. Are you
         sure you want to delete Snapshot copy "emiki_5min.2024-03-17_0855" for volume "emiki_fsxn_vol1" in
         Vserver "emiki-fsxn-svm" ? {y|n}: y

Warning: Deleting a Snapshot copy permanently removes data that is stored only in that Snapshot copy. Are you
         sure you want to delete Snapshot copy "emiki_5min.2024-03-17_0900" for volume "emiki_fsxn_vol1" in
         Vserver "emiki-fsxn-svm" ? {y|n}: y

Warning: Deleting a Snapshot copy permanently removes data that is stored only in that Snapshot copy. Are you
         sure you want to delete Snapshot copy "emiki_5min.2024-03-17_0905" for volume "emiki_fsxn_vol1" in
         Vserver "emiki-fsxn-svm" ? {y|n}: y

Warning: Deleting a Snapshot copy permanently removes data that is stored only in that Snapshot copy. Are you
         sure you want to delete Snapshot copy "emiki_5min.2024-03-17_0910" for volume "emiki_fsxn_vol1" in
         Vserver "emiki-fsxn-svm" ? {y|n}: y

Warning: Deleting a Snapshot copy permanently removes data that is stored only in that Snapshot copy. Are you
         sure you want to delete Snapshot copy "emiki_5min.2024-03-17_0915" for volume "emiki_fsxn_vol1" in
         Vserver "emiki-fsxn-svm" ? {y|n}: y
5 entries were acted on.

FsxId00d1bd3ff74723825::>

1 つスナップショットを削除するたびに毎回確認されたので、都度 y を押下しました。
スナップショットが消えたか確認します。

実行コマンド

volume snapshot show -volume emiki_fsxn_vol1

▼実行結果

FsxId00d1bd3ff74723825::> volume snapshot show -volume emiki_fsxn_vol1
There are no entries matching your query.

FsxId00d1bd3ff74723825::>

スナップショットがすべて削除され、なくなっているのが確認できます。

ワイルドカード(*)と -force オプションを使って確認メッセージ無しでスナップショットをまとめて削除

-force オプションを使用すると、確認メッセージを生成せずにすぐに削除されるそうです。このオプションは通常の ONTAP CLI 権限では指定できず、特権レベル(privilege)で指定する必要があるそうです。

事前にもう一度いくつかスナップショットを取得しておきます。スナップショットポリシーの設定については以下ブログを参考にしてください。今回は 5 分毎にスナップショットを作成するスナップショットポリシーを割り当てました。

いくつかスナップショットが作成されたところで、スナップショットポリシーを外し、再度スナップショット一覧を確認します。

FsxId00d1bd3ff74723825::> volume snapshot show -volume emiki_fsxn_vol1
                                                                 ---Blocks---
Vserver  Volume   Snapshot                                  Size Total% Used%
-------- -------- ------------------------------------- -------- ------ -----
emiki-fsxn-svm
         emiki_fsxn_vol1
                  emiki_5min.2024-03-17_0935               140KB     0%    1%
                  emiki_5min.2024-03-17_0940               140KB     0%    1%
                  emiki_5min.2024-03-17_0945               140KB     0%    1%
                  emiki_5min.2024-03-17_0950               140KB     0%    1%
                  emiki_5min.2024-03-17_0955               136KB     0%    1%
5 entries were displayed.

FsxId00d1bd3ff74723825::>

5 つスナップショットが取得されているのが確認できます。

特権レベル(privilege)に昇格

特権レベルに昇格します。set コマンドを使用します。

実行コマンド

set -privilege advanced

▼実行結果

FsxId00d1bd3ff74723825::> set -privilege advanced

Warning: These advanced commands are potentially dangerous; use them only when directed to do so by NetApp
         personnel.
Do you want to continue? {y|n}: y

FsxId00d1bd3ff74723825::*>

プロンプトが ::*> となり、特権レベルになりました。

-force オプションを使用してスナップショットをまとめて削除する

では、volume snapshot delete コマンドに -force オプションを付けて、まとめてスナップショットを削除してみます。

実行コマンド

volume snapshot delete -vserver emiki-fsxn-svm -volume emiki_fsxn_vol1 -snapshot emiki_5min.2024-03-17_* -force

▼実行結果

FsxId00d1bd3ff74723825::*> volume snapshot delete -vserver emiki-fsxn-svm -volume emiki_fsxn_vol1 -snapshot emiki_5min.2024-03-17_* -force
5 entries were acted on.

FsxId00d1bd3ff74723825::*>

確認メッセージは表示されず、すぐにコマンド実行が終了しました。

スナップショットが削除されたか確認

スナップショットが削除されたか確認します。

実行コマンド

volume snapshot show -volume emiki_fsxn_vol1

▼実行結果

FsxId00d1bd3ff74723825::*> volume snapshot show -volume emiki_fsxn_vol1
There are no entries matching your query.

FsxId00d1bd3ff74723825::*>

スナップショットがすべて削除されており、一覧に表示されないことが確認できました。

特権レベルから通常の管理者レベルに戻すには set -privilege admin を実行します。

FsxId00d1bd3ff74723825::*> set -privilege admin

FsxId00d1bd3ff74723825::>

おわりです。