FSx for NetApp ONTAP SSD ストレージ容量の増やし方

2024/2/6 時点で FSx for NetApp ONTAP の SSD ストレージ容量は増やせますが、減らせません。SSD ストレージ容量の変更後は 6 時間変更ができなくなります。
2024.02.06

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

本ブログでは、FSx for NetApp ONTAP で SSD ストレージ容量を増やす手順を記載します。
注意事項や SSD ストレージ容量更新の概念なども記載しています。SSD ストレージ容量の増やし方手順を先に確認したい方は

に進んでください。

最初に注意事項まとめ

  • SSD ストレージ容量を増やす際はパーセンテージ指定か絶対値指定か選択できる
  • SSD ストレージ容量の最低値は 1024GiB(1TiB)、最大値は 192TiB
  • SSD ストレージ容量は増やせるが、減らせない
  • 現在の SSD ストレージ容量の 10% 以上でないと容量増加できない
    • 5% 増や 8% 増はできない。絶対値(GiB)で指定しても、10% 未満だと SSD ストレージ容量増加はできない
  • SSD ストレージ容量の変更後 6 時間は再度変更できない

「SSD ストレージ容量を増やす」とは

FSx for NetApp ONTAP(以降、FSxN と省略)を形成するコンポーネントとして、大きく以下 3 つの要素があります。

  • ファイルシステム
  • ストレージ仮想マシン(Storage Virtual Machine, SVM)
  • ボリューム

詳細は以下ブログもご参照ください。

SSD ストレージ容量は、FSxN ファイルシステムを作成する際に指定します。

ファイルシステムでデプロイした SSD ストレージ容量はプライマリストレージ階層(ONTAP の世界ではパフォーマンスティアと呼んだりします)として各ボリュームで分け合って使用されます。
プライマリストレージ階層については以下のブログをご参照ください。

各ボリュームで必要な SSD ストレージ容量(プライマリストレージ階層)が足りなくなった場合、ファイルシステムの設定で SSD ストレージ容量を増やすことができます。

1. マネジメントコンソールから SSD ストレージ容量を増やす手順

FSx コンソールのファイルシステム一覧で、SSD ストレージ容量を増やしたい対象の FSxN ファイルシステムの詳細を開きます。

SSD ストレージ容量のところに「更新」ボタンがあるのでクリックします。

マネジメントコンソールから SSD ストレージ容量はを変更する場合、パーセンテージ指定(Percentage)か、絶対値指定(Absolute)かで選択できます。

1-1. パーセンテージ指定で増やす

「ストレージ容量を変更」にチェックが入っていることを確認します。
「Percentage」のラジオボタンにチェックを入れ、希望する増加率を % 単位で指定します。ここでは 10% と指定しました。
後述しますが、10% 未満の値を入れることはできません。
余談ですが、ここでプロビジョンド SSD IOPS が「自動」になっていると、SSD を増やすとともにプロビジョンド IOPS 値も自動で増えます。

設定プレビューで、新しい値がいくつになるか確認できます。ここでは SSD ストレージ容量を 10% 増やすと 1024GiB → 1127GiB になることが確認できます。
最後に「更新」をクリックします。

更新完了まで 2 分程度かかりますので待ちましょう。
更新中は SSD ストレージ容量の表示箇所で「(xx GiB へ更新)」と表示されています。

ファイルシステム一覧の表示から見ると、ストレージキャパシティの欄に時計マークがついており、更新中であることがわかります。

更新中に SSD ストレージ容量更新ボタンを押下すると、以下のように更新中であるポップアップが表示され、更新操作ができないようになっています。

2 分程度待つと、更新が完了します。

ファイルシステムの一覧で見ると、時計マークが消えています。

ファイルシステムの詳細画面に戻ってくると、SSD ストレージ容量の表示も更新されて 1127GiB となっていました。
プロビジョンド IOPS も SSD 増加に伴い増えています。

1-2. 絶対値指定で増やす

同様に、絶対値指定のパターンも試してみます。SSD ストレージ容量の「更新」をクリックします。

入力タイプで「Absolute」のラジオボタンをチェックし、希望するストレージ容量を GiB 単位で指定します。
現在の SSD ストレージ容量は 1024GiB なのですが、1127GiB まで増やしてみましょう。

