SC Storage-kunde meddelelser: Linux store IO størrelser kan påvirke iSCSI diskens tilgængelighed

Summary: En nylig ændring af kernen blev introduceret i Oracle Enterprise Linux distribution, der ændrer adfærden for, hvordan IO grænser beregnes på blok enheder.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Advarsel:

Disse ændringer er skitseret nedenfor.

Oracle Linux 6/7:

 

ELSA-2015-3098-nedbrud af virksomheds kerne og bugfix opdatering

http://linux.oracle.com/errata/ELSA-2015-3098.html

Udgivelsesdato/ 2015-11-13

[3.8.13-100.el6uek/3.8.13-100.el7uek]

blok: Fjern artifical max_hw_sectors hætte (Christoph Hellwig) [Orabug: 21511611]

 

 

Oracle Linux 5:

 

ELBA-2015-3076-løsning af virksomheds kerne fejl ret opdatering

http://linux.oracle.com/errata/ELBA-2015-3076.html

Udgivelsesdato/ 2015-08-27

[2.6.39-400.260.1.el5uek]

blok: Fjern artifical max_hw_sectors hætte (Joe Jin) [Orabug: 21455630]

 

 

 

Oversigt:

Hver blok enhed, der findes på et Linux-system, er tildelt en kømappe (findes på /sys/Block/xxx/Queue/). Denne mappe indeholder en række konfigurationsfiler. Oplysninger om disse filer kan findes på:

 

https://www.kernel.org/doc/Documentation/block/queue-sysfs.txt

 

De to parametre, der er relevante for denne CSTA:

 

max_hw_sectors_kb

Det maksimale antal kilobyte, der understøttes i en enkelt dataoverførsel.

Denne parameter er skrivebeskyttet og leveres af lagerenheden via SCSI forespørgsels respons. SCSI-Destinationsundersystemet i henhold til storage Center Operating System (SCOS) svarer i øjeblikket med et nul. Dette indikerer ingen grænse, så serveren indstiller værdien til den maksimalt tilladte i denne Linux Kernel-version (32).

 

max_sectors_kb

Det maksimale antal kilobyte, som blok laget skal tillade for en filsystem anmodning.

Denne værdi er med læse-/skriveadgang. Denne værdi skal være mindre end eller lig med den max_hw_sectors_kbværdi.

 

Ændringerne i Oracle Linux Kernel, der blev introduceret i kernels 2.6.39-400.260.1. el5uek, 3.8.13-100. el6uek og 3.8.13-100. el7uek ændret den måde, max_sectors_kb beregnes på. I tidligere kerne udgivelser var værdien altid indstillet til 512 KB. Efter denne ændring er værdien af max_sectors_kb indstillet til værdien af max_hw_sectors_kb. Dette forøgede egentlig maksimumstørrelsen på en enkelt IO overføres til en given blok enhed fra 512 KB til 32 MB.

 

Denne ændring udviste et problem med Storage Center 10Gb iSCSI-driver til IO størrelser større end ~ 8 MB. Den serverproces, der producerer den store IO, kan hænge, eller enheden kan blive utilgængelig pga. stor IO størrelse. Derudover kan controlleren i 10Gb iSCSI-driveren medføre at bruge den hukommelse, der kræves af andre Storage Center-undersystemer, hvilket kan medføre en større påvirkning.

 

 

 

Løsning:

For at undgå dette problem skal max_sectors_kb for hver blok enhed ændres dynamisk på Linux serveren. Nedenfor findes eksempel kommandoer for en blok enhed, der er forbundet til et Linux system:

 

#mpath1:

ekko 512 >/sys/Block/DM-6/Queue/max_sectors_kb

ekko 512 >/sys/Block/SDC/Queue/max_sectors_kb

ekko 512 >/sys/Block/Sde/Queue/max_sectors_kb

ekko 512 >/sys/Block/SDK/Queue/max_sectors_kb

ekko 512 >/sys/Block/SDM/Queue/max_sectors_kb

 

Disse ændringer er ikke permanente via genstart. Et init-script kan implementeres til at køre, når en given Server starter, der vil ændre denne parameter for alle iSCSI blok enheder. Kontakt en Linux administrator eller Oracle support for at finde ud af, hvordan du bedst implementerer denne persistens for hver enkelt kunde miljø.

 

Følgende script (udev-regel) indstiller max_sectors_kb for alle iSCSI tilsluttet Compellent-volumen til 512 KB. Brug dette script efter eget skøn, da ingen garantier eller garantier er underforstået. Det anbefales at teste scriptet, men det skal fungere uden problem.

 

Opret filen 99-CML-iSCSI. regler i katalog /etc/udev/rules.d/ med følgende indhold:

[root@localhost/] # Cat/etc/udev/rules.d/99-CML-iSCSI.Rules

# Modificer max_sectors_kb til Dell Storage Center iSCSI tilknyttede diskenheder

ACTION = = "add", \

MILJØ = = "*-iSCSI-* Compellent *", \

RUN + = "/bin/sh-c ' ECHO 512 >/sys $ DEVPATH/kø/max_sectors_kb '"

 

 

Berørte versioner:

Alle SCOS versioner påvirkes, så der anvendes 10 GB iSCSI grænseflader. Fibre Channel, 1 GB iSCSI og FCoE berøres ikke.

 

 

Løsning:

Det max_sectors_kbproblem er blevet løst i SCOS versioner, der er 7.01.12, 7.02.01 og 7.03.01 og højere.

 

Ændringer er tilgængelige i SCOS 6.07.03 og højere for at løse problemet med hukommelsesforbrug med driveren 10Gb iSCSI.

Cause

 

Resolution

 

Affected Products

Entry Level & Midrange, Compellent (SC, SCv & FS Series), Dell Compellent SC4020, Dell Storage SC8000, Dell Compellent Series 40, Dell Storage SCv2000, Dell Storage SCv2020, Dell Storage SCv2080, Dell Storage SC9000
Article Properties
Article Number: 000137348
Article Type: Solution
Last Modified: 03 May 2021
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.