La Queue Depth ?La valeur queue depth, traduction littérale profondeur de la file, est un chiffre qui correspond au nombre maximal de requêtes disques qui vont être acceptée sans attente. Par défaut le queue depth est paramétré à 32 sur VMware ESX, ce qui implique un maximum de 32 requêtes disques simultanées.
Surveiller les compteurs Une valeur trop faible impliquerait un goulot d'étranglement (bottleneck) au niveau des I/O disques, ce qui générerait du CPU WAIT et donc une augmentation de l'utilisation du CPU. En effet, si cette file d'attente est remplie les communications disques sont arrêtées brièvement le temps de la vider. Il est possible et même recommandé d'augmenter cette valeur de 32 à 64 dans le cas d'une utilisation importante du disque voire même à 128 en cas d'utilisation intensive. Comment intervenir Pour modifier cette valeur, il vous faut d'abord connaître le type de carte HBA que vous utilisez (Emulex ou Qlogic). Pour vérifier, connectez-vous en console (SSH) aux serveurs ESX et lancer les commandes : vmkload_mod -l | grep lpfcdd, donnera un résultat si vous possédez une Emulex. vmkload_mod -l | grep qla, si vous possédez une QLogic Vous pouvez maintenant modifier la valeur de la Queue Depth. D'une part sur le serveur physique en console (SSH) : Pour une carte QLogic : esxcfg-module -s ql2xmaxqdepth=64 qla2300_707_vmw (ou qla2300_707 si vous êtes en ESX 3.0) Pour une Emulex : esxcfg-module -s "lpfc0_lun_queue_depth=64 lpfc1_lun_queue_depth=64" Pour rendre ce changement persistent au reboot du serveur, vous devrez lancer la commande : esxcfg-boot –b D'autre part, vous modifierez le paramètre lié suivant, dans la configuration avancée de chaque ESX (VI Client) : Disk.SchedNumReqOutstanding. Afin de prendre ces modifications en compte, vous devrez ensuite rebooter les serveurs ESX.
|