SSD 執行個體存放區磁碟區 - Amazon Elastic Compute Cloud

SSD 執行個體存放區磁碟區

若要在 Linux 上確保 SSD 執行個體存放磁碟區的最佳 IOPS 效能,建議使用最新版的 Amazon Linux,或是具備 3.8 或更新版核心的另一種 Linux AMI。如果未使用具備 3.8 或更新版核心的 Linux AMI,執行個體將無法達成這些執行個體類型可實現的最佳 IOPS 效能。

如同其他的執行個體存放磁碟區,您必須在啟動執行個體時,對應執行個體的 SSD 執行個體存放磁碟區。SSD 執行個體磁碟區上的資料,只會存在於其相關執行個體的生命週期期間。如需更多詳細資訊,請參閱 將執行個體存放區磁碟區新增至 EC2 執行個體

NVMe SSD 磁碟區

某些執行個體提供非揮發性記憶體儲存裝置 (NVMe) 固態硬碟 (SSD) 執行個體存放區磁碟區。關於每種執行個體類型所支援的執行個體存放磁碟區類型,詳細資訊請參閱執行個體存放區磁碟區

若要存取 NVMe 磁碟區,必須安裝 NVMe 驅動程式。下列 AMI 符合此需求:

  • Amazon Linux 2

  • Amazon Linux AMI 2018.03

  • Ubuntu 14.04 (含 linux-aws 核心) 或更新版本

  • Red Hat Enterprise Linux 7.4 或更新版本

  • SUSE Linux Enterprise Server 12 SP2 或更新的版本

  • CentOS 7.4.1708 或更新版本

  • FreeBSD 11.1 或更新版本

  • Debian GNU/Linux 9 或更新版本

在連線到執行個體之後,您可以使用 lspci 指令,來列出 NVMe 裝置。下列是 i3.8xlarge 執行個體的輸出範例,此執行個體支援四種 NVMe 裝置。

[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 命令,從儲存庫安裝 nvme-cli 套件。使用其他支援的 Linux 版本時,如果映像中未提供,您可以下載 nvme-cli 套件。

NVMe 執行個體儲存體上的資料會以執行個體上的硬體模組中實作的 XTS-AES-256 區塊編碼器來加密。加密金鑰是以硬體模組來產生,且對每個 NVMe 執行個體儲存體設備而言是唯一的。所有加密金鑰會在執行個體停止或終止時銷毀,且無法復原。您無法停用此加密,也無法提供您自己的加密金鑰。

非 NVMe SSD 磁碟區

下列執行個體支援使用非 NVMe SSD 的執行個體存放區磁碟區,以提供高度的隨機 I/O 效能:C3、G2、I2、M3、R3 和 X1。關於每種執行個體類型所支援的執行個體存放磁碟區,詳細資訊請參閱執行個體存放區磁碟區

執行個體存放區磁碟區 TRIM 支援

某些執行個體類型支援具有 TRIM 的 SSD 磁碟區。如需更多詳細資訊,請參閱 執行個體存放區磁碟區

支援 TRIM 的執行個體存放磁碟區,會在分配給執行個體之前完全停用刪除通知 (執行 trim 指令)。在執行個體啟動時,這些磁碟區不會格式化為任何檔案系統,因此您必須先將這些磁碟區格式化之後,才能掛載和使用這些磁碟區。若要更快速地存取這些磁碟區,應在將這些磁碟區格式化時跳過 TRIM 操作。

使用支援 TRIM 的執行個體存放磁碟區時,當不再需要已寫入的資料時,可以利用 TRIM 指令來通知 SSD 控制器。這會讓控制器有更多的可用空間能夠使用,可減少寫入放大現象,並提升效能。在 Linux 上,使用 fstrim 命令以啟用定期 TRIM。