設定プレビューで、新しい値がいくつになるか確認できます。1024GiB → 1127GiB になることが確認できます。
最後に「更新」をクリックします。

更新には 2 分程度かかるので待ちましょう。

更新できました。

2. AWS CLI から SSD ストレージ容量を増やす手順

AWS CLI から SSD ストレージ容量を増やす場合、SSD ストレージ容量の絶対値を GiB 単位で指定します。

2-1. 変更前確認

マネジメントコンソールから確認しておきます。SSD ストレージ容量の変更前は以下のように 1957GiB です。

変更前の SSD ストレージ容量を確認するには、describe-file-systems コマンドを使います。
describe-file-systems — AWS CLI 2.15.16 Command Reference

以下コマンドで、SSD ストレージ容量を増やしたい対象の FSxN の情報をすべて出力できます。fs-xxxxxxxxxxxxxxxxx には SSD ストレージ容量を増やしたい対象 FSxN ファイルシステム ID を入れてください。

aws fsx describe-file-systems \
  --file-system-ids fs-xxxxxxxxxxxxxxxxx
実行結果例(クリックで展開)
[cloudshell-user@ip-10-130-60-184 ~]$ aws fsx describe-file-systems \
>   --file-system-ids fs-0a97f1cc5213491b0
{
    "FileSystems": [
        {
            "OwnerId": "123456789012",
            "CreationTime": "2024-01-31T12:02:42.077000+00:00",
            "FileSystemId": "fs-0a97f1cc5213491b0",
            "FileSystemType": "ONTAP",
            "Lifecycle": "AVAILABLE",
            "StorageCapacity": 1957,
            "StorageType": "SSD",
            "VpcId": "vpc-0ba94bcda8e3abf65",
            "SubnetIds": [
                "subnet-0e09e0ed421c8787f",
                "subnet-0f4c6549ec7ccfbc1"
            ],
            "NetworkInterfaceIds": [
                "eni-0c29c77e8e8e2bff4",
                "eni-0645b14608977bb21"
            ],
            "KmsKeyId": "arn:aws:kms:ap-northeast-1:123456789012:key/7bc6ef5a-a166-4293-9f1d-707f402b0ca5",
            "ResourceARN": "arn:aws:fsx:ap-northeast-1:123456789012:file-system/fs-0a97f1cc5213491b0",
            "Tags": [
                {
                    "Key": "environment",
                    "Value": "prd"
                },
                {
                    "Key": "Name",
                    "Value": "xxx-fsxn-test"
                }
            ],
            "AdministrativeActions": [
                {
                    "AdministrativeActionType": "FILE_SYSTEM_UPDATE",
                    "RequestTime": "2024-01-31T12:09:11.177000+00:00",
                    "Status": "COMPLETED",
                    "TargetFileSystemValues": {
                        "OntapConfiguration": {
                            "FsxAdminPassword": "<INTENTIONALLY REDACTED>"
                        }
                    }
                }
            ],
            "OntapConfiguration": {
                "AutomaticBackupRetentionDays": 2,
                "DailyAutomaticBackupStartTime": "15:00",
                "DeploymentType": "MULTI_AZ_1",
                "EndpointIpAddressRange": "172.19.234.128/28",
                "Endpoints": {
                    "Intercluster": {
                        "DNSName": "intercluster.fs-0a97f1cc5213491b0.fsx.ap-northeast-1.amazonaws.com",
                        "IpAddresses": [
                            "172.19.242.52",
                            "172.19.243.36"
                        ]
                    },
                    "Management": {
                        "DNSName": "management.fs-0a97f1cc5213491b0.fsx.ap-northeast-1.amazonaws.com",
                        "IpAddresses": [
                            "172.19.234.137"
                        ]
                    }
                },
                "DiskIopsConfiguration": {
                    "Mode": "AUTOMATIC",
                    "Iops": 5871
                },
                "PreferredSubnetId": "subnet-0e09e0ed421c8787f",
                "RouteTableIds": [
                    "rtb-09e64dbe5235dcd25"
                ],
                "ThroughputCapacity": 128,
                "WeeklyMaintenanceStartTime": "5:16:00",
                "HAPairs": 1,
                "ThroughputCapacityPerHAPair": 128
            }
        }
    ]
}
[cloudshell-user@ip-10-130-60-184 ~]$

