Caractéristiques et surveillance d'Amazon EBS I/O - Amazon EBS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Caractéristiques et surveillance d'Amazon EBS I/O

Dans une configuration de volume donnée, certaines caractéristiques d'E/S déterminent le comportement de performance de vos EBS volumes.

  • SSDles volumes sauvegardés, à usage général SSD (gp2etgp3) et provisionnés IOPS SSD (io1etio2), offrent des performances constantes, qu'une opération d'E/S soit aléatoire ou séquentielle.

  • HDDles volumes sauvegardés, Throughput Optimized HDD (st1) et Cold HDD (sc1), offrent des performances optimales uniquement lorsque les opérations d'E/S sont volumineuses et séquentielles.

Pour comprendre le fonctionnement SSD et les HDD volumes de votre application, il est important de connaître le lien entre la demande du volume, la quantité IOPS disponible, le temps nécessaire pour effectuer une opération d'E/S et les limites de débit du volume.

IOPS

IOPSsont une unité de mesure qui représente input/output operations per second. The operations are measured in KiB, and the underlying drive technology determines the maximum amount of data that a volume type counts as a single I/O. I/O size is capped at 256 KiB for SSD volumes and 1,024 KiB for HDD volumes because SSD volumes handle small or random I/O beaucoup plus efficacement que HDD les volumes.

Lorsque de petites opérations d'E/S sont physiquement séquentielles, Amazon EBS essaie de les fusionner en une seule opération d'E/S jusqu'à la taille d'E/S maximale. De même, lorsque les opérations d'E/S sont supérieures à la taille d'E/S maximale, Amazon EBS tente de les diviser en opérations d'E/S plus petites. Le tableau suivant montre quelques exemples.

Type de volume Taille d’I/O maximum Opérations d’I/O de votre application Nombre de IOPS Remarques
SSD 256 Kio 1 opération d’I/O de 1 024 KiB 4 (1 024÷256=4) Amazon EBS divise les 1 024 opérations d'E/S en quatre opérations plus petites de 256 KiB.
8 x opérations d’I/O séquentielles de 32 Kio 1 (8x32=256) Amazon EBS fusionne les huit opérations d'E/S séquentielles de 32 KiB en une seule opération de 256 KiB.
8 opérations d’I/O aléatoires de 32 KiB 8 Amazon EBS compte les opérations d'E/S aléatoires séparément.
HDD 1 024 KiB 1 opération d’I/O de 1 024 KiB 1 L’opération d’I/O est déjà égale à la taille d’I/O maximale. Elle n’est ni fusionnée ni divisée.
8 x opérations d’I/O séquentielles de 128 Kio 1 (8x128=1 024) Amazon EBS fusionne les huit opérations d'E/S séquentielles de 128 KiB en une seule opération d'E/S de 1 024 KiB.
8 opérations d’I/O aléatoires de 32 KiB 8 Amazon EBS compte les opérations d'E/S aléatoires séparément.

Par conséquent, lorsque vous créez un volume SSD sauvegardé en charge de 3 000 IOPS (soit en provisionnant un io2 volume de 3 000 GoIOPS, io1 soit en dimensionnant un gp2 volume à 1 000 GiB, soit en utilisant un gp3 volume) et que vous l'attachez à une instance EBS optimisée capable de fournir une bande passante suffisante, vous pouvez transférer jusqu'à 3 000 E/S de données par seconde, le débit étant déterminé par la taille des E/S.

Latence et longueur de file d’attente d’un volume

La longueur de file d’attente d’un volume correspond au nombre de demandes d’I/O pour un appareil. La latence est le temps réel passé par le end-to-end client lors d'une opération d'E/S, en d'autres termes, le temps écoulé entre l'envoi d'une E/S EBS et la réception d'un accusé de réception indiquant EBS que la lecture ou l'écriture des E/S est terminée. La longueur de la file d'attente doit être correctement calibrée en fonction de la taille des E/S et de la latence afin d'éviter de créer des goulots d'étranglement sur le système d'exploitation client ou sur la liaison réseau vers celui-ci. EBS

La longueur de file d'attente optimale varie pour chaque charge de travail, en fonction de la sensibilité IOPS et de la latence de votre application. Si votre charge de travail ne fournit pas suffisamment de demandes d'E/S pour utiliser pleinement les performances disponibles pour votre EBS volume, il est possible que celui-ci ne fournisse pas le débit IOPS ou le débit que vous avez provisionnés.

