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.
Amazon FSx pour les performances de Lustre
Ce chapitre fournit des rubriques relatives aux performances d'Amazon FSx for Lustre, y compris quelques conseils et recommandations importants pour optimiser les performances de votre système de fichiers.
Rubriques
Présentation de
Amazon FSx for Lustre, basé sur Lustre le célèbre système de fichiers hautes performances, fournit des performances évolutives qui augmentent de façon linéaire en fonction de la taille du système de fichiers. Lustreles systèmes de fichiers évoluent horizontalement sur plusieurs serveurs de fichiers et disques. Cette mise à l'échelle permet à chaque client d'accéder directement aux données stockées sur chaque disque afin de supprimer de nombreux goulots d'étranglement présents dans les systèmes de fichiers traditionnels. Amazon FSx for Lustre s'appuie sur une architecture Lustre évolutive pour garantir des niveaux de performances élevés sur un grand nombre de clients.
Comment fonctionnent les systèmes de fichiers FSx pour Lustre
Chaque système de fichiers FSx for Lustre se compose des serveurs de fichiers avec lesquels les clients communiquent et d'un ensemble de disques connectés à chaque serveur de fichiers qui stockent vos données. Chaque serveur de fichiers utilise un cache rapide en mémoire pour améliorer les performances des données les plus fréquemment consultées. En fonction de la classe de stockage, votre serveur de fichiers peut être configuré avec un cache de lecture SSD en option. Lorsqu'un client accède à des données stockées dans le cache en mémoire ou dans le cache SSD, le serveur de fichiers n'a pas besoin de les lire sur le disque, ce qui réduit la latence et augmente le débit total que vous pouvez gérer. Le schéma suivant illustre les chemins d'une opération d'écriture, d'une opération de lecture exécutée à partir d'un disque et d'une opération de lecture exécutée à partir d'un cache en mémoire ou SSD.
Lorsque vous lisez des données stockées dans le cache en mémoire ou SSD du serveur de fichiers, les performances du système de fichiers sont déterminées par le débit du réseau. Lorsque vous écrivez des données dans votre système de fichiers ou lorsque vous lisez des données qui ne sont pas stockées dans le cache en mémoire, les performances du système de fichiers sont déterminées par le débit réseau et le débit disque le plus faible.
Pour en savoir plus sur le débit réseau, le débit disque et les caractéristiques IOPS des classes de stockage SSD et HDD, consultez Caractéristiques de performance des classes de stockage SSD et HDD etCaractéristiques de performance de la classe Intelligent-Tiering de stockage.
Performance des métadonnées du système de fichiers
Les opérations d'E/S par seconde (IOPS) des métadonnées du système de fichiers déterminent le nombre de fichiers et de répertoires que vous pouvez créer, répertorier, lire et supprimer par seconde.
Les systèmes de fichiers Persistent 2 vous permettent de provisionner les IOPS de métadonnées indépendamment de la capacité de stockage et offrent une visibilité accrue sur le nombre et le type de métadonnées que les instances clientes IOPS génèrent sur votre système de fichiers. Avec les systèmes de fichiers SSD, les IOPS des métadonnées sont automatiquement provisionnées en fonction de la capacité de stockage que vous provisionnez. Le mode automatique n'est pas pris en charge sur les systèmes de Intelligent-Tiering fichiers.
Avec FSx pour les systèmes de fichiers Lustre Persistent 2, le nombre d'IOPS de métadonnées que vous provisionnez et le type d'opération de métadonnées déterminent le taux d'opérations de métadonnées que votre système de fichiers peut prendre en charge. Le niveau d'IOPS de métadonnées que vous provisionnez détermine le nombre d'IOPS provisionnés pour les disques de métadonnées de votre système de fichiers.
| Type d'opération | Opérations que vous pouvez effectuer par seconde pour chaque IOPS de métadonnées provisionnées |
|---|---|
|
Création, ouverture et fermeture de fichiers |
2 |
|
Supprimer un fichier |
1 |
|
Créer et renommer un répertoire |
0.1 |
|
Supprimer le répertoire |
0.2 |
Pour les systèmes de fichiers SSD, vous pouvez choisir de provisionner les IOPS des métadonnées en mode automatique. En mode automatique, Amazon FSx provisionne automatiquement les IOPS des métadonnées en fonction de la capacité de stockage de votre système de fichiers, conformément au tableau ci-dessous :
| Capacité de stockage du système de fichiers | IOPS de métadonnées incluses en mode automatique |
|---|---|
|
1 200 Go |
1 500 |
|
2400 Gio |
3000 |
|
4 800 à 9 600 GiB |
6 000 |
|
12 000 à 45 600 GiB |
12 000 |
|
≥ 48 000 GiB |
12000 IOPS pour 24000 GiB |
En User-provisioned mode, vous pouvez éventuellement choisir de spécifier le nombre d'IOPS de métadonnées à provisionner. Les valeurs valides sont les suivantes :
Pour les systèmes de fichiers SSD, les valeurs valides sont
15003000,6000,12000, et des multiples12000allant jusqu'à un maximum de192000.Pour les systèmes de Intelligent-Tiering fichiers, les valeurs valides sont
6000et12000.
Pour plus d'informations sur la configuration des IOPS des métadonnées, consultezGestion des performances des métadonnées. Notez que vous payez pour les IOPS de métadonnées provisionnées au-delà du nombre d'IOPS de métadonnées par défaut pour votre système de fichiers.
Débit vers les instances clientes individuelles
Si vous créez un système de fichiers avec une capacité de débit supérieure à 10 Gbit/s, nous vous recommandons d'activer Elastic Fabric Adapter (EFA) pour optimiser le débit par instance client. Afin d'optimiser davantage le débit par instance cliente, les systèmes de EFA-enabled fichiers prennent également en charge GPUDirect Storage pour les instances GPU-based clientes EFA-enabled NVIDIA et ENA Express pour les instances Express-enabled clientes ENA.
Le débit que vous pouvez transférer à une seule instance cliente dépend du type de système de fichiers que vous avez choisi et de l'interface réseau de votre instance cliente.
| Type de système de fichiers | Interface réseau de l'instance cliente | Débit maximal par client, Gbit/s |
|---|---|---|
|
Non EFA-enabled |
N’importe lequel |
100 Gbits/s* |
|
EFA-enabled |
ENA |
100 Gbits/s* |
|
EFA-enabled |
ENA Express |
100 Gbit/s |
|
EFA-enabled |
EFA |
700 Gbit/s |
|
EFA-enabled |
EFA avec GDS |
1200 Gbit/s |
Note
* Le trafic entre une instance cliente individuelle et un serveur de stockage d'objets FSx for Lustre individuel est limité à 5 Gbit/s. Consultez le Adresses IP pour les systèmes de fichiers pour connaître le nombre de serveurs de stockage d'objets qui sous-tendent votre système de fichiers FSx for Lustre.
Disposition de stockage du système de fichiers
Toutes les données des fichiers sont Lustre stockées sur des volumes de stockage appelés cibles de stockage d'objets (OST). Toutes les métadonnées des fichiers (y compris les noms de fichiers, les horodatages, les autorisations, etc.) sont stockées sur des volumes de stockage appelés cibles de métadonnées (MDT). Les systèmes de fichiers Amazon FSx pour Lustre sont composés d'un ou de plusieurs MDT et de plusieurs OST. Amazon FSx pour Lustre répartit les données de vos fichiers sur les systèmes d'exploitation qui constituent votre système de fichiers afin d'équilibrer la capacité de stockage avec le débit et la charge IOPS.
Pour afficher l'utilisation du stockage par le MDT et les OST qui composent votre système de fichiers, exécutez la commande suivante à partir d'un client sur lequel le système de fichiers est monté.
lfs df -hmount/path
La sortie de cette commande ressemble à ce qui suit.
Exemple
UUID bytes Used Available Use% Mounted onmountname-MDT0000_UUID 68.7G 5.4M 68.7G 0% /fsx[MDT:0]mountname-OST0000_UUID 1.1T 4.5M 1.1T 0% /fsx[OST:0]mountname-OST0001_UUID 1.1T 4.5M 1.1T 0% /fsx[OST:1] filesystem_summary: 2.2T 9.0M 2.2T 0% /fsx
Analyse des données de votre système de fichiers
Vous pouvez optimiser les performances de débit de votre système de fichiers grâce au découpage des fichiers. Amazon FSx for Lustre répartit automatiquement les fichiers entre les différents systèmes d'exploitation afin de garantir que les données sont diffusées depuis tous les serveurs de stockage. Vous pouvez appliquer le même concept au niveau des fichiers en configurant la façon dont les fichiers sont répartis sur plusieurs OST.
Le striping signifie que les fichiers peuvent être divisés en plusieurs morceaux qui sont ensuite stockés sur différents OST. Lorsqu'un fichier est réparti sur plusieurs OST, les demandes de lecture ou d'écriture adressées au fichier sont réparties sur ces OST, ce qui augmente le débit agrégé ou les IOPS que vos applications peuvent y effectuer.
Voici les mises en page par défaut pour les systèmes de fichiers Amazon FSx pour Lustre.
Pour les systèmes de fichiers créés avant le 18 décembre 2020, la disposition par défaut spécifie un nombre de bandes de 1. Cela signifie qu'à moins qu'une disposition différente ne soit spécifiée, chaque fichier créé dans Amazon FSx pour Lustre à l'aide d'outils Linux standard est stocké sur un seul disque.
Pour les systèmes de fichiers créés après le 18 décembre 2020, la mise en page par défaut est une mise en page progressive dans laquelle les fichiers d'une taille inférieure à 1 Go sont stockés sur une bande, et les fichiers plus volumineux se voient attribuer un nombre de bandes de 5.
Pour les systèmes de fichiers créés après le 25 août 2023, la mise en page par défaut est une mise en page progressive à 4 composants, qui est expliquée dansDispositions de fichiers progressives.
Pour tous les systèmes de fichiers, quelle que soit leur date de création, les fichiers importés depuis Amazon S3 n'utilisent pas la mise en page par défaut, mais celle du
ImportedFileChunkSizeparamètre du système de fichiers. S3-imported les fichiers plus grands que leImportedFileChunkSizeseront stockés sur plusieurs OST avec un nombre de bandes de(FileSize / ImportedFileChunksize) + 1. La valeur par défaut deImportedFileChunkSizeest 1 GiB.
Vous pouvez afficher la configuration de mise en page d'un fichier ou d'un répertoire à l'aide de la lfs getstripe commande.
lfs getstripepath/to/filename
Cette commande indique le nombre de bandes, la taille et le décalage des bandes d'un fichier. Le nombre de bandes correspond au nombre d'OST sur lesquels le fichier est réparti par bandes. La taille de bande correspond à la quantité de données continues stockées sur un OST. Le décalage de bande est l'index du premier OST sur lequel le fichier est rayé.
Modifier votre configuration de striping
Les paramètres de mise en page d'un fichier sont définis lors de sa création initiale. Utilisez la lfs setstripe commande pour créer un nouveau fichier vide avec une mise en page spécifiée.
lfs setstripefilename--stripe-countnumber_of_OSTs
La lfs setstripe commande affecte uniquement la mise en page d'un nouveau fichier. Utilisez-le pour spécifier la mise en page d'un fichier avant de le créer. Vous pouvez également définir la mise en page d'un répertoire. Une fois définie dans un répertoire, cette disposition est appliquée à chaque nouveau fichier ajouté à ce répertoire, mais pas aux fichiers existants. Tout nouveau sous-répertoire que vous créez hérite également de la nouvelle mise en page, qui est ensuite appliquée à tout nouveau fichier ou répertoire que vous créez dans ce sous-répertoire.
Pour modifier la mise en page d'un fichier existant, utilisez la lfs migrate commande. Cette commande copie le fichier selon les besoins pour distribuer son contenu conformément à la mise en page que vous spécifiez dans la commande. Par exemple, les fichiers ajoutés ou dont la taille est augmentée ne modifient pas le nombre de bandes. Vous devez donc les migrer pour modifier la mise en page des fichiers. Vous pouvez également créer un nouveau fichier à l'aide de la lfs setstripe commande pour spécifier sa mise en page, copier le contenu d'origine dans le nouveau fichier, puis renommer le nouveau fichier pour remplacer le fichier d'origine.
Dans certains cas, la configuration de mise en page par défaut n'est pas optimale pour votre charge de travail. Par exemple, un système de fichiers comportant des dizaines d'OST et un grand nombre de fichiers de plusieurs gigaoctets peut bénéficier de meilleures performances en répartissant les fichiers sur un nombre de bandes supérieur à la valeur par défaut de cinq OST. La création de fichiers volumineux avec un faible nombre de bandes peut entraîner des goulots d'étranglement en I/O termes de performances et peut également entraîner un remplissage des OST. Dans ce cas, vous pouvez créer un répertoire avec un plus grand nombre de bandes pour ces fichiers.
Il est important de configurer une mise en page par bandes pour les fichiers volumineux (en particulier les fichiers de taille supérieure à un gigaoctet) pour les raisons suivantes :
Améliore le débit en permettant à plusieurs OST et à leurs serveurs associés de contribuer aux IOPS, à la bande passante réseau et aux ressources du processeur lors de la lecture et de l'écriture de fichiers volumineux.
Réduit la probabilité qu'un petit sous-ensemble d'OST devienne des points chauds qui limitent les performances globales de la charge de travail.
Empêche un seul fichier volumineux de remplir un OST, ce qui peut provoquer des erreurs de remplissage du disque.
Il n'existe pas de configuration de mise en page optimale pour tous les cas d'utilisation. Pour obtenir des conseils détaillés sur la mise en page des fichiers, consultez la section Gestion de la mise en page des fichiers (découpage) et de l'espace libre
La mise en page par bandes est particulièrement importante pour les fichiers volumineux, en particulier pour les cas d'utilisation où les fichiers font régulièrement des centaines de mégaoctets ou plus. C'est pourquoi la mise en page par défaut d'un nouveau système de fichiers attribue un compte par bandes de cinq aux fichiers d'une taille supérieure à 1 Go.
Le nombre de bandes est le paramètre de mise en page que vous devez ajuster pour les systèmes prenant en charge des fichiers volumineux. Le nombre de bandes indique le nombre de volumes OST qui contiendront des morceaux d'un fichier réparti par bandes. Par exemple, avec un nombre de bandes de 2 et une taille de bande de 1 Mo, Lustre écrit des segments alternatifs de 1 Mo d'un fichier sur chacun des deux OST.
Le nombre de bandes effectif est le moins élevé entre le nombre réel de volumes OST et la valeur du nombre de bandes que vous spécifiez. Vous pouvez utiliser la valeur spéciale du nombre de bandes
-1pour indiquer que les bandes doivent être placées sur tous les volumes OST.La définition d'un grand nombre de bandes pour les petits fichiers n'est pas optimale car, pour certaines Lustre opérations, un aller-retour réseau vers chaque OST de la mise en page est nécessaire, même si le fichier est trop petit pour occuper de l'espace sur tous les volumes OST.
Vous pouvez configurer une mise en page de fichier progressive (PFL) qui permet de modifier la mise en page d'un fichier en fonction de sa taille. Une configuration PFL peut simplifier la gestion d'un système de fichiers comportant une combinaison de fichiers volumineux et de petits fichiers sans que vous ayez à définir explicitement une configuration pour chaque fichier. Pour de plus amples informations, veuillez consulter Dispositions de fichiers progressives.
La taille de bande par défaut est de 1 Mo. La définition d'un décalage de bande peut être utile dans certaines circonstances, mais en général, il est préférable de ne pas le spécifier et d'utiliser la valeur par défaut.
Dispositions de fichiers progressives
Vous pouvez spécifier une configuration de mise en page progressive des fichiers (PFL) pour un répertoire afin de spécifier différentes configurations de bandes pour les fichiers de petite et de grande taille avant de le remplir. Par exemple, vous pouvez définir un PFL dans le répertoire de niveau supérieur avant que des données ne soient écrites dans un nouveau système de fichiers.
Pour spécifier une configuration PFL, utilisez la lfs setstripe commande avec des -E options pour spécifier les composants de mise en page pour des fichiers de différentes tailles, comme la commande suivante :
lfs setstripe -E 100M -c 1 -E 10G -c 8 -E 100G -c 16 -E -1 -c 32/mountname/directory
Cette commande définit quatre composants de mise en page :
Le premier composant (
-E 100M -c 1) indique une valeur de nombre de bandes de 1 pour les fichiers d'une taille maximale de 100 Mo.Le deuxième composant (
-E 10G -c 8) indique un nombre de bandes de 8 pour les fichiers d'une taille maximale de 10 Go.Le troisième composant (
-E 100G -c 16) indique un nombre de bandes de 16 pour les fichiers d'une taille maximale de 100 Go.Le quatrième composant (
-E -1 -c 32) indique un nombre de bandes de 32 pour les fichiers de plus de 100 Go.
Important
L'ajout de données à un fichier créé avec une mise en page PFL remplira tous ses composants de mise en page. Par exemple, avec la commande à 4 composants illustrée ci-dessus, si vous créez un fichier de 1 Mo et que vous ajoutez des données à la fin de celui-ci, la mise en page du fichier s'agrandira pour avoir un nombre de bandes de -1, ce qui signifie tous les OST du système. Cela ne signifie pas que les données seront écrites sur chaque OST, mais une opération telle que la lecture de la longueur du fichier enverra une requête en parallèle à chaque OST, ce qui augmentera considérablement la charge réseau du système de fichiers.
Par conséquent, veillez à limiter le nombre de bandes pour tout fichier de petite ou moyenne longueur auquel des données peuvent ensuite être ajoutées. Étant donné que les fichiers journaux augmentent généralement en raison de l'ajout de nouveaux enregistrements, Amazon FSx for Lustre attribue un nombre de bandes par défaut de 1 à tout fichier créé en mode ajout, quelle que soit la configuration de bandes par défaut spécifiée par son répertoire parent.
La configuration PFL par défaut sur Amazon FSx pour les systèmes de fichiers Lustre créés après le 25 août 2023 est définie à l'aide de cette commande :
lfs setstripe -E 100M -c 1 -E 10G -c 8 -E 100G -c 16 -E -1 -c 32/mountname
Les clients dont les charges de travail disposent d'un accès hautement simultané à des fichiers de taille moyenne à grande sont susceptibles de bénéficier d'une mise en page comportant davantage de bandes aux tailles plus petites et des bandes sur tous les OST pour les fichiers les plus volumineux, comme le montre l'exemple de mise en page à quatre composants.
Surveillance des performances et de l'utilisation
Chaque minute, Amazon FSx for Lustre transmet des mesures d'utilisation pour chaque disque (MDT et OST) à Amazon. CloudWatch
Pour afficher les détails agrégés de l'utilisation du système de fichiers, vous pouvez consulter la statistique Somme de chaque métrique. Par exemple, la somme des DataReadBytes statistiques indique le débit de lecture total observé par tous les OST d'un système de fichiers. De même, la somme des FreeDataStorageCapacity statistiques indique la capacité de stockage totale disponible pour les données de fichiers dans le système de fichiers.
Pour plus d'informations sur la surveillance des performances de votre système de fichiers, consultezSurveillance des systèmes de fichiers Amazon FSx for Lustre.