以下コマンドでは --query オプションを使って、現在の SSD ストレージ容量(GiB)のみ出力できます。

aws fsx describe-file-systems \
  --file-system-ids fs-xxxxxxxxxxxxxxxxx \
  --query 'FileSystems[].[StorageCapacity]' \
  --output text

▼実行結果例

[cloudshell-user@ip-10-130-60-184 ~]$ aws fsx describe-file-systems \
>   --file-system-ids fs-0a97f1cc5213491b0 \
>   --query 'FileSystems[].[StorageCapacity]' \
>   --output text
1957
[cloudshell-user@ip-10-130-60-184 ~]$

2-2. SSD ストレージ容量増加

SSD ストレージ容量を変更するには、update-file-system コマンドを使います。
update-file-system — AWS CLI 2.15.17 Command Reference

以下コマンドで、SSD ストレージ容量を増やすことができます。
fs-xxxxxxxxxxxxxxxxx には SSD ストレージ容量を増やしたい対象 FSxN ファイルシステム ID を、--storage-capacity オプションの後には増加後の SSD ストレージ容量を GiB 単位で入力してください。
以下コマンドでは SSD ストレージ容量を 2153 GiB に変更します。

aws fsx update-file-system \
    --file-system-id fs-xxxxxxxxxxxxxxxxx \
    --storage-capacity 2153
実行結果例(クリックで展開)
[cloudshell-user@ip-10-130-60-184 ~]$ aws fsx update-file-system \
>     --file-system-id fs-0a97f1cc5213491b0 \
>     --storage-capacity 2153
{
    "FileSystem": {
        "OwnerId": "123456789012",
        "CreationTime": "2024-01-31T12:02:42.077000+00:00",
        "FileSystemId": "fs-0a97f1cc5213491b0",
        "FileSystemType": "ONTAP",
        "Lifecycle": "AVAILABLE",
        "StorageCapacity": 1957,
        "StorageType": "SSD",
        "VpcId": "vpc-0ba94bcda8e3abf65",
        "SubnetIds": [
            "subnet-0e09e0ed421c8787f",
            "subnet-0f4c6549ec7ccfbc1"
        ],
        "NetworkInterfaceIds": [
            "eni-0c29c77e8e8e2bff4",
            "eni-0645b14608977bb21"
        ],
        "KmsKeyId": "arn:aws:kms:ap-northeast-1:123456789012:key/7bc6ef5a-a166-4293-9f1d-707f402b0ca5",
        "ResourceARN": "arn:aws:fsx:ap-northeast-1:123456789012:file-system/fs-0a97f1cc5213491b0",
        "Tags": [
            {
                "Key": "environment",
                "Value": "prd"
            },
            {
                "Key": "Name",
                "Value": "xxx-fsxn-test"
            }
        ],
        "AdministrativeActions": [
            {
                "AdministrativeActionType": "FILE_SYSTEM_UPDATE",
                "RequestTime": "2024-02-01T06:22:06.488000+00:00",
                "Status": "PENDING",
                "TargetFileSystemValues": {
                    "StorageCapacity": 2153
                }
            },
            {
                "AdministrativeActionType": "STORAGE_OPTIMIZATION",
                "RequestTime": "2024-02-01T06:22:06.488000+00:00",
                "Status": "PENDING"
            },
            {
                "AdministrativeActionType": "FILE_SYSTEM_UPDATE",
                "RequestTime": "2024-01-31T12:09:11.177000+00:00",
                "Status": "COMPLETED",
                "TargetFileSystemValues": {
                    "OntapConfiguration": {
                        "FsxAdminPassword": "<INTENTIONALLY REDACTED>"
                    }
                }
            }
        ],
        "OntapConfiguration": {
            "AutomaticBackupRetentionDays": 2,
            "DailyAutomaticBackupStartTime": "15:00",
            "DeploymentType": "MULTI_AZ_1",
            "EndpointIpAddressRange": "172.19.234.128/28",
            "Endpoints": {
                "Intercluster": {
                    "DNSName": "intercluster.fs-0a97f1cc5213491b0.fsx.ap-northeast-1.amazonaws.com",
                    "IpAddresses": [
                        "172.19.242.52",
                        "172.19.243.36"
                    ]
                },
                "Management": {
                    "DNSName": "management.fs-0a97f1cc5213491b0.fsx.ap-northeast-1.amazonaws.com",
                    "IpAddresses": [
                        "172.19.234.137"
                    ]
                }
            },
            "DiskIopsConfiguration": {
                "Mode": "AUTOMATIC",
                "Iops": 5871
            },
            "PreferredSubnetId": "subnet-0e09e0ed421c8787f",
            "RouteTableIds": [
                "rtb-09e64dbe5235dcd25"
            ],
            "ThroughputCapacity": 128,
            "WeeklyMaintenanceStartTime": "5:16:00",
            "HAPairs": 1,
            "ThroughputCapacityPerHAPair": 128
        }
    }
}
[cloudshell-user@ip-10-130-60-184 ~]$

