この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
なんだか重複排除の効きが悪いな
こんにちは、のんピ(@non____97)です。
皆さんは「Amazon FSx for NetApp ONTAP(以降FSx for ONTAP)のボリュームの重複排除の効きが悪いな」と思ったことはありますか? 私はあります。
私がこの場面に遭遇したのは、いずれも階層化ポリシーがALLのボリュームだったので、原因はボリュームの階層化ポリシーがALLであることなのかもしれません。
重複排除についての説明は以下記事をご覧ください。
重複排除が行われるタイミングは以下2種類あります。
- インライン
- ストレージに保存する前にメモリ上のデータ間で重複排除を実施
- ポストプロセス
- ストレージに保存された後にストレージ上のデータ間で重複排除を実施
階層化ポリシーをALLにしてしまうと、基本的にすぐさまオブジェクトストレージベースのキャパシティプールストレージに階層化されてしまいます。階層化はブロック単位で行われますが、もしかしたらオブジェクトストレージにある関係上、キャパシティプール上のブロックのハッシュ値の計算は行っていないかもしれません。
気になったので、確認をしてみます。
いきなりまとめ
- キャパシティプールストレージ上のデータに対してはポストプロセスの重複排除が効かない
- インライン重複排除は階層化ポリシーがALLでも効く
- キャパシティプールストレージ上のデータをプライマリストレージに移動してもポストプロセスの重複排除は効かない
- プライマリストレージ上で効かせたポストプロセス重複排除は、キャパシティプールストレージに移動しても維持される
- 「重複排除を効かせた状態で移行をしたい。ただ、ほとんどのデータをキャパシティプールストレージに持っていきたい」のであれば、FSx for ONTAPを2つ用意して、以下のステップで移行する
- 現行ファイルサーバーから1台目のFSx for ONTAPの階層化ポリシーをAuto or Noneしたボリュームにファイルを移行する
- 1台目のFSx for ONTAP上で重複排除が効くまで待つ
- SnapMirrorを使って、1台目のFSx for ONTAPのボリュームから2台目のFSx for ONTAPの階層化ポリシーをALLにしたボリュームにデータを移行する
- 現行ファイルサーバーと2台目のFSx for ONTAP間で差分同期をする
- FSx for ONTAPのボリュームではTSSEが有効化されている
- TSSEはFabricPoolのローカル(FSx for ONTAPでいうところのプライマリストレージ)のみサポートしている
検証のシナリオ
Fsx for ONTAPの階層化ポリシーをALL
とAuto
のボリュームを1つづつ用意します。どちらのボリュームもStorage Efficiency(ストレージ効率化)はマネジメントコンソールから有効化しておきます。
# ボリュームの確認
::> volume show
Vserver Volume Aggregate State Type Size Available Used%
--------- ------------ ------------ ---------- ---- ---------- ---------- -----
SVM SVM_root aggr1 online RW 1GB 972.0MB 0%
SVM vol1 aggr1 online RW 10GB 9.50GB 0%
SVM vol2 aggr1 online RW 10GB 9.50GB 0%
3 entries were displayed.
# 各ボリュームの階層化ポリシーを確認
::> volume show -fields tiering-policy
vserver volume tiering-policy
------- -------- --------------
SVM SVM_root none
SVM vol1 auto
SVM vol2 all
3 entries were displayed.
# 各ボリュームでStorage Efficiencyが有効になっていることを確認
::> volume efficiency show
Vserver Volume State Status Progress Policy
---------- ---------------- --------- ----------- ------------------ ----------
SVM vol1 Enabled Idle Idle for 00:06:36 auto
SVM vol2 Enabled Idle Idle for 00:06:16 auto
2 entries were displayed.
# 各ボリュームのStorage Efficiencyの詳細を確認
::> volume efficiency show -volume vol* -instance
Vserver Name: SVM
Volume Name: vol1
Volume Path: /vol/vol1
State: Enabled
Status: Idle
Progress: Idle for 00:07:45
Type: Regular
Schedule: -
Efficiency Policy Name: auto
Blocks Skipped Sharing: 0
Last Operation State: Success
Last Success Operation Begin: Sun Jan 15 11:16:09 2023
Last Success Operation End: Sun Jan 15 11:16:09 2023
Last Operation Begin: Sun Jan 15 11:16:09 2023
Last Operation End: Sun Jan 15 11:16:09 2023
Last Operation Size: 0B
Last Operation Error: -
Changelog Usage: 0%
Logical Data Size: 308KB
Logical Data Limit: 640TB
Logical Data Percent: 0%
Queued Job: -
Stale Fingerprint Percentage: 0
Compression: false
Inline Compression: true
Storage Efficiency Mode: efficient
Constituent Volume: false
Inline Dedupe: true
Data Compaction: true
Cross Volume Inline Deduplication: false
Cross Volume Background Deduplication: false
Extended Compressed Data: true
Vserver Name: SVM
Volume Name: vol2
Volume Path: /vol/vol2
State: Enabled
Status: Idle
Progress: Idle for 00:07:25
Type: Regular
Schedule: -
Efficiency Policy Name: auto
Blocks Skipped Sharing: 0
Last Operation State: Success
Last Success Operation Begin: Sun Jan 15 11:16:29 2023
Last Success Operation End: Sun Jan 15 11:16:29 2023
Last Operation Begin: Sun Jan 15 11:16:29 2023
Last Operation End: Sun Jan 15 11:16:29 2023
Last Operation Size: 0B
Last Operation Error: -
Changelog Usage: 0%
Logical Data Size: 296KB
Logical Data Limit: 640TB
Logical Data Percent: 0%
Queued Job: -
Stale Fingerprint Percentage: 0
Compression: false
Inline Compression: true
Storage Efficiency Mode: efficient
Constituent Volume: false
Inline Dedupe: true
Data Compaction: true
Cross Volume Inline Deduplication: false
Cross Volume Background Deduplication: false
Extended Compressed Data: true
2 entries were displayed.
# 各ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- -------- --------- ------- ----- ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM SVM_root 972.0MB 972.8MB 792KB 0% 0B 0B 0B 0B none
SVM vol1 9.50GB 9.50GB 308KB 0% 0B 0B 0B 0B auto
SVM vol2 9.50GB 9.50GB 296KB 0% 0B 0B 0B 0B all
3 entries were displayed.
この状態で各ボリュームにランダムなデータブロックで構成されるファイルを作成して、そのファイルをコピーした際に重複排除が効くか確認します。重複排除が効く場合、ボリュームの消費量は1ファイル分になるはずです。
階層化ポリシーがALLだとポストプロセス重複排除が効かないことを確認
テストファイルの書き込み
それでは検証をしてみます。
NFSクライアントからFSx for ONTAPの各ボリュームをマウントします。
# マウントポイントの作成
$ sudo mkdir -p /mnt/fsxn/vol1
$ sudo mkdir -p /mnt/fsxn/vol2
# マウント
$ sudo mount -t nfs svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 /mnt/fsxn/vol1
$ sudo mount -t nfs svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 /mnt/fsxn/vol2
# マウントされたことを確認
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 256K 9.5G 1% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 256K 9.5G 1% /mnt/fsxn/vol2
それでは1GBのランダムなデータブロックで構成されるファイルを各ボリュームに書き込みます。
# テストファイルの作成
$ sudo dd if=/dev/urandom of=/mnt/fsxn/vol1/test-file_1 bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 6.74191 s, 159 MB/s
$ sudo dd if=/dev/urandom of=/mnt/fsxn/vol2/test-file_1 bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 6.52896 s, 164 MB/s
# テストファイル書き込み後の各ボリュームの使用量を確認
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol2
どちらも等しく1.1GB書き込まれいますね。
ONTAP CLIからも確認しましょう。
# 各ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- -------- --------- ------- ----- ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM SVM_root 972.0MB 972.8MB 792KB 0% 0B 0B 0B 0B none
SVM vol1 8.49GB 9.50GB 1.01GB
10% 0B 0B 0B 0B auto
SVM vol2 8.49GB 9.50GB 1.01GB
10% 0B 0B 0B 0B all
3 entries were displayed.
# 各ボリュームのデータの階層を確認
::> volume show-footprint -volume vol1, vol2
Vserver : SVM
Volume : vol1
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 1.01GB 0%
Footprint in Performance Tier
1.02GB 100%
Footprint in FSxFabricpoolObjectStore
0B 0%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Delayed Frees 2.79MB 0%
Total Footprint 1.08GB 0%
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 1.01GB 0%
Footprint in Performance Tier
17.24MB 2%
Footprint in FSxFabricpoolObjectStore
1GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Delayed Frees 2.49MB 0%
Total Footprint 1.08GB 0%
2 entries were displayed.
# 各ボリュームのStorage Efficiencyの詳細を確認
::> volume efficiency show -volume vol* -instance
Vserver Name: SVM
Volume Name: vol1
Volume Path: /vol/vol1
State: Enabled
Status: Idle
Progress: Idle for 00:21:37
Type: Regular
Schedule: -
Efficiency Policy Name: auto
Blocks Skipped Sharing: 0
Last Operation State: Success
Last Success Operation Begin: Sun Jan 15 11:16:09 2023
Last Success Operation End: Sun Jan 15 11:16:09 2023
Last Operation Begin: Sun Jan 15 11:16:09 2023
Last Operation End: Sun Jan 15 11:16:09 2023
Last Operation Size: 0B
Last Operation Error: -
Changelog Usage: 9%
Logical Data Size: 1.01GB
Logical Data Limit: 640TB
Logical Data Percent: 0%
Queued Job: -
Stale Fingerprint Percentage: 0
Compression: false
Inline Compression: true
Storage Efficiency Mode: efficient
Constituent Volume: false
Inline Dedupe: true
Data Compaction: true
Cross Volume Inline Deduplication: false
Cross Volume Background Deduplication: false
Extended Compressed Data: true
Vserver Name: SVM
Volume Name: vol2
Volume Path: /vol/vol2
State: Enabled
Status: Idle
Progress: Idle for 00:21:17
Type: Regular
Schedule: -
Efficiency Policy Name: auto
Blocks Skipped Sharing: 0
Last Operation State: Success
Last Success Operation Begin: Sun Jan 15 11:16:29 2023
Last Success Operation End: Sun Jan 15 11:16:29 2023
Last Operation Begin: Sun Jan 15 11:16:29 2023
Last Operation End: Sun Jan 15 11:16:29 2023
Last Operation Size: 0B
Last Operation Error: -
Changelog Usage: 9%
Logical Data Size: 1.01GB
Logical Data Limit: 640TB
Logical Data Percent: 0%
Queued Job: -
Stale Fingerprint Percentage: 0
Compression: false
Inline Compression: true
Storage Efficiency Mode: efficient
Constituent Volume: false
Inline Dedupe: true
Data Compaction: true
Cross Volume Inline Deduplication: false
Cross Volume Background Deduplication: false
Extended Compressed Data: true
2 entries were displayed.
どちらも階層化ポリシーをALLにしたvol2
はほとんどのデータがFSxFabricpoolObjectStore
= キャパシティプールに保存されていますね。
テストファイルのコピー
作成したテストファイルをコピーします。
# テストファイルのコピー
$ sudo cp -p /mnt/fsxn/vol1/test-file_1 /mnt/fsxn/vol1/test-file_2
$ sudo cp -p /mnt/fsxn/vol2/test-file_1 /mnt/fsxn/vol2/test-file_2
# 各ボリュームの使用量の確認
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 2.1G 7.5G 22% /mnt/fsxn/vol2
階層化ポリシーがAutoのvol1
は使用量が1.1GBのままですが、階層化ポリシーがALLのvol2
の使用量は2.1GBになりました。
確かに階層化ポリシーがALLだとポストプロセス重複排除が効いていなさそうです。
ONTAP CLIからも確認してみましょう。
# 各ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- -------- --------- ------- ----- ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM SVM_root 972.0MB 972.8MB 792KB 0% 0B 0B 0B 0B none
SVM vol1 8.46GB 9.50GB 1.04GB
10% 1001MB 1001MB 1001MB 0B auto
SVM vol2 7.46GB 9.50GB 2.04GB
21% 0B 0B 0B 0B all
3 entries were displayed.
# 各ボリュームのデータの階層を確認
::> volume show-footprint -volume vol1, vol2
Vserver : SVM
Volume : vol1
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 1.04GB 0%
Footprint in Performance Tier
1.04GB 100%
Footprint in FSxFabricpoolObjectStore
0B 0%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Delayed Frees 4.31MB 0%
Total Footprint 1.11GB 0%
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 2.04GB 0%
Footprint in Performance Tier
43.08MB 2%
Footprint in FSxFabricpoolObjectStore
2GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 6.02MB 0%
Deduplication 6.02MB 0%
Delayed Frees 5.16MB 0%
Total Footprint 2.11GB 0%
# 各ボリュームのStorage Efficiencyの詳細を確認
::> volume efficiency show -volume vol* -instance
Vserver Name: SVM
Volume Name: vol1
Volume Path: /vol/vol1
State: Enabled
Status: Idle
Progress: Idle for 00:26:01
Type: Regular
Schedule: -
Efficiency Policy Name: auto
Blocks Skipped Sharing: 0
Last Operation State: Success
Last Success Operation Begin: Sun Jan 15 11:16:09 2023
Last Success Operation End: Sun Jan 15 11:16:09 2023
Last Operation Begin: Sun Jan 15 11:16:09 2023
Last Operation End: Sun Jan 15 11:16:09 2023
Last Operation Size: 0B
Last Operation Error: -
Changelog Usage: 9%
Logical Data Size: 2.02GB
Logical Data Limit: 640TB
Logical Data Percent: 0%
Queued Job: -
Stale Fingerprint Percentage: 0
Compression: false
Inline Compression: true
Storage Efficiency Mode: efficient
Constituent Volume: false
Inline Dedupe: true
Data Compaction: true
Cross Volume Inline Deduplication: false
Cross Volume Background Deduplication: false
Extended Compressed Data: true
Vserver Name: SVM
Volume Name: vol2
Volume Path: /vol/vol2
State: Enabled
Status: Idle
Progress: Idle for 00:02:54
Type: Regular
Schedule: -
Efficiency Policy Name: auto
Blocks Skipped Sharing: 0
Last Operation State: Success
Last Success Operation Begin: Sun Jan 15 11:38:59 2023
Last Success Operation End: Sun Jan 15 11:39:16 2023
Last Operation Begin: Sun Jan 15 11:38:59 2023
Last Operation End: Sun Jan 15 11:39:16 2023
Last Operation Size: 1.26GB
Last Operation Error: -
Changelog Usage: 9%
Logical Data Size: 2.04GB
Logical Data Limit: 640TB
Logical Data Percent: 0%
Queued Job: -
Stale Fingerprint Percentage: 0
Compression: false
Inline Compression: true
Storage Efficiency Mode: efficient
Constituent Volume: false
Inline Dedupe: true
Data Compaction: true
Cross Volume Inline Deduplication: false
Cross Volume Background Deduplication: false
Extended Compressed Data: true
2 entries were displayed.
階層化ポリシーがAutoのvol1
でdedupe-space-saved
が1001MB
になっていることから、1GBほど重複排除によりデータの消費量を減らしていることが分かります。一方、階層化ポリシーがALLのvol2
ではdedupe-space-saved
が0B
となっています。
ちなみに、ポストプロセスの重複排除の実行タイミングは、どちらのボリュームも自動バックグラウンド重複排除機能により決定されます。
ONTAP 9.3 以降では ' 事前定義された auto AFF ポリシーを使用して ' ボリューム・レベルのバックグラウンド重複排除を自動的に実行するように管理できますスケジュールを手動で設定する必要はありません。auto ポリシーは ' バックグラウンドで継続的な重複排除を実行します
Efficiency Policyがauto
のときに自動バックグラウンド重複排除により、重複排除の実行されます。FSx for ONTAPの場合デフォルトではauto
が指定されます。
デフォルトのEfficiency Policyはdefault
とinline-only
とがあります。
::> volume efficiency policy show
Policy Job Duration
Vserver Name Schedule (Hours) QoS Policy Enabled Comment
-------- ------------ ---------- -------- ----------- -------- --------------
SVM auto - - - true ADS-auto
policy
SVM default daily - best_effort true Default policy
SVM inline-only - - - - Inline-Only
policy
3 entries were displayed.
手動でポストプロセス重複排除を実行する
念の為、手動でポストプロセス重複排除を実行します。
# 手動でポストプロセス重複排除を実行
::> volume efficiency start -volume vol2
The efficiency operation for volume "vol2" of Vserver "SVM" has started.
# 重複排除によりデータ量が削減できているか確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 7.46GB 9.50GB 2.04GB 21% 10MB 10MB 10MB 0B all
10MBほど重複排除が効きました。プライマリストレージにメタデータがわずかに保存されているので、その分かなと推測します。
インライン重複排除は効くことを確認する
キャパシティプールストレージのファイルを同時に複数コピー
次に階層化ポリシーがALLであってもインライン重複排除が効くことを確認します。
まず、キャパシティプールストレージのファイルを同時に複数コピーした場合の挙動を確認します。
先の検証で作成した/vol2
のファイルを/vol2/copied
にコピーします。/vol2
にはtest-file_1
とtest-file_2
があり、test-file_2
はtest-file_1
のコピーです。
# コピー先のディレクトリの作成
$ sudo mkdir /mnt/fsxn/vol2/copied
# コピー
$ sudo cp -p /mnt/fsxn/vol2/test-file_* /mnt/fsxn/vol2/copied/
# サイズの確認
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 4.1G 5.5G 43% /mnt/fsxn/vol2
そのまま2GB増えていることから、重複排除は効いていなさそうです。
ONTAP CLIからも確認します。
# ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 5.42GB 9.50GB 4.08GB 42% 23.42MB 23.42MB 23.42MB 0B all
# ボリュームのデータの階層を確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 4.08GB 0%
Footprint in Performance Tier
90.34MB 2%
Footprint in FSxFabricpoolObjectStore
4GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 12.03MB 0%
Deduplication 12.03MB 0%
Delayed Frees 8.84MB 0%
Total Footprint 4.16GB 0%
13MBほど重複排除が効いたようです。もっと効くと思ったのですが思ったより効きませんね。
手動で重複排除をしてみます。
# 手動でポストプロセス重複排除を実行
::> volume efficiency start -volume vol2
The efficiency operation for volume "vol2" of Vserver "SVM" has started.
# 重複排除によりデータ量が削減できているか確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 5.42GB 9.50GB 4.08GB 42% 7.25MB 7.25MB 7.25MB 0B all
# ボリュームのデータの階層を確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 4.08GB 0%
Footprint in Performance Tier
91.61MB 2%
Footprint in FSxFabricpoolObjectStore
4GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 16.21MB 0%
Deduplication 16.21MB 0%
Delayed Frees 11.07MB 0%
Total Footprint 4.17GB 0%
重複排除によって削減されたデータ量が23.42MB
から7.25MB
に減ってしまいました。これは謎ですね。
プライマリストレージのファイルを同時に複数コピー
次に、プライマリストレージのファイルを同時に複数コピーした場合の挙動を確認します。
先の検証で作成した/vol1
のファイルを/vol2/copied2
にコピーします。/vol1
にはtest-file_1
とtest-file_2
があり、test-file_2
はtest-file_1
のコピーです。
# コピー先のディレクトリの作成
$ sudo mkdir /mnt/fsxn/vol2/copied2
# コピー
$ sudo cp -p /mnt/fsxn/vol1/test-file_* /mnt/fsxn/vol2/copied2/
# サイズの確認
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 6.2G 3.4G 65% /mnt/fsxn/vol2
2GB増えているのであまり重複排除は効いていなさそうです。
ONTAP CLIからも確認します。
# ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 3.64GB 9.50GB 5.86GB 61% 295.9MB 295.9MB 295.9MB 0B all
# ボリュームのデータの階層を確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.86GB 1%
Footprint in Performance Tier
132.8MB 2%
Footprint in FSxFabricpoolObjectStore
5.81GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 30.07MB 0%
Deduplication 30.07MB 0%
Delayed Frees 74.52MB 0%
Total Footprint 6.03GB 1%
重複排除によって削減されたデータ量が7.25MB
から295.9MB
になりました。30%弱ほど重複排除が効いていますね。
こちらも手動で重複排除をしてみます。
# 手動でポストプロセス重複排除を実行
::> volume efficiency start -volume vol2
The efficiency operation for volume "vol2" of Vserver "SVM" has started.
# 重複排除によりデータ量が削減できているか確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 3.63GB 9.50GB 5.86GB 61% 303.4MB 303.4MB 303.4MB 0B all
# ボリュームのデータの階層を確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.86GB 1%
Footprint in Performance Tier
134.8MB 2%
Footprint in FSxFabricpoolObjectStore
5.81GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 33.98MB 0%
Deduplication 33.98MB 0%
Delayed Frees 75.41MB 0%
Total Footprint 6.03GB 1%
8MBほど重複排除量が増えました。こちらもメタデータ分でしょうか。
階層化ポリシーをALLからNoneに変更した場合にポストプロセス重複排除が動作するのか
階層化ポリシーをNoneに変更
次に、階層化ポリシーをALLからNoneに変更した場合にポストプロセス重複排除が動作するのか確認します。
階層化ポリシーをNoneに変更します。
# 階層化ポリシーをNoneに変更
::> volume modify -volume vol2 -tiering-policy none
Volume modify successful on volume vol2 of Vserver SVM.
# 階層化ポリシーがNoneになったことを確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 3.64GB 9.50GB 5.86GB 61% 303.4MB 303.4MB 303.4MB 0B none
# データがキャパシティプールストレージからプライマリストレージに移動していないことを確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.86GB 1%
Footprint in Performance Tier
134.9MB 2%
Footprint in FSxFabricpoolObjectStore
5.81GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 33.98MB 0%
Deduplication 33.98MB 0%
Delayed Frees 75.55MB 0%
Total Footprint 6.03GB 1%
以下記事で紹介している通り、階層化ポリシーをNoneに変更しても、すぐにはキャパシティプールストレージからプライマリストレージへデータは移動しません。
-cloud-retrieval-policy promote
で強制的にキャパシティプールストレージからプライマリストレージにデータを移動させます。
# 権限レベルを変更
::> set 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
# 全てのデータをプライマリストレージに移動するようポリシーを変更
::*> volume modify -volume vol2 -cloud-retrieval-policy promote
Warning: The "promote" cloud retrieve policy retrieves all of the cloud data for the specified volume. If the tiering policy is "snapshot-only" then only AFS data is retrieved. If
the tiering policy is "none" then all data is retrieved. Volume "vol2" in Vserver "SVM" is on a FabricPool, and there are approximately 6234456064 bytes tiered to the
cloud that will be retrieved. Cloud retrieval may take a significant amount of time, and may degrade performance during that time. The cloud retrieve operation may also
result in data charges by your object store provider.
Do you want to continue? {y|n}: y
Volume modify successful on volume vol2 of Vserver SVM.
# 権限レベルを元に戻す
::*> set admin
# データがキャパシティプールストレージからプライマリストレージに移動していっているか確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.86GB 1%
Footprint in Performance Tier
136.0MB 2%
Footprint in FSxFabricpoolObjectStore
5.81GB 98%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 34.58MB 0%
Deduplication 34.58MB 0%
Delayed Frees 76.56MB 0%
Total Footprint 6.03GB 1%
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.86GB 1%
Footprint in Performance Tier
836.2MB 14%
Footprint in FSxFabricpoolObjectStore
5.12GB 86%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 34.58MB 0%
Deduplication 34.58MB 0%
Delayed Frees 77.01MB 0%
Total Footprint 6.03GB 1%
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.86GB 1%
Footprint in Performance Tier
5.33GB 90%
Footprint in FSxFabricpoolObjectStore
631.2MB 10%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 34.58MB 0%
Deduplication 34.58MB 0%
Delayed Frees 88.17MB 0%
Total Footprint 6.04GB 1%
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.86GB 1%
Footprint in Performance Tier
5.92GB 100%
Footprint in FSxFabricpoolObjectStore
22.05MB 0%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 34.58MB 0%
Deduplication 34.58MB 0%
Delayed Frees 79.22MB 0%
Total Footprint 6.04GB 1%
# ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 3.63GB 9.50GB 5.86GB 61% 304.4MB 304.4MB 304.4MB 0B none
しばらく待つと全てのデータがプライマリストレージに移動しました。その時の重複排除量を確認すると、特に変わりありませんでした。
手動で重複排除をしてみましょう。
# 手動でポストプロセス重複排除を実行
::> volume efficiency start -volume vol2
The efficiency operation for volume "vol2" of Vserver "SVM" has started.
# 重複排除によりデータ量が削減できているか確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 3.63GB 9.50GB 5.87GB 61% 304.4MB 304.4MB 304.4MB 0B none
# ボリュームのデータの階層を確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 5.87GB 1%
Footprint in Performance Tier
5.92GB 100%
Footprint in FSxFabricpoolObjectStore
22.05MB 0%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 34.58MB 0%
Deduplication 34.58MB 0%
Delayed Frees 79.39MB 0%
Total Footprint 6.04GB 1%
手動で重複排除をしても、変わりありませんでした。キャパシティプールストレージ上のデータをプライマリストレージに移動してもポストプロセスの重複排除は効かないようです。
元々キャパシティプールストレージにあったファイルを同時に複数コピー
最後に元々キャパシティプールストレージにあったファイルを同時に複数コピーした場合の挙動を確認します。
先の検証で作成した/vol2
のファイルを/vol2/copied3
にコピーします。/vol2
にはtest-file_1とtest-file_2
があり、test-file_2はtest-file_1
のコピーです。
# コピー先のディレクトリの作成
$ sudo mkdir /mnt/fsxn/vol2/copied3
# コピー
$ sudo cp -p /mnt/fsxn/vol2/test-file_* /mnt/fsxn/vol2/copied3/
# サイズの確認
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 6.9G 2.7G 72% /mnt/fsxn/vol2
2GBのファイルをコピーしましたが、1GBほどしか増えていませんね。これは重複排除が効いている予感がします。
ONTAP CLIから確認します。
# ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 2.82GB 9.50GB 6.68GB 70% 1.50GB 1.50GB 933.2MB 0B none
重複排除によって削減されたデータ量が304.4MB
から1.50GB
になりました。
手動で重複排除をしてみます。
# 手動でポストプロセス重複排除を実行
::> volume efficiency start -volume vol2
The efficiency operation for volume "vol2" of Vserver "SVM" has started.
# 重複排除によりデータ量が削減できているか確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 2.82GB 9.50GB 6.68GB 70% 1.74GB 1.74GB 1.15GB 0B none
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 2.81GB 9.50GB 6.68GB 70% 1.89GB 1.89GB 1.30GB 0B none
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 2.81GB 9.50GB 6.69GB 70% 2.11GB 2.11GB 1.32GB 0B none
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 2.82GB 9.50GB 6.68GB 70% 2.30GB 2.30GB 1.32GB 0B none
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 3.62GB 9.50GB 5.88GB 61% 2.30GB 2.30GB 1.33GB 0B none
重複排除によって削減されたデータ量dedupe-space-saved
が1.50GB
から2.30GB
になりました。この検証を始める前は304.4MB
だったので、2GBほど増えていますね。
一方で重複しているデータ量dedupe-space-shared
は1.33GB
と1GBしか増えていません。
作成したファイルのサイズはいずれも1GBで、重複しているデータ量が1GB。そして、削除されたデータ量が2GBであることから、3つのファイルが重複していると判定されていそうです。2つのファイルをコピーしたタイミングで重複排除されたデータ量が2GBになったため、その内2つは今回作成したファイル分だと推測します。
残りの1ファイルがどれか、怪しいファイルを削除して潰していきます。
重複排除されたデータを保持している場合は、ファイルを削除しても重複排除が1GB減るため、ボリュームの使用量は±0になるはずです。
まずは/mnt/fsxn/vol2/test-file_2
を削除してみます。
$ sudo rm /mnt/fsxn/vol2/test-file_2
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 4.9G 4.7G 52% /mnt/fsxn/vol2
ファイル削除後に1GBボリューム使用量が減りました。このファイルは重複排除されたデータを保持していないようです。
ONTAP CLIからも確認します。
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 4.46GB 9.50GB 5.04GB 53% 2.25GB 2.25GB 1.28GB 0B none
重複排除量は50MBほど減っていました。メタデータ分が重複していたのでしょうか。
次に/mnt/fsxn/vol2/test-file_1
を削除してみます。
$ sudo rm /mnt/fsxn/vol2/test-file_2
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 3.9G 5.7G 41% /mnt/fsxn/vol2
ファイル削除後に1GBボリューム使用量が減りました。こちらのファイルも重複排除されたデータを保持していないようです。
ONTAP CLIからも確認します。
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 5.62GB 9.50GB 3.88GB 40% 2.25GB 2.25GB 1.28GB 0B none
こちらは重複排除量は全く変わっていません。
以上のことから、元々キャパシティプールストレージ上にあったファイルとコピーされたファイル間での重複排除も効かないということでしょうか。
次に/mnt/fsxn/vol2/copied/test-file_1
を削除します。
$ sudo rm /mnt/fsxn/vol2/copied/test-file_1
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 3.7G 5.9G 39% /mnt/fsxn/vol2
ファイル削除後のデータ量の減りが少ないです。ONTAP CLIで重複排除量を確認します。
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 5.84GB 9.50GB 3.66GB 38% 1.49GB 1.49GB 1.25GB 0B none
760MB重複排除量が減っていますね。こちらのファイルと重複していたようです。
こちらのファイルも元々キャパシティプールストレージ上にあったので、「元々キャパシティプールストレージ上にあったファイルとコピーされたファイル間での重複排除も効かない」という仮説は誤りのようです。
最後に/mnt/fsxn/vol2/copied/test-file_2
を削除します。
$ sudo rm /mnt/fsxn/vol2/copied/test-file_2
$ df -hT -t nfs4
Filesystem Type Size Used Avail Use% Mounted on
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol1 nfs4 9.5G 1.1G 8.5G 11% /mnt/fsxn/vol1
svm-0404cd705c847e961.fs-05f72eb8f8d03c709.fsx.us-east-1.amazonaws.com:/vol2 nfs4 9.5G 3.0G 6.6G 31% /mnt/fsxn/vol2
700MBほど削除されました。ONTAP CLIで重複排除量を確認します。
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 6.60GB 9.50GB 2.90GB 30% 1.23GB 1.23GB 1.22GB 0B none
重複排除量が260MBほど減っていますね。
重複排除が効いているデータをキャパシティプールストレージに移動した場合も重複排除を維持するか
最後に、重複排除が効いているデータをキャパシティプールストレージに移動した場合も重複排除を維持するかを確認します。
こちらが動作しないと、せっかくの重複排除がもったいないことになってしまいます。
試しにvol2
の階層化ポリシーをNoneからALLに変更します。
# 階層化ポリシーをALLに変更
::> volume modify -volume vol2 -tiering-policy all
Volume modify successful on volume vol2 of Vserver SVM.
# ボリュームのデータの階層を確認
::> volume show-footprint -volume vol2
Vserver : SVM
Volume : vol2
Feature Used Used%
-------------------------------- ---------- -----
Volume Data Footprint 2.90GB 0%
Footprint in Performance Tier
223.4MB 7%
Footprint in FSxFabricpoolObjectStore
2.78GB 93%
Volume Guarantee 0B 0%
Flexible Volume Metadata 61.95MB 0%
Deduplication Metadata 34.58MB 0%
Deduplication 34.58MB 0%
Delayed Frees 96.53MB 0%
Total Footprint 3.09GB 0%
# ボリュームのStorage Efficiencyで削減されたデータ量を確認
::> volume show -volume vol2 -fields tiering-policy, total, used, available, percent-used, sis-space-saved, dedupe-space-saved, dedupe-space-shared, compression-space-saved
vserver volume available total used percent-used sis-space-saved dedupe-space-saved dedupe-space-shared compression-space-saved tiering-policy
------- ------ --------- ------ ------ ------------ --------------- ------------------ ------------------- ----------------------- --------------
SVM vol2 6.60GB 9.50GB 2.90GB 30% 1.23GB 1.23GB 1.22GB 0B all
ほとんどのデータがキャパシティプールストレージに移動しましたが、重複排除はしっかりキープされていますね。
階層化ポリシーをALLにしていると重複排除の効果が薄まる
Amazon FSx for NetApp ONTAPのキャパシティプールストレージのデータにはポストプロセス重複排除が効かない事象を紹介しました。
階層化ポリシーをALLにしていると重複排除の効果が薄まるので注意が必要です。
以下記事では移行時にプライマリストレージの空きを確保するために、階層化ポリシーをALLにすることを紹介しました。
今回の検証から重複排除をしっかり効かせたい場合は階層化ポリシーをALLにするのは避けるべきであることが分かりました。
もし、「重複排除を効かせた状態で移行をしたい。ただ、ほとんどのデータをキャパシティプールストレージに持っていきたい」という要望があるのであれば、以下の図のようにFSx for ONTAPを2つ用意する必要があると考えます。
まず、1台目のFSx for ONTAPにファイルを移行して、重複排除が効くまで待機します。その後、重複排除が掛かりきった後に最終的な移行先であるFSx for ONTAPにSnapMirrorで移行します。最後に現行ファイルサーバーと最終的な移行先のFSx for ONTAP間で同期をします。
SnapMirrorは重複排除などのStorage Efficiencyを維持します。
- SnapMirrorは、温度依存Storage Efficiencyを除き、デスティネーションに別の形式の圧縮が適用されないかぎり、ソースボリュームとデスティネーションボリュームの両方でStorage Efficiencyを維持します。
次の表に、ソースボリュームとデスティネーションボリュームのStorage Efficiencyの組み合わせと転送結果を示します
- 重複排除(D)-インラインまたはバックグラウンド/ポストプロセス
- アダプティブ圧縮(CA)-インラインまたはポストプロセスです
- 二次圧縮(cs)-インラインまたはポストプロセスです
- 温度依存Storage Efficiency(TSSE)- ONTAP 9.8以降(AFF プラットフォーム)
- ストレージ効率を伴う論理転送(LRSE)-ソース側のストレージ効率化によるすべての削減効果はSnapMirrorによって維持されます
- Logical Transfer(LRE)-ソース側のすべてのストレージ効率の節約は転送中に失われますが、デスティネーションで再び実現できます
FSx for ONTAPのボリュームはデフォルトでStorage Efficiency Mode: efficient
であるため、TSSE(Temperature Sensitive Storage Efficiency)は有効化されている状態です。
特定のボリュームでTSSEを有効にする必要がある場合は、volume efficiency modifyコマンドでstorage-efficiencyモードをefficiencyに設定します
そのため、1台目のFSx for ONTAPで重複排除が効いた状態で、最終的な移行先のFSx for ONTAPのキャパシティプールストレージに移行することができます。
この時、1台目のFSx for ONTAPのボリュームは階層化ポリシーはAutoもしくはNoneにしておくので、プライマリストレージのサイズはある程度確保する必要があります。ただし、最終的な移行が完了したら1台目のFSx for ONTAPは削除するため、移行期間が短ければそこまで課金は気にならないのではと考えます。
TSSEの説明は以下NetApp公式ドキュメントとSB C&Sさんの技術ブログをご覧ください。
完全に順番が前後していますが、「TSSEはFabricPoolのローカル(FSx for ONTAPでいうところのプライマリストレージ)のみサポートしている」とドキュメントに書いてありました。
Temperature-sensitive storage efficiency
Beginning in ONTAP 9.8, temperature-sensitive storage efficiency (TSSE) is available. TSSE uses temperature scans to determine how hot or cold data is and compresses larger or smaller blocks of data accordingly — making storage efficiency more efficient.
Beginning in ONTAP 9.10.1, TSSE is supported on volumes located on FabricPool-enabled local tiers (storage aggregates). TSSE compression-based storage efficiencies are preserved when tiering to cloud tiers.
(以下機械翻訳)
温度感応型ストレージ効率化
ONTAP 9.8から、温度感応型ストレージ効率化(TSSE)が利用できます。TSSEは、温度スキャンを使用して 温度スキャンを使用して、データの温度と温度を判断し、それに応じてより大きなデータブロックまたはより小さなデータブロックを圧縮します。 より効率的なストレージ効率を実現します。
ONTAP 9.10.1以降、TSSEはFabricPoolが有効なローカル階層にあるボリュームでサポートされています。 (ストレージアグリゲート)にあるボリュームでサポートされます。TSSE圧縮ベースのストレージ効率は、クラウド層に階層化する際にも維持されます。 層化しても、圧縮ベースのストレージ効率は維持されます。
この記事が誰かの助けになれば幸いです。
以上、AWS事業本部 コンサルティング部の のんピ(@non____97)でした!