Jakiej przepustowości należy się spodziewać w przypadku MPIO?

12

Dell PowerEdge 2950 z dwoma kartami sieciowymi 1 Gb / s do dwóch portów 1 Gb / s przełącznika, który następnie przechodzi do NetApp z czterema kartami sieciowymi 1 Gb / s, które są obecne jako jeden interfejs wirtualny. 24 dyski, 7200k SATA, NetApp RAID-DP. Odwzorowałem każdą kartę sieciową hosta na NetApp przy użyciu MPIO w inicjatorze Microsoft iSCSI. Testowanie z SQLIO wydaje mi się, że przepustowość zapisu wynosi około 200 MB, ale moje odczyty są bliższe 100 MB.

Czy moje odczyty nie powinny być bliższe 200 MB, tak jak moje zapisy? Czy to problem z konfiguracją, czy istnieje podstawowy problem z pamięcią, którego nie rozumiem?

wprowadź opis zdjęcia tutaj

Aktualizacja: oto IOPS dla losowego obciążenia. Odczyty mają jednak sens, nie jestem pewien, co zrobić z 20000 dla zapisów. Pamięć podręczna SAN wynosi 3,2 GB. Testy SQLIO dotyczą pliku 25 GB.

wprowadź opis zdjęcia tutaj

Henry Lee
źródło
3
Jaka jest pamięć podręczna na urządzeniu NetApp? Czy masz administratora sieci SAN, który może pobrać dla Ciebie dane? Mamy NetApp i udało nam się zidentyfikować kilka problemów dzięki kombinacji raportów i dzienników ostrzegawczych. Ostatecznie nasza sytuacja była złą kartą światłowodową, ale obsługa NetApp była bardzo pomocna w pomaganiu nam w usuwaniu przyczyn.
swasheck
2
Warto sprawdzić konfigurację agregatów i woluminów, aby upewnić się, że dyski są używane prawidłowo (nie krępuj się opublikować konfiguracji, choć nie jestem pewien, ilu z nas jest ekspertami od NetApp). Normalne jest, że zapisy są szybsze niż odczyty, ponieważ zapisy mogą być buforowane na filtrze przed wypchnięciem ich na dysk, ale odczyty muszą trafić na dysk, chyba że są już w pamięci podręcznej.
Nathan Jolly
2
@mrdenny Skąd bierze się pojęcie „99% IO w 64k blokach”? Bob Dorr wskazuje inaczej , podobnie jak Wes Brown . Nawet gdybyśmy zignorowali te dwa obszerne artykuły, z pewnością zdrowy rozsądek nakazuje, że zobaczysz 8K IO na platformie, która używa strony o rozmiarze 8K.
Mark Storey-Smith
2
@Mrdenny Mine musi zostać zepsuty, czy powinienem zadzwonić do wsparcia? Siedzę tutaj, patrząc na aktywność operacji we / wy pliku danych z monitorem procesu i chociaż spodziewany jest obfity odczyt 64K, jest wiele innych wielokrotnych odczytów 8K i oczywiście dużo zapisu 8k. Rejestrowanie jest zgodne z oczekiwaniami, wielokrotności 512 bajtów, od pojedynczego zapisu 512 bajtów do 60k.
Mark Storey-Smith
2
@ MarkStorey-Smith Z mojego doświadczenia wynika, że ​​odczyty w 8k występują zwykle skorelowane z fragmentacją. Może to również oznaczać niszczenie pamięci, niski czas życia strony ze względu na skany eksmitujące strony (tzn. Większość zakresu nadal znajduje się w pamięci). Dobrze dostrojony system powinien pokazywać 64k odczytów. Pisanie oczywiście zależy od tego, co jest faktycznie brudne.
Remus Rusanu,

Odpowiedzi:

7

Zapisy na dyskach faktycznie przechodzą do pamięci (NVRAM) na filtrze, który później zostanie opróżniony na dysk - na bezczynnym filtrze będą one niesamowicie szybkie, a zrzuty na poziomie 20 000 są całkiem wiarygodne (zobaczysz podobne prędkości z większości dysków SSD) .

