Dell Unity: Varningsjusteringen för Linux LUN-format förskjuts med 512 byte. Det kan leda till dålig prestanda
Summary: Dell Unity: Varningsjusteringen för Linux LUN-format förskjuts med 512 byte. Detta kan leda till dålig prestanda.
Symptoms
Det här problemet beror på att Dell Unity annonserar SPC-4-stöd, vilket resulterar i förändringar i Linux SCSI-beteende jämfört med en Linux-anslutning till VNX2/VNX-seriens disksystem.
Två saker påverkar makefs prestanda:
- Linux utfärdar nu unmap-kommandon till en tunn Dell Unity LUN.
- Linux använder data som returneras i en Inquiry Vital Product Data Page 0xB2 för att bestämma hur ett filsystem ska justeras, och de data som returneras av matrisen resulterar i ett feljusterat filsystem.
Varningsjusteringen för Linux LUN-format förskjuts med 512 byte. Detta kan leda till dålig prestanda.
# 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
Linux fdisk använder den optimala överföringsstorleken som finns på en förfrågningssida 0xB0 som startsektor när du skapar en partition på ett LUN utan partitioner. Eftersom den optimala överföringsstorleken är 65535 kommer mkfs därefter (och korrekt) att hävda att filsystemet är feljusterat.
Du kommer 0xB0 att ändra den optimala överföringsstorleken på en Inq VPD-sida i en framtida Dell Unity-uppdatering.
Resolution
Som en tillfällig lösning kan kunden använda 2048 (decimal) som startsektor för fdisk. "mkfs" bygger sedan ett korrekt justerat filsystem. Observera att Linux partitions-/filsystemverktyg har olika switchar/alternativ för att skapa partitioner och filsystem. De kan använda sektorer eller cylindrar som enheter. Vi vill att de ska använda SEKTORER som måttenheter med sina verktyg.
Om du skapar två eller flera partitioner på en LUN ska de efterföljande partitionerna skapas med en startsektor som en multipel av 2048.
Om du istället använder "fdisk -c" måste du ange att du ska börja vid 65536 (systemet ger standardvärdet 65535) "-c" är dos-kompatibilitetsläget och enligt Linux man-sida ska denna flagga användas.
Om du inte använder alternativet "-c" får du följande.
[root@localhost nasadmin]# fdisk -u /dev/sdi WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c').
Som en tillfällig lösning för "fdisk -c" att använda 65536 som startsektor. Det ger justerade filsystem.
Additional Information
Om flaggan "-c" inte används med kommandot fdisk:
Som en tillfällig lösning kan kunden använda 2048 (decimal) som startsektor för fdisk."
mkfs" och bygg sedan ett korrekt justerat filsystem. Observera att Linux partitions-/filsystemverktyg har olika switchar/alternativ för att skapa partitioner och filsystem.
De kan använda sektorer eller cylindrar som enheter. Vi vill att de ska använda SEKTORER som måttenheter med sina verktyg.
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
----------------------
Om flaggan "-c" används med kommandot fdisk:
Samma sak gäller, men du bör börja med ett värde på 65536.
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
Nyckeln här är att det tal som används för att starta inriktningen ordentligt ska kunna delas med 2048.
Om vi tar exemplet ovan: 65536/2048 = 32 >>>> justeringen är korrekt, 65536 kan användas för att justera partitionen.
65556/2048=32.00976 >>>>Justering felaktig Därför kan detta värde inte användas.