Les applications à transactions intensives sont sensibles à l'augmentation de la latence des E/S et conviennent parfaitement aux volumes sauvegardés. SSD Vous pouvez maintenir un niveau élevé IOPS tout en réduisant la latence en maintenant une faible longueur de file d'attente et un nombre élevé de files d'attente IOPS disponibles pour le volume. Le fait d'acheminer constamment un volume supérieur IOPS à ce qui est disponible peut entraîner une augmentation de la latence des E/S.

Les applications gourmandes en débit sont moins sensibles à l'augmentation de la latence des E/S et conviennent parfaitement aux volumes sauvegardés. HDD Vous pouvez maintenir un débit élevé vers les volumes HDD sauvegardés en maintenant une longueur de file d'attente élevée lorsque vous effectuez de grandes E/S séquentielles.

Taille des I/O et limites de débit par volume

Pour les volumes SSD sauvegardés, si la taille de vos E/S est très importante, vous risquez de rencontrer un nombre inférieur à IOPS celui que vous avez provisionné car vous atteignez la limite de débit du volume. Par exemple, un gp2 volume inférieur à 1 000 GiB avec des crédits de rafale disponibles est IOPS limité à 3 000 et une limite de débit de 250 MiB/s. If you are using a 256 KiB I/O size, your volume reaches its throughput limit at 1000 IOPS (1000 x 256 KiB = 250 MiB). For smaller I/O sizes (such as 16 KiB), this same volume can sustain 3,000 IOPS because the throughput is well below 250 MiB/s. (These examples assume that your volume's I/O n'atteint pas les limites de débit de l'instance.) Pour plus d'informations sur les limites de débit pour chaque type de EBS volume, consultezTypes de EBS volumes Amazon.

Pour les opérations d'E/S de moindre envergure, vous pouvez voir une higher-than-provisioned IOPS valeur mesurée depuis l'intérieur de votre instance. Cela se produit lorsque le système d'exploitation de l'instance fusionne de petites opérations d'E/S en une opération plus importante avant de les transmettre à Amazon. EBS

Si votre charge de travail utilise des E/S séquentielles sur HDD -backed st1 et sur sc1 des volumes, vous risquez de rencontrer un nombre plus élevé que prévu d'IOPSE/S mesuré depuis votre instance. Cela se produit lorsque le système d’exploitation de l’instance fusionne des I/O séquentielles et les comptabilise dans des unités de 1 024 Kio. Si votre charge de travail utilise des I/O de petite taille ou aléatoires, vous risquez d’obtenir un débit moins élevé que prévu. Cela est dû au fait que nous comptons chaque E/S aléatoire et non séquentielle dans le IOPS décompte total, ce qui peut vous amener à atteindre la IOPS limite du volume plus tôt que prévu.

Quel que soit EBS le type de volume, si vous n'obtenez pas le débit IOPS ou le débit attendus dans votre configuration, assurez-vous que la bande passante de votre EC2 instance n'est pas le facteur limitant. Vous devez toujours utiliser une instance EBS optimisée de génération actuelle (ou une instance qui inclut 10 Gb/s network connectivity) for optimal performance. Another possible cause for not experiencing the expected IOPS is that you are not driving enough I/O volumes). EBS

Surveillez les caractéristiques des E/S à l'aide de CloudWatch

Vous pouvez surveiller ces caractéristiques d'E/S à l'aide des métriques de volume de chaque CloudWatch volume.

Moniteur pour les E/S bloquées

VolumeStalledIOChecksurveille l'état de vos EBS volumes afin de déterminer à quel moment ils sont altérés. La métrique est une valeur binaire qui renvoie un état 0 (réussite) ou un état 1 (échec) selon que le EBS volume peut ou non effectuer les opérations d'E/S.

Si la VolumeStalledIOCheck métrique échoue, vous pouvez soit attendre AWS que le problème soit résolu, soit prendre des mesures, telles que le remplacement du volume concerné ou l'arrêt et le redémarrage de l'instance à laquelle le volume est attaché. Dans la plupart des cas, lorsque cette métrique EBS échoue, elle diagnostique et restaure automatiquement votre volume en quelques minutes. Vous pouvez utiliser l'action Pause I/O AWS Fault Injection Service pour exécuter des expériences contrôlées afin de tester votre architecture et votre surveillance sur la base de cette métrique afin d'améliorer votre résilience face aux défaillances de stockage.

Surveiller la latence des E/S pour un volume

