Chapitre 22. Alignement et taille des E/S de stockage
De récentes améliorations apportées aux standards SCSI et ATA permettent aux périphériques de stockage d'indiquer leurs préférences quant à l'alignement des E/S et à la taille des E/S (ce qui peut même être requis dans certains cas). Ces informations sont particulièrement utiles avec les nouveaux lecteurs de disques qui augmentent la taille du secteur physique de 512 octets à 4 Ko. Ces informations peuvent aussi être bénéfiques aux périphériques RAID, pour lesquels les tailles de bloc et d'entrelacement peuvent avoir un impact sur la performance.
La pile d'E/S Linux a été améliorée pour traiter l'alignement et la taille des E/S offerts par les fournisseurs, permettant aux outils de gestion de stockage (
parted
, lvm
, mkfs.*
, etc. ) d'optimiser le placement et l'accès aux données. Si un périphérique hérité n'exporte pas les données d'alignement et de taille des E/S, alors les outils de gestion de stockage Red Hat Enterprise Linux 7 aligneront de manière conservative les E/S sur une limite de 4 Ko (ou sur une puissance de 2). Ceci assurera que les périphériques à secteurs de 4 Ko opérèrent correctement même s'ils n'indiquent pas d'alignement et de taille d'E/S requis ou préféré.
Veuillez consulter Section 22.2, « Accès à l'espace utilisateur » afin d'apprendre comment déterminer les informations que le système d'exploitation a obtenu du périphérique. Ces données sont ensuite utilisées par les outils de gestion de stockage pour déterminer le placement des données.
Le planificateur d'E/S a changé dans Red Hat Enterprise Linux 7. Le planificateur d'E/S par défaut se nomme désormais Deadline, à l'exception des disques SATA. CFQ est le planificateur d'E/S par défaut des disques SATA. Pour un stockage plus rapide, Deadline surpasse CFQ et lors de son utilisation, une augmentation des performances se fait sentir sans qu'il soit nécessaire d'effectuer de réglages.
Si la valeur par défaut n'est pas correcte pour certains disques (par exemple, pour les disques à rotation SAS), alors veuillez changer le planificateur d'E/S sur CFQ. Cette instance dépendra de la charge de travail.
22.1. Paramètres d'accès au stockage
Le système d'exploitation utilise les informations suivantes pour déterminer l'alignement et la taille des E/S :
- physical_block_size
- Unité interne la plus petite sur laquelle le périphérique peut opérer
- logical_block_size
- Utilisé de manière externe pour adresser un emplacement sur le périphérique
- alignment_offset
- Nombre d'octets de décalage du début du périphérique bloc Linux (périphérique partition/MD/LVM) par rapport à l'alignement physique sous-jacent
- minimum_io_size
- Unité minimale préférée du périphérique pour les E/S aléatoires
- optimal_io_size
- Unité préférée du périphérique pour la transmission d'E/S
Par exemple, certains périphériques à secteurs de 4K peuvent utiliser une taille
physical_block_size
de 4K de manière interne mais présenter une taille logical_block_size
de 512 octets plus granuleuse dans Linux. Cet écart présente un certain potentiel pour des E/S non-alignées. Pour répondre à ce problème, la pile d'E/S Red Hat Enterprise Linux 7 tentera de démarrer toutes les zones de données sur une limite naturellement alignée (physical_block_size
) en s'assurant de prendre en compte tout décalage d'alignement « alignment_offset » si le début du périphérique bloc est décalé par rapport à l'alignement physique sous-jacent.
Les fournisseur de stockage peuvent également fournir des indicateurs sur les E/S à propos de l'unité minimale préférée pour des E/S aléatoires (
minimum_io_size
) ainsi que pour les E/S de transmission (optimal_io_size
) d'un périphérique. Par exemple, minimum_io_size
et optimal_io_size
pourraient correspondre, respectivement, aux tailles de bloc et d'entrelacement d'un périphérique RAID.