実行結果を展開いただくと、38、46 行目で、ステータスがまだ PENDING になっているのが分かります。変更完了まで 2 分程度時間がかかるので待ちましょう。
"AdministrativeActions" ブロックの中の 40 行目では "StorageCapacity": 2153 と表示されており、SSD ストレージ容量が 2153 GiB に変更中であることが分かります。

2-3. 変更後確認

変更後の SSD ストレージ容量を確認するには変更前と同様 describe-file-systems コマンドを使います。

以下コマンドで、SSD ストレージ容量を増やした対象の FSxN の情報をすべて出力できます。

aws fsx describe-file-systems \
  --file-system-ids fs-xxxxxxxxxxxxxxxxx
実行結果例(クリックで展開)
[cloudshell-user@ip-10-132-95-159 ~]$ aws fsx describe-file-systems \
>   --file-system-ids fs-0a97f1cc5213491b0
{
    "FileSystems": [
        {
            "OwnerId": "123456789012",
            "CreationTime": "2024-01-31T12:02:42.077000+00:00",
            "FileSystemId": "fs-0a97f1cc5213491b0",
            "FileSystemType": "ONTAP",
            "Lifecycle": "AVAILABLE",
            "StorageCapacity": 2153,
            "StorageType": "SSD",
            "VpcId": "vpc-0ba94bcda8e3abf65",
            "SubnetIds": [
                "subnet-0e09e0ed421c8787f",
                "subnet-0f4c6549ec7ccfbc1"
            ],
            "NetworkInterfaceIds": [
                "eni-0c29c77e8e8e2bff4",
                "eni-0645b14608977bb21"
            ],
            "KmsKeyId": "arn:aws:kms:ap-northeast-1:123456789012:key/7bc6ef5a-a166-4293-9f1d-707f402b0ca5",
            "ResourceARN": "arn:aws:fsx:ap-northeast-1:123456789012:file-system/fs-0a97f1cc5213491b0",
            "Tags": [
            {
                "Key": "environment",
                "Value": "prd"
            },
            {
                "Key": "Name",
                "Value": "xxx-fsxn-test"
            }
            ],
            "AdministrativeActions": [
                {
                    "AdministrativeActionType": "FILE_SYSTEM_UPDATE",
                    "RequestTime": "2024-02-01T06:22:06.488000+00:00",
                    "Status": "COMPLETED",
                    "TargetFileSystemValues": {
                        "StorageCapacity": 2153
                    }
                },
                {
                    "AdministrativeActionType": "FILE_SYSTEM_UPDATE",
                    "RequestTime": "2024-01-31T12:09:11.177000+00:00",
                    "Status": "COMPLETED",
                    "TargetFileSystemValues": {
                        "OntapConfiguration": {
                            "FsxAdminPassword": "<INTENTIONALLY REDACTED>"
                        }
                    }
                }
            ],
            "OntapConfiguration": {
                "AutomaticBackupRetentionDays": 2,
                "DailyAutomaticBackupStartTime": "15:00",
                "DeploymentType": "MULTI_AZ_1",
                "EndpointIpAddressRange": "172.19.234.128/28",
                "Endpoints": {
                    "Intercluster": {
                        "DNSName": "intercluster.fs-0a97f1cc5213491b0.fsx.ap-northeast-1.amazonaws.com",
                        "IpAddresses": [
                            "172.19.242.52",
                            "172.19.243.36"
                        ]
                    },
                    "Management": {
                        "DNSName": "management.fs-0a97f1cc5213491b0.fsx.ap-northeast-1.amazonaws.com",
                        "IpAddresses": [
                            "172.19.234.137"
                        ]
                    }
                },
                "DiskIopsConfiguration": {
                    "Mode": "AUTOMATIC",
                    "Iops": 6459
                },
                "PreferredSubnetId": "subnet-0e09e0ed421c8787f",
                "RouteTableIds": [
                    "rtb-09e64dbe5235dcd25"
                ],
                "ThroughputCapacity": 128,
                "WeeklyMaintenanceStartTime": "5:16:00",
                "HAPairs": 1,
                "ThroughputCapacityPerHAPair": 128
            }
        }
    ]
}
[cloudshell-user@ip-10-132-95-159 ~]$