Vous pouvez surveiller la latence moyenne pour les opérations de lecture et d'écriture d'un EBS volume Amazon en utilisant respectivement VolumeAvgWriteLatency les métriques VolumeAvgReadLatency et.

Si la latence de vos E/S est supérieure à ce dont vous avez besoin, assurez-vous que votre application n'essaie pas de générer un débit IOPS ou un débit supérieur à celui que vous avez prévu pour votre volume. Utilisez les formules suivantes pour calculer la moyenne IOPS et le débit acheminés vers votre volume sur une période donnée, puis comparez-les avec le provisionnement IOPS et le débit du volume.

Sum(VolumeReadOps) + Sum(VolumeWriteOps) Estimated average IOPS in ops/s = ---------------------------------------- Period - Sum(VolumeIdleTime)
(Sum(VolumeReadBytes) + Sum(VolumeWriteBytes)) / 1024 Estimated average throughput in KiB/s = ----------------------------------------------------- Period - Sum(VolumeIdleTime)

Vous pouvez également surveiller les VolumeThroughputExceededCheck indicateurs VolumeIOPSExceededCheck et pour déterminer si votre charge de travail a constamment tenté de générer IOPS un débit supérieur aux performances allouées à votre volume en une minute donnée. Si driven dépasse IOPS régulièrement les IOPS performances provisionnées de votre volume, la VolumeIOPSExceededCheck métrique est renvoyée1. Si le débit piloté dépasse régulièrement les performances de débit provisionné de votre volume, la VolumeThroughputExceededCheck métrique est renvoyée. 1 Si le trafic IOPS et le débit sont conformes aux performances allouées à votre volume, les indicateurs sont renvoyés. 0

Si votre application nécessite un nombre supérieur à ce IOPS que votre volume peut fournir, vous devez envisager d'utiliser l'une des solutions suivantes :

  • Un gp3io2, ou un io1 volume provisionné avec une quantité suffisante pour IOPS atteindre la latence requise

  • Un gp2 volume plus important qui fournit des IOPS performances de base suffisantes

HDD-backed st1 et les sc1 volumes sont conçus pour optimiser les performances avec les charges de travail qui tirent parti de la taille d'E/S maximale de 1 024 KiB. Pour déterminer la taille moyenne des E/S de votre volume, divisez VolumeWriteBytes parVolumeWriteOps. Le même calcul s’applique pour les opérations de lecture. Si la taille d’I/O moyenne est inférieure à 64 Kio, vous devriez pouvoir améliorer les performances en augmentant la taille des opérations d’I/O envoyées à un volume st1 ou sc1.

Surveillez l'équilibre des compartiments en rafale pourgp2,st1, et les sc1 volumes

BurstBalance affiche l’équilibre du compartiment en rafales des volumes gp2, st1 et sc1 sous forme de pourcentage du solde restant. Lorsque votre compartiment en rafales est épuisé, le I/O du volume (pour volumes gp2) ou le débit de volume (pour les volumes st1 et sc1) est limité au niveau de référence. Vérifiez la valeur BurstBalance pour déterminer si votre volume est limité pour cette raison. Pour une liste complète des EBS métriques Amazon disponibles, consultez la section CloudWatch Métriques Amazon pour Amazon EBS et les EBSmétriques Amazon pour les instances basées sur Nitro.

Surveillez les statistiques de performance des E/S en temps réel

Vous pouvez accéder à des statistiques de performance détaillées en temps réel pour les EBS volumes Amazon attachés à des EC2 instances Amazon basées sur Nitro.

Vous pouvez combiner ces statistiques pour obtenir la latence moyenne et/ou pour vérifier si les opérations d'E/S sont terminées. IOPS Vous pouvez également consulter la durée totale pendant laquelle votre application a dépassé les limites de provisionnement ou de débit de votre EBS volume IOPS ou de l'instance attachée. En suivant l'augmentation de ces statistiques au fil du temps, vous pouvez déterminer si vous devez augmenter vos limites de provisionnement IOPS ou de débit pour optimiser les performances de votre application. Les statistiques de performances détaillées incluent également des histogrammes pour les opérations d'E/S en lecture et en écriture, qui fournissent une distribution de votre latence d'E/S en suivant le nombre total d'opérations d'E/S effectuées dans une bande de latence.

Pour de plus amples informations, veuillez consulter Statistiques de performance EBS détaillées d'Amazon.

Ressources connexes

Pour plus d'informations sur les caractéristiques EBS d'Amazon I/O, consultez la présentation re:Invent suivante : Amazon EBS : Designing for Performance.