Volumes de stockage d'instance SSD
Pour garantir les meilleures performances d'IOPS à partir de vos volumes de stockage d'instance SSD sur Linux, nous vous recommandons d'utiliser la version la plus récente d'Amazon Linux ou d'une autre AMI Linux avec la version 3.8 du noyau ou version ultérieure. Si vous n'utilisez pas une AMI Linux dotée de la version 3.8 ou ultérieure du noyau, votre instance n'atteindra pas les performances IOPS maximales pour ces types d'instance.
Comme pour tout autre volume de stockage d'instance, vous devez mapper les volumes de stockage d'instance SSD de votre instance lorsque cette dernière est lancée. Les données d'un volume d'instance SSD ne persistent que pendant la vie de son instance associée. Pour plus d'informations, consultez Ajouter des volumes de stockage d'instance à votre instance EC2.
Volumes SSD NVMe
Certaines instances offrent des volumes de stockage d'instance SSD NVMe (Non-Volatile Memory Express). Pour plus d'informations sur le type de volume de stockage d'instance pris en charge par chaque type d'instance, consultez Volumes de stockage d'instances.
Pour accéder aux volumes NVMe, les pilotes NVMe doivent être installés. Les AMI suivantes satisfont cette exigence :
Amazon Linux 2
AMI Amazon Linux 2018.03
-
Ubuntu 14.04 ou une version ultérieure avec noyau
linux-aws
Note Les types d'instances basés sur AWS Graviton nécessitent Ubuntu 18.04 ou une version ultérieure avec noyau
linux-aws
Red Hat Enterprise Linux 7.4 ou une version ultérieure
SUSE Linux Enterprise Server 12 SP2 ou une version ultérieure
CentOS 7.4.1708 ou une version ultérieure
FreeBSD 11.1 ou une version ultérieure
Debian GNU/Linux 9 ou version ultérieure
Bottlerocket
Après avoir connecté votre instance, vous pouvez répertorier les périphériques NVMe à l'aide de la commande lspci. Voici un exemple de sortie d'une instance i3.8xlarge
, qui prend en charge quatre périphériques 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)
Si vous utilisez un système d'exploitation pris en charge, mais que les périphériques NVMe ne sont pas visibles, vérifiez que le module NVMe est chargé à l'aide de la commande suivante.
-
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
Les volumes NVMe sont conformes à la spécification NVMe 1.0e. Vous pouvez utiliser les commandes NVMe avec vos volumes NVMe. Avec Amazon Linux, vous pouvez installer le package nvme-cli
à partir du référentiel à l'aide de la commande yum
install. Avec d'autres versions de Linux prises en charge, vous pouvez télécharger le package nvme-cli
s'il n'est pas disponible dans l'image.
Les données sur le stockage d'instance NVMe sont chiffrées à l'aide d'un chiffrement par blocs XTS-AES-256 implémenté dans un module matériel sur l'instance. Les clés de chiffrement sont générées à l'aide du module matériel et sont uniques pour chaque périphérique de stockage d'instance NVMe. Toutes les clés de chiffrement sont détruites lorsque l'instance est arrêtée ou résiliée et ne peuvent pas être récupérées. Vous ne pouvez pas désactiver le chiffrement et vous ne pouvez pas fournir votre propre clé de chiffrement.
Volumes SSD non NVMe
Les instances suivantes prennent en charge les volumes de stockage d'instance qui utilisent les disques SSD (Solid State Drive) NVMe pour fournir des performances d'I/O aléatoires élevées : C3, G2, I2, M3, R3 et X1. Pour plus d'informations sur la prise en charge des volumes de stockage d'instance par chaque type d'instance, consultez Volumes de stockage d'instances.
Prise en charge de TRIM sur les volumes de stockage d'instance
Certains types d'instance prennent en charge les volumes SSD avec TRIM. Pour plus d'informations, consultez Volumes de stockage d'instances.
Les volumes de stockage d'instance qui prennent en charge TRIM sont intégralement soumis à l'instruction TRIM avant d'être alloués à votre instance. Comme ces volumes ne sont pas formatés avec un système de fichiers au lancement de l'instance, vous devez les formater avant qu'ils ne puissent être montés et utilisés. Pour un accès plus rapide à ces volumes, vous devez ignorer l'opération TRIM lorsque vous les formatez.
Avec les volumes de stockage d'instance qui prennent en charge TRIM, vous pouvez utiliser la commande TRIM pour informer le contrôleur SSD du moment où vous n'avez plus besoin des données que vous avez écrites. Cela fournit au contrôleur plus d'espace disponible, ce qui peut réduire l'amplification d'écriture et augmenter les performances. Sous Linux, utilisez la commande fstrim
pour activer le TRIM périodique.