以下コマンドでは --query オプションを使って、現在の SSD ストレージ容量(GiB)のみ出力できます。

aws fsx describe-file-systems \
  --file-system-ids fs-0a97f1cc5213491b0 \
  --query 'FileSystems[].[StorageCapacity]' \
  --output text

▼実行結果例

[cloudshell-user@ip-10-132-95-159 ~]$ aws fsx describe-file-systems \
>   --file-system-ids fs-0a97f1cc5213491b0 \
>   --query 'FileSystems[].[StorageCapacity]' \
>   --output text
2153
[cloudshell-user@ip-10-132-95-159 ~]$

マネジメントコンソールからも、SSD ストレージ容量が 1957GiB → 2153GiB に更新されているのが分かります。

SSD ストレージ容量を増やす時の注意点

SSD ストレージ容量を増やす時の注意点は AWS ドキュメントにまとまっています。
ストレージと IOPS を更新する際の考慮事項

SSD ストレージ容量の最低値は 1024GiB(1TiB)、最大値は 192TiB

1 つのファイルシステムの SSD ストレージ容量の最低値は 1024GiB(1TiB)です。この値より小さい容量ではデプロイできません。
また、SSD ストレージ容量の最大容量は 192TiB で、これ以上大きい容量もデプロイできません。

SSD ストレージ容量は増やせるが、減らせない

SSD ストレージ容量を増やすことはできますが、減らすことはできません。
多めにデプロイするのはやめ、不足したら少しずつ増やすようにしましょう。

東京リージョンでシングル AZ でデプロイした場合の SSD ストレージ容量は毎月 GB あたり 0.150USD かかります。
Amazon FSx for NetApp ONTAP の料金 — AWS

現在の SSD ストレージ容量の 10% 以上でないと容量増加できない

SSD ストレージ容量を増やす場合、現在の SSD ストレージ容量の 10% 以上の容量を指定しないと増やせません。
例えば現在の SSD ストレージ容量が 1024GiB だった場合、少なくとも 10% の増加率を満たす 1127GiB 以上の値でないと増やせません。

上記画像のように現在の SSD ストレージ容量が 1024GiB だった場合、1030GiB など増加率 10% を満たさない値は指定できません。

SSD ストレージ容量の変更後 6 時間は再度変更できない

SSD ストレージ容量の増加更新が完了した後、6 時間は変更ができなくなります。これはクールダウン期間と呼ばれるそうです。
SSD ストレージ容量の増加更新完了後、更新ボタンをクリックすると以下のポップアップが表示され、更新ができなくなっています。

また、SSD ストレージ容量の更新後はバックグラウンド処理が走るようなので、SSD ストレージ容量の更新をする場合はシステムの利用が少ない時間帯(業務時間外や夜間など)におこなうと良いでしょう。

ストレージ容量を増やすと、Amazon FSx はデータの再バランシングのためにストレージ最適化プロセスをバックグラウンドで実行します。ほとんどのファイルシステムでは、ストレージの最適化には数時間かかり、ワークロードのパフォーマンスへの影響は最小限に抑えられます。
SSD ストレージ容量と IOPS の更新 - FSx for ONTAP

SSD ストレージ容量の更新完了から 6 時間が経過すると、また更新ができるようになります。

参考