Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

SSD インスタンスストアボリューム

C、G2、2、I3、M3、R3、および X1 の各インスタンスは、ソリッドステートドライブ (SSD) を使用するインスタンスストアボリュームをサポートすることで、高いランダム I/O パフォーマンスを実現しています。インスタンスタイプごとのインスタンスストアボリュームのサポートの詳細については、「インスタンスストアボリューム」を参照してください。

Linux で SSD インスタンスストアボリュームから最高の IOPS 性能を得るには、最新バージョンの Amazon Linux、またはカーネルバージョン 3.8 以降の別の Linux AMI を使用することをお勧めします。カーネルバージョン 3.8 以降の Linux AMI を使用しないと、これらのインスタンスタイプで最大可能な IOPS パフォーマンスはインスタンスで実現されません。

他のインスタンスストアボリュームと同様に、インスタンスの SSD インスタンスストアボリュームを起動するときにマップする必要があります。SSD インスタンスボリューム上のデータは、関連するインスタンスの存続期間中のみ維持されます。詳細については、「EC2 インスタンスにインスタンスストアボリュームを追加する」を参照してください。

NVMe SSD ボリューム

C5d、I3、F1、、M5d、p3dn.24xlarge、R5d、および z1d インスタンスは、Non-Volatile Memory Express (NVMe) SSD インスタンスストアボリュームを提供します。NVMe ボリュームにアクセスするには、NVMe ドライバーをインストールする必要があります。以下の AMI はこの要件を満たしています。

  • Amazon Linux 2

  • Amazon Linux AMI 2018.03

  • Ubuntu 14.04 以降

  • Red Hat Enterprise Linux 7.4 以降

  • SUSE Linux Enterprise Server 12 以降

  • CentOS 7 以降

  • FreeBSD 11.1 以降

インスタンスに接続したら、lspci コマンドを使用して NVMe デバイスをリストできます。次に示すのは、4 つの NVMe デバイスをサポートする i3.8xlarge インスタンスの出力例です。

[ec2-user ~]$ lspci 00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02) 00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II] 00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] 00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 01) 00:02.0 VGA compatible controller: Cirrus Logic GD 5446 00:03.0 Ethernet controller: Device 1d0f:ec20 00:17.0 Non-Volatile memory controller: Device 1d0f:cd01 00:18.0 Non-Volatile memory controller: Device 1d0f:cd01 00:19.0 Non-Volatile memory controller: Device 1d0f:cd01 00:1a.0 Non-Volatile memory controller: Device 1d0f:cd01 00:1f.0 Unassigned class [ff80]: XenSource, Inc. Xen Platform Device (rev 01)

サポートされているオペレーティングシステムを使用しているが、NVMe デバイスが表示されない場合は、次のコマンドを使用して NVMe モジュールが読み込まれていることを確認します。

  • Amazon Linux、Amazon Linux 2、Ubuntu 14/16、Red Hat Enterprise Linux、SUSE Linux Enterprise Server、CentOS 7

    $ lsmod | grep nvme nvme 48813 0
  • Ubuntu 18

    $ cat /lib/modules/$(uname -r)/modules.builtin | grep nvme s/nvme/host/nvme-core.ko kernel/drivers/nvme/host/nvme.ko kernel/drivers/nvmem/nvmem_core.ko

NVMe ボリュームは NVMe 1.0e 仕様に準拠しています。NVMe コマンドは NVMe ボリュームで使用できます。Amazon Linux では、yum install コマンドを使用して repo から nvme-cli パッケージをインストールできます。サポートされているバージョンの Linux では、イメージで利用可能でない場合は nvme-cli パッケージをダウンロードできます。

NVMe インスタンスストレージのデータは、インスタンスのハードウェアモジュールに実装されている XTS-AES-256 ブロック暗号を使用して暗号化されます。暗号化キーは、ハードウェアモジュールで作成され、NVMe インスタンスストレージデバイスごとに固有です。すべての暗号化キーは、インスタンスが停止または終了して復元できないときに破棄されます。この暗号化を無効にしたり、独自の暗号キーを指定したりすることはできません。

インスタンスストアボリュームの TRIM のサポート

C5d、F1、I2、I3、、M5d、p3dn.24xlarge、R3、R5d、および z1d インスタンスでは、TRIM を持つ SSD ボリュームがサポートされます。

TRIM をサポートしているインスタンスストアボリュームは、インスタンスに割り当てられる前に完全に TRIM が実行されます。これらのボリュームは、インスタンスの起動時にファイルシステムを使用してフォーマットされないため、マウントして使用する前にボリュームをフォーマットする必要があります。これらのボリュームを迅速に使用できるようにするには、ボリュームをフォーマットするときに、TRIM 操作をスキップします。

TRIM をサポートするインスタンスストアボリュームでは、TRIM コマンドを使用して、書き込んだデータが不要になったときに SSD コントローラーに通知することができます。これにより、より多くの空き領域がコントローラーに与えられ、その結果書き込み増幅が減り、パフォーマンスが向上します。Linux では、fstrim コマンドを使用して定期的な TRIM を有効にします。