Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.


08.07.2019

Narzędzie EDR

ESET Enterprise Inspector
08.07.2019

Usuwanie skutków awarii

Veeam Availability Orchestrator v2
08.07.2019

Indywidualna konfiguracja

baramundi Management Suite 2019
05.07.2019

Technologia Ceph

SUSE Enterprise Storage 6
05.07.2019

Szybkie i bezpieczne...

Konica Minolta bizhub i-Series
05.07.2019

Edge computing

Atos BullSequana Edge
04.07.2019

Terabitowa ochrona

Check Point 16000 i 26000
04.07.2019

Obsługa wideokonferencji

Poly G7500
04.07.2019

Laptop biznesowy

Fujitsu LIFEBOOK U939X

Wirtualizacja i wydajność pamięci masowych

Data publikacji: 04-07-2019 Autor: Marek Sokół
Przykładowe konfiguracje RAID

Kupno nowego systemu dyskowego wydaje się procesem prostym i szybkim, bo wybór na rynku jest ogromny. Problem pojawia się, gdy zaczynamy analizować potrzeby organizacji, aby kupiony sprzęt spełniał wymagania środowiska i nie przekroczył dostępnego budżetu.

 

Bez względu na to, czy planujemy kupno nowej instalacji do serwerowni, czy odświeżenie już istniejącej, musimy podjąć wiele decyzji. Wyborów dokonujemy na różnych płaszczyznach: zakupy czy kompleksowe wdrożenie, serwery kasetowe czy pojedyncze, jakiego producenta, z jaką gwarancją, jakie systemy operacyjne, jakie przełączniki i jakie licencje. Przedzierając się przez gąszcz pytań, dotrzemy także do decyzji o pamięci masowej.

Rozważamy środowisko wirtualne ze współdzieloną przestrzenią dla maszyn wirtualnych. Wymagamy nadmiarowości wszystkich elementów – zatem pojedyncza awaria nie zatrzyma na zbyt długo usług i procesów; analogicznie system dostarczający przestrzeń dla maszyn wirtualnych także musi spełniać te wymagania. Nie możemy jednak na tym poprzestać. Niezawodność systemu jest bezwartościowa, gdy ten nie jest w stanie zapewnić oczekiwanej wydajności korzystającym z niego maszynom wirtualnym. Jak zatem zaplanować wydajność systemu dyskowego?

> WYDAJNOŚĆ DYSKU TWARDEGO

Zanim przejdziemy do pomiarów wydajności, warto się dowiedzieć, jak się mierzy wydajność. Źródłem i przyczyną wydajności jest operacja zapisu lub odczytu (I/O – Input/Output) porcji danych na dysk twardy. Liczba takich operacji możliwych do wykonania w ciągu sekundy wyznacza wydajność mierzoną w IOPS (Input Output Operations per Second). Dla dysków klasycznych (obrotowych) parametr ten bezpośrednio wynika z fizycznych możliwości ruchomych części, z których składa się nośnik danych, i wyrażany jest proporcją 1/(średni czas wyszukiwania [s] + średnie opóźnienie [s]). W praktyce wartości te wyrażamy w ms, zatem wygodniej jest wówczas w liczniku wstawić liczbę 1000. Średni czas wyszukiwania (average
seek time) to czas potrzebny głowicy dysku twardego na ustawienie się nad wymaganą ścieżką danych. Po ustawieniu głowicy jest mało prawdopodobne, że poszukiwana porcja danych jest dokładnie pod głowicą i w praktyce należy poczekać na obrót talerzy, aby głowica mogła odczytać wymagane dane. Uśredniając, wymagane dane znajdą się po przeciwnej stronie talerza (w stosunku do położenia głowicy), zatem musimy poczekać przez czas wymagany na wykonanie połowy obrotu. Wartość tego parametru bezpośrednio zależy od prędkości obrotowej talerzy w dysku. Wspomniany czas oczekiwania na obrót talerzy jest średnim opóźnieniem (average latency time) zawartym we wzorze. Najmniejszy blok danych, na których zwykle pracują dyski twarde, ma rozmiar 4 kB. Aby obliczyć średnią szybkość przesyłu danych z dysku, należy pomnożyć IOPS oraz rozmiar bloku. Bazując na danych z tabeli, łatwo obliczyć, że transfer dla małego bloku (4k) nie przekroczyłby 1 MB na sekundę. Gdy system operacyjny pracuje z dużą porcją danych, zwiększany jest blok danych (np. do 512 kB), który jest odczytywany/zapisywany w ramach jednej operacji I/O. Dla dysków obrotowych oznacza to dłuższy czas, przez który głowica pracuje z danymi, bez potrzeby oczekiwania na zmianę jej położenia czy obrotu talerza. W uproszczeniu można zatem przyjąć, że klasyczne dyski twarde mają taką samą wartość IOPS bez względu na blok danych, na których pracują.

