Comment améliorer les performances de mon système de fichiers FSx for Lustre ?

Lecture de 4 minute(s)
0

Je souhaite améliorer les performances de mon système de fichiers Amazon FSx for Lustre.

Résolution

Augmenter la taille du système de fichiers

Le débit pris en charge par un système de fichiers FSx for Lustre est proportionnel à sa capacité de stockage.

Capacité de débit = Capacité de stockage (TiB) * Débit de stockage par unité (Mbit/s)

Par exemple, un système de fichiers persistant doté d’une capacité de stockage de 4,8 TiB et de 50 Mbit/s par TiB de débit et par unité de stockage fournit :

  • Un débit de disque de base agrégé de 240 Mbit/s
  • Un débit de disque en rafale de 1,152 Gbit/s

Si les cibles de stockage d’objets (OST) sont presque pleines, le système de fichiers risque de ralentir ou de rester bloqué lorsque vous lisez ou écrivez sur le système de fichiers. Dans ce cas, augmentez la taille du système de fichiers.

Résoudre les problèmes d’équilibrage des OST

FSx for Lustre est un système de fichiers distribué composé d’OST qui stockent des données dans le système de fichiers. Pour voir le nombre d’OST et la taille de chaque OST, exécutez la commande suivante depuis le client :

$lfs df -h

S’il s’agit d’un système de fichiers déséquilibré, la sortie ressemble à la suivante :

UUID                 bytes   Used  Available Use%  Mounted on  
testfs-MDT0000_UUID  4.4G   214.5M   3.9G     4%   /mnt/testfs[MDT:0]  
testfs-MDT0001_UUID  4.4G   144.5M   4.0G     4%   /mnt/testfs[MDT:1]  
testfs-OST0000_UUID  2.0T   751.3G   1.1G    37%   /mnt/testfs[OST:0]  
testfs-OST0001_UUID  2.0T   755.3G   1.1G    37%   /mnt/testfs[OST:1]  
testfs-OST0002_UUID  2.0T     1.9T  55.1M    99%   /mnt/testfs[OST:2] <-  
testfs-OST0003_UUID  2.0T   751.3G   1.1G    37%   /mnt/testfs[OST:3]  
testfs-OST0004_UUID  2.0T   747.3G   1.1G    37%   /mnt/testfs[OST:4]  
testfs-OST0005_UUID  2.0T   743.3G   1.1G    36%   /mnt/testfs[OST:5]

filesystem summary: 11.8T     5.5T   5.7T    46%  /mnt/lustre

Le stockage disponible d’un seul OST peut être relativement plus faible ou plus important que le reste. Cela se produit en raison de l’une des conditions suivantes :

  • De nouveaux OST sont ajoutés, et l’optimisation n’est pas terminée.
  • Le nombre de bandes par défaut (un) a placé le fichier sur un seul OST.

Si plusieurs OST sont saturés, augmentez la capacité de stockage de votre système de fichiers. Si seuls quelques OST sont saturés, rééquilibrez les OST.

Réglez également la configuration des bandes pour libérer de l’espace et améliorer les performances. Vous pouvez paramétrer une configuration de mise en page progressive des fichiers (PFL), qui permet la modification de la mise en page d’un fichier en fonction de sa taille. Par exemple, pour spécifier une configuration de mise en page, utilisez la commande lfs setstripe avec les options -E afin de spécifier les composants de mise en page pour des fichiers de tailles différentes :

lfs setstripe -E 100M -c 1 -E 10G -c 8 -E 100G -c 16 -E -1 -c 32 /mountname/directory

Remarque :

  • Parfois l’option PFL n’est pas intéressante pour les fichiers plus petits.
  • Vous pouvez utiliser la commande lfs setstripe pour définir la configuration de bande uniquement pour les nouveaux fichiers et dossiers. Vous devez utiliser la commande lfs migrate pour supprimer les fichiers ou dossiers existants.
  • Parfois l’utilisation des bandes n’est pas intéressante pour les lectures séquentielles.

Utilisez des instances plus importantes pour les charges de travail entraînant beaucoup de calculs

Pour les charges de travail intenses, choisissez des instances dotées d’une capacité de mémoire ou de calcul plus importante.

Voici quelques bonnes pratiques en matière de réglage :

1.Réglez les instances client de grande taille pour des performances optimales :

Pour les types d’instances client dont la mémoire est supérieure à 64 Go, appliquez le réglage suivant :

lctl set_param ldlm.namespaces.*.lru_max_age=600000

Pour les types d’instances client comportant plus de 64 cœurs de processeur, appliquez le réglage suivant :

echo "options ptlrpc ptlrpcd_per_cpt_max=32" >> /etc/modprobe.d/modprobe.conf  
echo "options ksocklnd credits=2560" >> /etc/modprobe.d/modprobe.conf  
         
# reload all kernel modules to apply the above two settings  
sudo reboot

2.Une fois que le client est prêt, appliquez le réglage suivant :

sudo lctl set_param osc.*OST*.max_rpcs_in_flight=32  
sudo lctl set_param mdc.*.max_rpcs_in_flight=64  
sudo lctl set_param mdc.*.max_mod_rpcs_in_flight=50

Remarque :

La commande lctl set_param ne se poursuit pas après le redémarrage. Vous ne pouvez pas définir ces paramètres de façon permanente du côté client. Il est donc recommandé d’implémenter une tâche cron de démarrage pour définir la configuration avec les réglages recommandés.

Informations connexes

Niveau de référence agrégé et débit en rafale

Conseils pour accroître les performances

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an