Dell Unity: La alineación de advertencia del formato LUN de Linux se compensa en 512 bytes. Esto puede dar lugar a un rendimiento deficiente
Summary: Dell Unity: La alineación de advertencia del formato LUN de Linux se compensa en 512 bytes. Esto puede dar lugar a un rendimiento deficiente.
Symptoms
Este problema se debe a que Dell Unity anuncia soporte para SPC-4, lo que produce cambios en el comportamiento de SCSI de Linux en comparación con una conexión de Linux a arreglos de la familia VNX2/VNX.
Dos cosas afectan el rendimiento de makefs:
- Linux ahora emite comandos de desasignación a un LUN delgado de Dell Unity.
- Linux utiliza los datos devueltos en una 0xB2 de página Inquiry Vital Product Data Page para decidir cómo alinear un sistema de archivos, y los datos devueltos por el arreglo dan como resultado un sistema de archivos desalineado.
La alineación de advertencia del formato LUN de Linux se compensa en 512 bytes. Esto puede dar lugar a un rendimiento deficiente.
# mkfs.ext3 /dev/mapper/mpathd1 mke2fs 1.42.9 (28-Dec-2013) /dev/mapper/mpathd1 alignment is offset by 512 bytes. This may result in very poor performance, (re)-partitioning suggested. <<<<<<<<<<< Disk /dev/mapper/VGsdb-LVsdb: 29.9 TiB, 32875361599488 bytes, 64209690624 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 8192 bytes / 33553920 bytes Alignment offset: 512 bytes
Cause
El fdisk de Linux utiliza el tamaño de transferencia óptimo que se encuentra en un 0xB0 de página de datos vitales de consulta como el sector de inicio cuando se crea una partición en un LUN sin particiones. Dado que este tamaño de transferencia óptimo es 65 535, mkfs posteriormente afirmará (y correctamente) que el sistema de archivos está desalineado.
El cambio del tamaño de transferencia óptimo en una página de Inq VPD 0xB0 se realizará en una futura actualización de Dell Unity.
Resolution
Como solución alternativa, el cliente puede utilizar 2048 (decimal) como el SECTOR inicial para fdisk. A continuación, "mkfs" crea un sistema de archivos alineado correctamente. Tenga en cuenta que las utilidades de partición/sistema de archivos de Linux tienen varios switches/opciones para crear particiones y sistema de archivos. Pueden utilizar sectores o cilindros como unidades. Queremos que usen los SECTORES como unidades de medida con sus utilidades.
Si crea dos o más particiones en un LUN, las particiones subsiguientes se deben crear con un SECTOR inicial como múltiplo de 2048.
Si usa "fdisk -c", en su lugar debe especificar que comience en 65536 (el sistema da el valor predeterminado de 65535) "-c" es el modo de compatibilidad de dos y, de acuerdo con la página de manual de Linux, esta opción debe usarse.
Además, si no usa la opción "-c", obtendrá lo siguiente.
[root@localhost nasadmin]# fdisk -u /dev/sdi WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c').
Como solución alternativa para que "fdisk -c" utilice 65536 como sector de inicio. Eso produce sistemas de archivos alineados.
Additional Information
Si la opción "-c" no se utiliza con el comando fdisk:
Como solución alternativa, el cliente puede usar 2048 (decimal) como SECTOR inicial para fdisk".
mkfs" y, a continuación, cree un sistema de archivos alineado correctamente. Tenga en cuenta que las utilidades de partición/sistema de archivos de Linux tienen varios switches/opciones para crear particiones y sistema de archivos.
Pueden utilizar sectores o cilindros como unidades. Queremos que usen los SECTORES como unidades de medida con sus utilidades.
Partition number (1-4): 1
First sector (1-167772159, default 65535): 2048
Last sector, +sectors or +size{K,M,G} (2048-167772159, default 167772159):
Using default value 167772159
----------------------
Si se utiliza la opción "-c" con el comando fdisk:
Lo mismo se aplica, pero debe comenzar con un valor de 65 536.
primary partition (1-4)
Partition number (1-4): 1
First sector (65535-524287999, default 131070): 65536
Last sector, +sectors or +size{K,M,G} (65536-524287999, default 524287999): 524287999
La clave aquí es que el número utilizado para iniciar la alineación correctamente debe ser divisible por 2048.
Tomando el ejemplo anterior: 65536/2048 = 32 >>>> la alineación es correcta, 65536 se puede utilizar para alinear la partición.
65556/2048=32.00976 >>>>alineación incorrecta, por lo tanto, no se puede utilizar este valor.