Dla dysków SSD sytuacja wygląda inaczej – brak ruchomych części sprawia, że średni czas wyszukiwania oraz średnie opóźnienie są praktycznie stałe oraz mają znacznie mniejsze wartości. W związku z tym wartości IOPS zaczynają się od kilku tysięcy. Istotne jest natomiast, że dysk SSD zawsze pracuje na tej samej wielkości bloku danych – wynika to z jego budowy – zatem gdy system operacyjny wysyła do dysku dane w większych blokach, muszą być one podzielone na wielkości standardowe dla dysku. Charakterystyczne zatem dla tego rodzaju dysków będzie to, że przy powiększaniu bloku danych wartość IOPS będzie się proporcjonalnie zmniejszać (z punktu widzenia systemu operacyjnego). Za względu na architekturę budowy operacje zapisu na dyskach SSD są bardziej złożone w porównaniu z odczytem, co często prowadzi do mniejszej wydajności tych operacji.

> WYDAJNOŚĆ WIELU DYSKÓW

O ile wydajność jednego dysku twardego będzie wystarczająca dla laptopa, o tyle dla serwera przetwarzającego duże ilości danych będzie to za mało. Dodatkowo awaria tego dysku skutkowałaby niedostępnością serwera oraz jego usług. W obliczu braku możliwości zwiększenia wydajności oraz niezawodności dysku twardego łączy się je w grupy zwane RAID (Redundant Array of Independent Disks).

Przykładowe konfiguracje (schemat) prezentują zwiększenie wydajności w zakresie odczytu, w mniejszym stopniu w zakresie zapisu. Wynika to z architektury ochrony przed awarią dysku – nowe dane (z wyjątkiem RAID 0) zapisywane są przynajmniej na dwóch dyskach, aby zapobiec ich utracie w razie awarii. W przypadku odczytów można czytać z obu tych dysków różne dane, co zwiększa wydajność odczytu. Wyraźna dysproporcja wzrostu wydajności odczytów nad zapisami ma przełożenie w projektowaniu systemów pamięci masowych. W sytuacji gdy systemy komputerowe także wykonują więcej operacji odczytu niż zapisu, przedstawiona dysproporcja nie stanowi dużego problemu, a jeżeli zapisy przeważają, należy zastosować optymalizacje mające na celu zniwelowanie tych niedogodności.

 

> WYDAJNOŚĆ SYSTEMÓW

W środowiskach zwirtualizowanych, gdzie systemy zapewniające przestrzeń dyskową są współdzielone przez wiele maszyn wirtualnych, analiza potrzeb wydajnościowych utrzymywanych maszyn ma jeszcze większe znaczenie – jeden system intensywnie wykorzystujący zasoby dyskowe może drastycznie wpłynąć na wydajność pozostałych maszyn. Dochodzimy tym samym do kluczowych parametrów wymaganych od pamięci masowej, aby dane środowisko działało wydajnie. Są to:

 

  • stosunek operacji odczytów do zapisów,
  • stosunek sekwencyjnego do losowego dostępu do danych,
  • wymagane wartości IOPS oraz wielkości bloku danych dla poszczególnych maszyn wirtualnych, minimalne, średnie, maksymalne w kontekście godzinowym, dziennym czy tygodniowym,
  • wymagane opóźnienia w dostępie do danych.

 

[...]

 

Autor jest administratorem systemów IT. Zajmuje się infrastrukturą sieciowo-serwerową, pamięciami masowymi oraz wirtualizacją. Posiada tytuły VCP, MCP oraz CCNA. 

Artykuł pochodzi z miesięcznika: IT Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"