Z drugiej strony, odczyty muszą pochodzić z dysku, chyba że znajdują się już w pamięci podręcznej odczytu filera (które, w przeciwieństwie do zapisów, znajdują się w pamięci ulotnej).

Trudno jest przypiąć dostawców pamięci masowej do procesorów Iops w celu obracania dysków, ale w przypadku napędu o prędkości 7200 obr./min 80-120 iops jest całkiem wiarygodne. Biorąc pod uwagę, że prawdopodobnie straciłeś kilka dysków na RAID-DP i / lub części zamienne NetApp, 2200 Iops jest zbliżone do tego, czego można oczekiwać od 22 dysków wykonujących około 100 Iops każdy.

Może to nie wyjaśniać twoich prędkości odczytu (twoje dyski mogą nie wykonywać pełnych 2200 Iopsów podczas wykonywania odczytu sekwencyjnego), ale może przynajmniej pomóc wyjaśnić twoją wydajność zapisu.

Nathan Jolly
źródło
Dzięki Nathan. Czy powinienem oczekiwać podwójnej przepustowości dzięki dwóm kartom sieciowym i MPIO?
Henry Lee
1
Czy jesteś w stanie sprawdzić wykorzystanie na filerach podczas przeprowadzania sekwencyjnych testów odczytu? Jeśli osiągnie 100%, twoje wąskie gardło dla tych prawdopodobnie znajduje się przy filtrze (albo z powodu ograniczeń konfiguracji lub Iops na każdym dysku), a połączenia MPIO / dodatkowe MPIO nic nie dodają. Twoja przepustowość zapisu może dalej wzrosnąć.
Nathan Jolly
5

Dla potomnych, po wielu próbach i błędach, wymyśliliśmy, jak uzyskać oczekiwaną przepustowość.

Jak wspomniano powyżej, NetApp miał jeden wirtualny interfejs wspierany przez cztery fizyczne karty sieciowe. Host ma dwie karty sieciowe, a ja skonfigurowałem MPIO za pomocą MS iSCSI Initiator, aby istniała ścieżka z każdej karty sieciowej do jednego interfejsu wirtualnego. Wyniki były powyżej przepustowości - zapisy miały sens przy prawie 200 MB lub szybkości dwóch kart sieciowych, ale odczyty były o połowę mniejsze niż prędkość jednej karty sieciowej.

Po bliższym przyjrzeniu się nasz facet z SAN zauważył, że ruch był przepływany tylko przez jedną z fizycznych kart sieciowych dla odczytów. Nie jestem pewien, czy po naszej stronie wystąpił błąd konfiguracji, ale próbowaliśmy dwóch rzeczy i oboje uzyskaliśmy przepustowość. Jednym z nich było przejście z jednego interfejsu wirtualnego wspieranego przez cztery karty sieciowe na dwa wirtualne interfejsy, każdy wspierany przez dwa karty sieciowe. Następnie odwzoruj jedną kartę sieciową hosta na jeden interfejs wirtualny. Inną rzeczą, której próbowaliśmy, było użycie „aliasingu” po stronie SAN do prezentacji wielu wirtualnych interfejsów. (Nie jestem facetem z SAN, więc mam nadzieję, że powiedziałem to poprawnie.)

Moje podejście polega na tym, że potrzebowaliśmy SAN do prezentacji więcej niż jednego interfejsu, aby inicjator naprawdę widział wiele ścieżek. Oto nasza przepustowość teraz:

wprowadź opis zdjęcia tutaj

Henry Lee
źródło
dlaczego mniejsze pisanie jest teraz wolniejsze?
Jack mówi, że spróbuj topanswers.xyz
Nie jestem pewien, nie udało nam się tego rozgryźć. Wyślę wiadomość, jeśli się zorientuję.
Henry Lee