Jak wybrać macierz dyskową, aby nie strzelić sobie w stopę

Wprowadzenie

Nadszedł czas na zakup systemu storage. Który wybrać, kogo słuchać? Producent A mówi o producencie B, a następnie jest integrator C, który mówi odwrotnie i poleca producenta D. W takiej sytuacji nawet doświadczony architekt systemów storage może się zakręcić w głowie, zwłaszcza z nowymi producentami i modnym dzisiaj SDS oraz hiperkonwergencją.

Jak więc w tym wszystkim się odnaleźć i nie zostać oszukanym? My (AntonVirtual Anton Żbankow i korp Eugeniusz Ełizarow) spróbujemy o tym opowiedzieć po polsku i w prosty sposób.
Artykuł w dużej mierze nawiązuje do, a w rzeczywistości jest rozszerzeniem "Projektu zwirtualizowanego centrum danych" w zakresie wyboru systemów storage i przeglądu technologii systemów przechowywania. Krótko przedstawimy ogólną teorię, ale zalecamy lekturę wskazanej artykułu.

Dlaczego

Często można zaobserwować, jak nowa osoba pojawia się na forum lub w specjalistycznym czacie, takim jak Storage Discussions i zadaje pytanie: "mam dwie oferty systemów storage – ABC SuperStorage S600 oraz XYZ HyperOcean 666v4, co polecacie?"

I zaczyna się porównywanie, jakie mają cechy implementacyjne przerażających i niezrozumiałych funkcji, które dla przygotowanej osoby są całkowicie obce.

Kluczowe i pierwsze pytanie, które należy sobie zadać na długo przed porównywaniem specyfikacji w ofertach handlowych to – DLACZEGO? Po co potrzebny jest ten system storage?

Jak wybrać macierz dyskową, aby nie strzelić sobie w stopę

Odpowiedź będzie zaskakująca, bardzo w stylu Tony'ego Robbinsa – by przechowywać dane. Dziękuję, kapitanie! Niemniej jednak, czasami tak głęboko zapuszczamy się w porównania detali, że zapominamy, po co to właściwie robimy.

Zadaniem systemu przechowywania danych jest przechowywanie i udostępnianie DANYCH z określoną wydajnością. I od tych danych zaczniemy.

Dane

Typ danych

Jakie dane planujemy przechowywać? To bardzo ważne pytanie, które może wykluczyć wiele systemów pamięci masowej z dalszego rozważania. Na przykład planowane jest przechowywanie nagrań wideo i zdjęć. Od razu można wykreślić systemy zaprojektowane do losowego dostępu małymi blokami, lub systemy z firmowymi funkcjami kompresji/dedupikacji. Mogą to być świetne systemy, nie chcemy nic złego o nich powiedzieć. Jednak w tym przypadku ich mocne strony mogą stać się słabościami (wideo i zdjęcia nie podlegają kompresji) lub po prostu znacznie zwiększą koszt systemu.

I odwrotnie, jeśli docelowe zastosowanie to obciążona transakcyjna baza danych DBMS, to znakomite systemy strumieniowe do multimediów, zdolne do wydawania gigabajtów na sekundę, będą złym wyborem.

Objętość danych

Ile danych planujemy przechować? Liczba zawsze przekształca się w jakość, o tym nigdy nie wolno zapominać, zwłaszcza w dobie eksponencjalnego wzrostu objętości danych. Systemy klasy petabajtowej nie są już rzadkością, ale im więcej petabajtów, tym bardziej specyficzny staje się system, tym mniej dostępnych funkcji oferują systemy z losowym dostępem o małej i średniej pojemności. Z prostej przyczyny: tylko tabele statystyk dostępu do bloków stają się większe niż dostępna pamięć operacyjna na kontrolerach. Nie wspominając o kompresji/tyringu. Załóżmy, że chcemy przełączyć algorytm kompresji na silniejszy i spróbować skompresować 20 petabajtów danych. Ile to potrwa: pół roku, rok?

Z drugiej strony, po co budować fabrykę, jeśli musimy przechować i przetworzyć 500 GB danych? Zaledwie 500. Domowe SSD (z niskim DWPD) tego rozmiaru kosztują niewiele. Po co w takim razie budować fabrykę Fiber Channel i kupować zewnętrzny system pamięci masowej wysokiej klasy, który kosztuje fortunę?

Jaki procent całkowitej objętości to dane gorące? Jak bardzo jest nierównomierne obciążenie według objętości danych? Tutaj technologia wielowarstwowego przechowywania lub Flash Cache może bardzo pomóc, jeśli objętość danych gorących jest znikoma w porównaniu do całości. Z drugiej strony, przy równomiernym obciążeniu całkowitości, co często zdarza się w systemach strumieniowych (monitoring wideo, niektóre systemy analityczne), podobne technologie nic nie dają i tylko zwiększają koszt / złożoność systemu.

IS

Drugą stroną danych jest system informacyjny, który wykorzystuje te dane. IS ma zestaw wymagań, które dziedziczą dane. Więcej o IS w punkcie "Projektowanie wirtualizowanej centrum danych".

Wymagania dotyczące odporności na awarie / dostępności

Wymagania dotyczące odporności na awarie / dostępności danych dziedziczone są z używanych IS i wyrażane w trzech liczbach — RPO, RTO, dostępność.

Dostępność — udział w danym okresie czasu, w którym dane są dostępne do pracy z nimi. Zazwyczaj wyrażana jest w liczbie 9. Na przykład dwie dziewiątki w roku oznaczają, że dostępność wynosi 99%, czyli dopuszczalna jest niezdolność do działania przez 95 godzin w roku. Trzy dziewiątki — 9,5 godziny w roku.

RPO / RTO — to wskaźniki nie sumaryczne, a na każdy incydent (awarię), w przeciwieństwie do dostępności.

RPO — objętość danych utraconych w wyniku awarii (w godzinach). Na przykład, jeśli odbywa się tworzenie kopii zapasowej raz na dobę, to RPO = 24 godziny. Tzn. w razie awarii i całkowitej utraty STH mogą zostać utracone dane o objętości do 24 godzin (od momentu utworzenia kopii zapasowej). Na podstawie zadanego dla IS RPO, określa się regulamin tworzenia kopii zapasowych. Ponadto, na podstawie RPO, można zrozumieć, jak bardzo potrzebna jest synchronizowana / asynchronizowana replikacja danych.

RTO — czas przywracania usługi (dostępu do danych) po awarii. Na podstawie zadanego wartości RTO możemy zrozumieć, czy potrzebny jest metroklauster, czy wystarczy jednostronna replikacja. Czy potrzebna jest również wielokontrolerowa STH klasy hi-end — także.

Jak wybrać macierz dyskową, aby nie strzelić sobie w stopę

Wymagania dotyczące wydajności

Mimo że to dość oczywiste pytanie, z nim właśnie pojawiają się najwięcej trudności. W zależności od tego, czy już masz jakąś infrastrukturę, czy nie, będą budowane drogi zbierania potrzebnych statystyk.

Masz już macierz dyskową i szukasz jej zamiennika lub chcesz nabyć kolejną w celu rozszerzenia. To proste. Rozumiesz, jakie usługi już posiadasz i jakie planujesz wdrożyć w najbliższej przyszłości. Na podstawie aktualnie obsługiwanych usług masz możliwość zebrania statystyk dotyczących wydajności. Ustalić aktualną liczbę IOPS oraz obecne opóźnienia — jakie są te wskaźniki i czy wystarczają do twoich zadań? Możesz to zrobić zarówno na samej macierzy, jak i po stronie hostów, które są do niej podłączone.

Warto zwrócić uwagę nie tylko na aktualne obciążenie, ale także na przestrzeń czasową (preferencyjnie miesiąc). Sprawdź, jakie są maksymalne szczyty w ciągu dnia, jakie obciążenie generuje tworzenie kopii zapasowych itp. Jeśli twoja macierz dyskowa lub oprogramowanie do niej nie dostarczają ci pełnego zestawu tych danych, możesz skorzystać z darmowego RRDtool, który potrafi współpracować z większością najpopularniejszych macierzy dyskowych i przełączników oraz będzie w stanie dostarczyć ci szczegółowe statystyki dotyczące wydajności. Warto również monitorować obciążenie na hostach, które pracują z tą macierzą, na poziomie poszczególnych maszyn wirtualnych lub co konkretnie działa na tym hoście.

Jak wybrać macierz dyskową, aby nie strzelić sobie w stopę

Warto osobno zaznaczyć, że jeśli opóźnienia na woluminie i magazynie danych, który znajduje się na tym woluminie, znacznie się różnią — warto zwrócić uwagę na swoją sieć SAN, istnieje duże prawdopodobieństwo, że występują z nią problemy, i zanim zdecydujesz się na zakup nowego systemu, powinieneś się z tym problemem uporać, ponieważ jest bardzo duża szansa na zwiększenie wydajności aktualnego systemu.

Budujesz infrastrukturę od podstaw lub nabywasz system dla jakiejś nowej usługi, o obciążeniach której nic nie wiesz. Masz kilka opcji: porozmawiać z kolegami na branżowych portalach, aby spróbować poznać i przewidzieć obciążenie, skontaktować się z integratorem, który ma doświadczenie w wdrażaniu podobnych usług i który będzie w stanie obliczyć obciążenie za ciebie. Trzecią opcją (zwykle najtrudniejszą, szczególnie jeśli dotyczy to autorskich lub rzadkich aplikacji) jest spróbować ustalić wymagania dotyczące wydajności u programistów systemu.

I, uwaga, najbardziej odpowiednia opcja z praktycznego punktu widzenia to pilotaż na obecnym sprzęcie lub sprzęcie dostarczonym do testów przez dostawcę / integratora.

Wymagania specjalne

Wymagania specjalne to wszystko, co nie podlega wymaganiom w zakresie wydajności, odporności na awarie i funkcjonalności związanej z bezpośrednim przetwarzaniem i udostępnianiem danych.

Jednym z najprostszych wymagań specjalnych dotyczących systemu przechowywania danych jest „przenośne nośniki informacji”. Od razu staje się jasne, że ten system przechowywania danych musi zawierać bibliotekę taśmową lub po prostu strumień, na który zostanie zapisana kopia zapasowa. Następnie specjalnie przeszkolony pracownik podpisuje taśmę i dumnie niesie ją do specjalnego sejfu.
Innym przykładem wymagania specjalnego jest odporna na wstrząsy konstrukcja.

Gdzie

Drugim głównym czynnikiem przy wyborze konkretnego systemu przechowywania danych jest informacja o tym, GDZIE ten system będzie się znajdować. Począwszy od geograficznych lub klimatycznych warunków, a skończywszy na osobach.

Zamawiający

Dla kogo przewidziany jest ten system przechowywania danych? To pytanie ma kilka podstaw.

Zamawiający państwowy / komercyjny.
Zamawiający komercyjny nie ma żadnych ograniczeń i nie musi przeprowadzać przetargów, poza swoimi wewnętrznymi regulacjami.

Zamawiający państwowy to zupełnie inna sprawa. 44 Ustawa i inne zawirowania związane z przetargami oraz specyfikacjami, które można zaskarżyć.

Zamawiający objęty sankcjami
Tutaj pytanie jest bardzo proste — wybór ogranicza się tylko do dostępnych ofert dla tego zamawiającego.

Regulaminy wewnętrzne / dozwoleni dostawcy / modele
Pytanie także jest niezwykle proste, ale należy o tym pamiętać.

Gdzie fizycznie

W tej części omawiamy wszelkie kwestie związane z geografią, kanałami komunikacyjnymi i mikroklimatem w pomieszczeniu, w którym jest umieszczony system.

Personel

Kto będzie pracował z tym systemem przechowywania danych? To jest co najmniej tak samo ważne, jak to, co system potrafi.
Jakkolwiek perspektywiczny, wspaniały i znakomity jest system od dostawcy A, może nie mieć sensu jego zakupu, jeśli personel potrafi pracować tylko z dostawcą B, a dalsze zakupy i stała współpraca z A nie są planowane.

Oczywiście, istotnym aspektem jest to, jak dostępny jest wykwalifikowany personel w danej lokalizacji geograficznej, zarówno wewnętrznie w firmie, jak i na rynku pracy. Dla regionów może mieć duże znaczenie wybór macierzy dyskowej z prostymi interfejsami lub możliwością zdalnego, centralnego zarządzania. W przeciwnym razie w pewnym momencie może to stać się uciążliwe. Internet jest pełen historii, jak nowy pracownik, świeżo upieczony absolwent, skonfigurował coś takiego, że cała firma stanęła na głowie.

Jak wybrać macierz dyskową, aby nie strzelić sobie w stopę

Środowisko

Nie można pominąć również istotnego pytania — w jakim środowisku będzie pracować ta macierz dyskowa.

  • Co z zasilaniem / chłodzeniem?
  • Jakie będzie połączenie
  • Gdzie zostanie zamontowana
  • I tak dalej.

Często te pytania są uważane za oczywiste i nie są specjalnie rozważane, ale czasami to właśnie one mogą całkowicie odwrócić sytuację.

Co

Dostawca

Na dzień dzisiejszy (środek 2019) rosyjski rynek macierzy dyskowych można podzielić na pięć kategorii:

  1. Wysoka liga — zasłużone firmy z szeroką ofertą, od najprostszych macierzy do hi-end (HPE, DellEMC, Hitachi, NetApp, IBM / Lenovo)
  2. Druga liga — firmy z ograniczonym asortymentem, niszowi gracze, poważni dostawcy SDS lub wschodzące nowicjusze (Fujitsu, Datacore, Infinidat, Huawei, Pure itd.)
  3. Trzecia liga — niszowe rozwiązania w segmencie low-end, tanie SDS, ręcznie robione rozwiązania oparte na ceph i innych projektach open source (Infortrend, Starwind itd.)
  4. Segment SOHO — małe i bardzo małe macierze poziomu dom / małe biuro (Synology, QNAP itd.)
  5. Macierze dyskowe z importu — obejmują zarówno sprzęt pierwszej ligi z przeklejonymi etykietami, jak i rzadkich przedstawicieli drugiej (RAIDIX, damy im kredyt zaufania), ale w większości to trzecia liga (Aerodisk, Baum, Depo itd.)

Podział ten jest dość umowny i wcale nie oznacza, że trzecia liga lub segment SOHO są złe i nie można ich używać. W specyficznych projektach z wyraźnie określonym zestawem danych i profilem obciążenia mogą one działać bardzo dobrze, znacznie przewyższając pierwszą ligę w stosunku cena / jakość. Ważne jest, aby najpierw określić cele, perspektywy wzrostu, wymaganą funkcjonalność — a wtedy Synology będzie wiernie służyć, a włosy staną się miękkie i jedwabiste.

Jednym z istotnych czynników przy wyborze dostawcy jest bieżące środowisko. Ile i jakich macierzy dyskowych już posiadasz, z jakimi macierzami potrafią pracować inżynierowie? Czy potrzebujesz jeszcze jednego dostawcy, jeszcze jednego punktu kontaktowego? Czy planujesz stopniowo przenieść cały obciążenie z dostawcy A do dostawcy B?

Nie należy mnożyć bytów ponad miarę.

iSCSI / FC / Plik

W kwestii protokołów dostępu nie ma jednogłośnej opinii wśród inżynierów, a spory przypominają bardziej dyskusje teologiczne niż inżynieryjne. Niemniej jednak, można zauważyć następujące punkty:

FCoE raczej martwy niż żywy.

FC vs iSCSI. Jedną z kluczowych zalet FC w 2019 roku w porównaniu do IP macierzy dyskowych, dedykowana infrastruktura do dostępu do danych, jest niwelowana przez dedykowaną sieć IP. Nie ma globalnych zalet FC w porównaniu do sieci IP, a na IP można budować macierze dowolnego poziomu obciążenia, aż do systemów dla dużych baz danych dla banków. Z drugiej strony, śmierć FC jest przewidywana od kilku lat, ale ciągle coś to uniemożliwia. Na dziś, na przykład, niektórzy gracze na rynku macierzy dyskowych aktywnie rozwijają standard NVMEoF. Czy podzieli on los FCoE? Czas pokaże.

Dostęp plikowy również nie jest czymś, co nie zasługuje na uwagę. NFS / CIFS świetnie sprawdzają się w środowiskach produkcyjnych i przy odpowiednim projektowaniu mają nie więcej uwag niż protokoły blokowe.

Hybrydowe / All Flash Array

Klasyczne macierze dyskowe występują w 2 typach:

  1. AFA (All Flash Array) — systemy zoptymalizowane do użycia SSD.
  2. Hybrydowe — umożliwiające użycie zarówno HDD, jak i SSD lub ich kombinacji.

Główną różnicą jest wspierana technologia efektywności przechowywania i maksymalny poziom wydajności (wysokie wskaźniki IOPS i niskie opóźnienia). Oba systemy (w większości swoich modeli, z wyjątkiem segmentu low-end) mogą działać zarówno jako urządzenia blokowe, jak i plikowe. Poziom systemu decyduje o wspieranej funkcjonalności, a w modelach podstawowych często jest ona ograniczona do minimalnego poziomu. Na to warto zwrócić uwagę podczas studiowania specyfikacji konkretnego modelu, a nie tylko możliwości całej serii. Oczywiście, także od poziomu systemu zależą jego specyfikacje techniczne, takie jak procesor, pojemność pamięci, pamięć podręczna, liczba i typ portów itd. Z punktu widzenia zarządzania, AFA od systemów hybrydowych (dyskowych) różnią się jedynie w kwestiach realizacji mechanizmów pracy z dyskami SSD, i nawet jeśli używasz SSD w systemie hybrydowym, to wcale nie oznacza, że będziesz mógł osiągnąć poziom wydajności na poziomie systemu AFA. Również w większości przypadków mechanizmy efektywnego przechowywania w systemach hybrydowych są wyłączone, a ich włączenie prowadzi do utraty wydajności.

Specjalne macierze dyskowe

Oprócz ogólnych macierzy dyskowych, które są przede wszystkim ukierunkowane na przetwarzanie danych w czasie rzeczywistym, istnieją specjalne macierze dyskowe z kluczowymi zasadami, które zasadniczo różnią się od normalnych (niskie opóźnienie, wiele IOPS):

Media.

Te systemy są zaprojektowane do przechowywania i przetwarzania plików multimedialnych, które różnią się dużymi rozmiarami. W związku z tym opóźnienie staje się praktycznie nieistotne, a na pierwszy plan wysuwa się zdolność do przesyłania i odbierania danych z szerokim pasmem w wielu równoległych strumieniach.

Macierze deduplikujące do kopii zapasowych.

Ponieważ kopie zapasowe różnią się rzadko wobec siebie w normalnych warunkach (średnia kopia zapasowa różni się od wczorajszej o 1-2%), ta klasa systemów niezwykle efektywnie pakuje zapisane na nich dane w ramach stosunkowo niewielkiej liczby fizycznych nośników. Na przykład, w niektórych przypadkach wskaźniki kompresji danych mogą osiągnąć 200 do 1.

Obiektowe macierze dyskowe.

W tych systemach storage nie ma tradycyjnych wolumenów o dostępie blokowym i udziałów plikowych, a bardziej przypominają one ogromną bazę danych. Dostęp do obiektu przechowywanego w takiej systemie odbywa się za pomocą unikalnego identyfikatora lub na podstawie metadanych (na przykład wszystkie obiekty formatu JPEG, z datą utworzenia pomiędzy XX-XX-XXXX a YY-YY-YYYY).

Systemy zgodności.

Nie są one zbyt powszechne w Rosji na dzisiaj, ale warto o nich wspomnieć. Celem takich systemów storage jest gwarantowane przechowywanie danych w celu spełnienia polityk bezpieczeństwa lub wymagań regulacyjnych. W niektórych systemach (na przykład EMC Centera) zrealizowano funkcję blokady usuwania danych — po przekręceniu klucza i przełączeniu systemu w ten tryb, ani administrator, ani nikt inny fizycznie nie może usunąć już zapisanych danych.

Technologie markowe

Cache flash

Cache Flash – to ogólna nazwa dla wszystkich technologii wykorzystywania pamięci flash jako drugiego poziomu pamięci podręcznej. Przy użyciu cache'a flash systemy storage zazwyczaj są obliczane w celu zapewnienia obciążenia z dysków magnetycznych, podczas gdy szczytowe obciążenie obsługiwane jest przez pamięć podręczną.

Przy tym необходимо понимание профиля нагрузки i stopnia lokalizacji zapytań do bloków wolumenów storage. Cache flash to technologia dla obciążeń z wysoką lokalizacją żądań i praktycznie niewykonalna dla równomiernie obciążonych wolumenów (jak na przykład w systemach analitycznych).

Na rynku dostępne są dwie realizacje cache'a flash:

  • Tylko do odczytu. W tym przypadku buforowane są tylko dane do odczytu, a zapisy przechodzą od razu na dyski. Niektórzy producenci, na przykład NetApp, uważają, że zapisy w ich systemie storage przebiegają optymalnie, więc buforowanie nie pomoże.
  • Odczyt/Zapis. Buferowane są nie tylko odczyty, ale i zapisy, co pozwala na buforowanie strumienia i zmniejsza wpływ RAID Penalty, a w konsekwencji poprawia ogólną wydajność dla systemów storage z mniej optymalnym mechanizmem zapisu.

Tiering

Przechowywanie wielowarstwowe (tiering) to technologia łącząca w jeden pulę dysków poziomy o różnej wydajności, takie jak SSD i HDD. W przypadku wyraźnej nierównomierności żądań do bloków danych, system będzie mógł automatycznie zrównoważyć bloki danych, przenosząc obciążone na wysoce wydajny poziom, a zimne, przeciwnie, na wolniejszy.

Hybrydowe systemy klasy podstawowej i średniej wykorzystują wielowarstwowe przechowywanie z przenoszeniem danych pomiędzy warstwami zgodnie z harmonogramem. Przy tym rozmiar bloku przechowywania wielowarstwowego w najlepszych modelach wynosi 256 MB. Te cechy sprawiają, że technologia przechowywania wielowarstwowego nie może być uznawana za technologię zwiększającą wydajność, jak błędnie sądzi wielu. Przechowywanie wielowarstwowe w systemach klasy podstawowej i średniej to technologia optymalizacji kosztów przechowywania dla systemów o wyraźnej nierównomierności obciążenia.

Migawka

Ile jednak mówimy o niezawodności macierzy dyskowych, istnieje wiele możliwości utraty danych, niezależnych od problemów sprzętowych. Mogą to być zarówno wirusy, hakerzy, jak i przypadkowe usunięcie/uszkodzenie danych. Z tego powodu tworzenie kopii zapasowych danych produkcyjnych jest nieodłączną częścią pracy inżyniera.

Migawka to zrzut objętości w danym momencie czasu. W przypadku większości systemów, takich jak wirtualizacja, bazy danych itd., musimy wykonać taki zrzut, z którego będziemy kopiować dane do kopii zapasowej, przy czym nasze systemy informatyczne mogą nadal normalnie pracować z tą objętością. Należy jednak pamiętać — nie wszystkie migawki są równie użyteczne. Różni dostawcy mają różne podejścia do tworzenia migawek, związane z ich architekturą.

CoW (Copy-On-Write). Podczas próby zapisania bloku danych jego oryginalna zawartość jest kopiowana do specjalnego obszaru, po czym zapis przebiega normalnie. W ten sposób zapobiega się uszkodzeniu danych wewnątrz migawki. Oczywiście wszystkie te „parazytalne” manipulacje z danymi powodują dodatkowe obciążenie macierzy dyskowej i z tego powodu dostawcy z podobną realizacją nie zalecają korzystania z więcej niż dziesięciu migawek, a na wysokoobciążonych objętościach nie korzystanie z nich w ogóle.

RoW (Redirect-on-Write). W tym przypadku oryginalna objętość jest naturalnie zamrażana, a podczas próby zapisania bloku danych macierz dyskowa zapisuje dane w specjalnym obszarze w wolnej przestrzeni, zmieniając lokalizację danego bloku w tabeli metadanych. Pozwala to zmniejszyć liczbę operacji nadpisania, co ostatecznie niweluje spadek wydajności i usuwa ograniczenia dotyczące migawek oraz ich liczby.

Snapshoty dzielą się również na dwa typy w odniesieniu do aplikacji:

Konsystentne dla aplikacji. W momencie tworzenia snapshotu, macierz dyskowa wywołuje agenta w systemie operacyjnym klienta, który wymusza zrzucenie pamięci podręcznej dysków do pamięci masowej i sprawia, że aplikacja to robi. W takim przypadku, przy przywracaniu z snapshotu, dane będą konsystentne.

Konsystentne w przypadku awarii. W tym przypadku nic podobnego nie zachodzi i snapshot jest tworzony tak, jak jest. W przypadku przywracania z takiego snapshotu obraz będzie identyczny jak w przypadku nagłego odcięcia zasilania, a możliwa jest pewna utrata danych, które zostały w pamięci podręcznej i nie dotarły na dysk. Takie snapshoty są prostsze w implementacji i nie powodują spadków wydajności aplikacji, ale są mniej niezawodne.

Jakie są korzyści z użycia snapshotów w systemach przechowywania danych?

  • Bezagentowe tworzenie kopii zapasowych bezpośrednio z macierzy dyskowej
  • Tworzenie środowisk testowych na podstawie rzeczywistych danych
  • W przypadku macierzy plikowych można je wykorzystać do tworzenia środowisk VDI, używając snapshotów macierzy zamiast hypervisorów
  • Zapewnienie niskich RPO poprzez planowane tworzenie snapshotów z częstotliwością znacznie wyższą niż częstotliwość kopii zapasowych

Klonowanie

Klonowanie wolumenu działa na podobnej zasadzie co snapshoty, ale służy nie tylko do odczytu danych, ale do pełnoprawnej pracy z nimi. Mamy możliwość uzyskania dokładnej kopii naszego wolumenu ze wszystkimi danymi na nim, nie tworząc fizycznej kopii, co pozwala zaoszczędzić miejsce. Zazwyczaj klonowanie wolumenów używane jest w Test & Dev lub gdy chcemy sprawdzić działanie jakichkolwiek aktualizacji w naszym systemie informatycznym. Klonowanie pozwoli na dokonanie tego maksymalnie szybko i ekonomicznie pod względem zasobów dyskowych, ponieważ zapisywane będą tylko zmienione bloki danych.

Replikacja / dziennikowanie

Replikacja to mechanizm tworzenia kopii danych na innej fizycznej macierzy dyskowej. Zazwyczaj każdy dostawca ma swoją własną technologię, działającą tylko w obrębie swojej oferty. Istnieją również rozwiązania zewnętrzne, w tym działające na poziomie hypervisora, takie jak VMware vSphere Replication.

Funkcjonalność firmowych technologii oraz łatwość ich użycia zazwyczaj znacznie przewyższają te ogólne, ale okazują się niepraktyczne, gdy na przykład trzeba wykonać replikację z NetApp na HP MSA.

Replikacja dzieli się na dwa podtypy:

Synchronizowana. W przypadku replikacji synchronizowanej operacja zapisu jest natychmiast przesyłana do drugiego systemu pamięci masowej i nie zostaje potwierdzona do momentu, aż zdalny system pamięci masowej to potwierdzi. Z tego powodu rośnie opóźnienie dostępu, ale mamy dokładną lustrzaną kopię danych. To znaczy, że RPO = 0 w przypadku utraty głównego systemu pamięci masowej.

Asynchronizowana. Operacje zapisu są realizowane tylko na głównym systemie pamięci masowej i potwierdzane natychmiast, równocześnie akumulując się w buforze do pakietowego przesyłania do zdalnego systemu pamięci masowej. Tego rodzaju replikacja ma zastosowanie dla mniej cennych danych, lub dla kanałów o niskiej przepustowości, albo o wysokim opóźnieniu (charakterystyczne dla odległości przekraczających 100 km). W związku z tym RPO = częstość wysyłania pakietów.

Często z replikacją współistnieje mechanizm rejestrowania operacji dyskowych. W takim przypadku wydziela się specjalny obszar na rejestrowanie i przechowuje operacje zapisu do określonej głębokości czasowej, lub ograniczone objętością dziennika. Dla niektórych firmowych technologii, takich jak na przykład EMC RecoverPoint, istnieje integracja z oprogramowaniem systemowym, pozwalająca powiązać określone zakładki z konkretnym zapisem w dzienniku. Dzięki temu możliwe jest przywrócenie stanu woluminu (lub stworzenie klonu) nie tylko na 23 kwietnia o 11:59:13:013, ale w momencie, który poprzedzał „DROP ALL TABLES; COMMIT”.

Metro cluster

Metro cluster to technologia pozwalająca na stworzenie dwukierunkowej synchronizowanej replikacji pomiędzy dwoma systemami pamięci masowej w taki sposób, że z zewnątrz ta para wygląda jak jeden system pamięci masowej. Używana do tworzenia klastrów z geograficznie rozdzielonymi członami na odległości metra (poniżej 100 km).

Na przykład w środowisku wirtualizacji metro cluster pozwala stworzyć datastore z maszynami wirtualnymi, dostępnymi do zapisu jednocześnie z dwóch centrów danych. W takim przypadku tworzy się klaster na poziomie hipernadzorców, składający się z hostów w różnych fizycznych centrach danych, połączony z tym datastore. Co pozwala na wykonanie następujących operacji:

  • Pełna automatyzacja procesu przywracania po awarii jednego z centrów danych. Bez żadnych dodatkowych środków wszystkie maszyny wirtualne działające w martwym centrum danych będą automatycznie uruchamiane w pozostałym. RTO = czas przestoju klastra wysokiej dostępności (15 sekund dla VMware) + czas uruchamiania systemu operacyjnego i uruchamiania usług.
  • Unikanie katastrof, czyli disaster avoidance. Jeśli zaplanowane są prace nad zasilaniem w centrum danych 1, to mamy możliwość migracji całego ważnego obciążenia do centrum danych 2 na czas tych prac.

Wirtualizacja

Wirtualizacja systemów dyskowych — technicznie rzecz biorąc, polega na używaniu wolumenów z innego systemu dyskowego jako dysków. Wirtualizator systemów dyskowych może po prostu przekazać cudzy wolumen do klienta jako swój, jednocześnie lustrzując go w jeszcze jednym systemie dyskowym, lub nawet stworzyć RAID z zewnętrznych wolumenów.
Klasycznymi przedstawicielami w klasie wirtualizacji systemów dyskowych są EMC VPLEX i IBM SVC. No i oczywiście systemy dyskowe z funkcją wirtualizacji — NetApp, Hitachi, IBM / Lenovo Storwize.

Dlaczego może to być potrzebne?

  • Rezerwacja na poziomie systemu dyskowego. Tworzy się lustro pomiędzy wolumenami, przy czym jedna połowa może być na HP 3Par, a druga na NetApp. A wirtualizator od EMC.
  • Migracja danych z minimalnym przestojem pomiędzy systemami dyskowymi różnych producentów. Załóżmy, że dane należy przenieść ze starego 3Par, który ma zostać wycofany, do nowego Dell. W takim przypadku klienci są odłączani od 3Par, wolumeny są przekazywane przez VPLEX i ponownie prezentowane klientom. Ponieważ żaden bit na wolumenie się nie zmienił, praca trwa. W tle uruchamiany jest proces lustrzenia wolumenu na nowego Della, a po zakończeniu lustro jest rozdzielane, a 3Par odłączany.
  • Organizacja metroklastrów.

Kompresja / deduplikacja

Kompresja i deduplikacja — to technologie, które pozwalają oszczędzać miejsce na dysku w twoim systemie dyskowym. Należy od razu wspomnieć, że nie wszystkie dane podlegają kompresji i/lub deduplikacji w ogóle, przy czym niektóre typy danych kompresują i deduplikują się lepiej, a inne wręcz przeciwnie.

Kompresja i deduplikacja dzielą się na 2 rodzaje:

Inline — kompresja i deduplikacja bloków danych odbywa się przed zapisaniem tych danych na dysk. W ten sposób system jedynie oblicza hash bloku i porównuje go z tabelą już istniejących. Po pierwsze, to wykonuje się szybciej niż po prostu zapis na dysku, po drugie oszczędzamy niepotrzebną przestrzeń dyskową.

Post — kiedy te operacje przeprowadzane są na zapisanych danych, które znajdują się na dyskach. Odpowiednio, dane najpierw są zapisywane na dysk, a dopiero później obliczany jest hash i odbywa się usunięcie zbędnych bloków oraz zwolnienie zasobów dyskowych.

Warto powiedzieć, że większość dostawców korzysta z obu rodzajów, co pozwala zoptymalizować te procesy i tym samym zwiększyć ich wydajność. Większość dostawców systemów pamięci masowej ma w swoim arsenale narzędzia, które umożliwiają analizę zestawów danych. Te narzędzia działają na tej samej zasadzie, co implementowane w systemach, dlatego poziom oceny wydajności będzie się pokrywał. Nie można również zapominać, że wielu dostawców oferuje programy gwarancji wydajności, które obiecują poziom nie niższy niż zadeklarowany dla określonego (lub wszystkich) typów danych. Nie należy lekceważyć tego programu, ponieważ planując system pod kątem swoich zadań, z uwzględnieniem współczynnika wydajności konkretnego systemu, można zaoszczędzić na pojemności. Warto też zauważyć, że programy te są skierowane głównie na systemy AFA, ale dzięki zakupowi mniejszego wolumenu SSD w porównaniu z HDD w klasycznych systemach, można obniżyć ich koszt, a jeśli nie zrównać się z ceną systemu dyskowego, to znacznie się do niej zbliżyć.

Model

I oto dochodzimy do właściwie postawionego pytania.

„Oferują mi dwa warianty systemów pamięci masowej — ABC SuperStorage S600 oraz XYZ HyperOcean 666v4, co byś doradził?”

Przeradza się w „Oferują mi dwa warianty systemów pamięci masowej — ABC SuperStorage S600 oraz XYZ HyperOcean 666v4, co byś doradził?

Celowa obciążenie to mieszane maszyny wirtualne VMware w konturach produkcyjnych / testowych / deweloperskich. Test = produkcja. 150 TB na każdy z szczytową wydajnością 80 000 IOPS przy 8kb blokach, 50% dostępu losowego, 80/20 odczyt-zapis. 300 TB na rozwój, tam 50 000 IOPS wystarczy, 80 losowy, 80 zapis.

Produkcja przypuszczalnie w metroklasterze RPO = 15 minut RTO = 1 godzina, rozwój w asynchronicznej replikacji RPO = 3 godziny, test w jednym miejscu.

Będzie 50TB bazy danych, przydałoby się dla nich logowanie.

Mamy wszędzie serwery Dell, stare macierze Hitachi, które ledwo dają radę, planujemy wzrost obciążenia o 50% pod względem objętości i wydajności.

Jak to mówią, w dobrze sformułowanym pytaniu zawarte jest 80% odpowiedzi.

Dodatkowe informacje

Z czym warto się zapoznać dodatkowo według autorów.

Książki

  • Olifer i Olifer „Sieci komputerowe”. Książka pomoże usystematyzować i być może lepiej zrozumieć, jak działa środowisko przesyłania danych dla systemów IP / Ethernet do przechowywania.
  • „EMC Information Storage and Management”. Doskonała książka o podstawach macierzy dyskowych, dlaczego, jak i po co.

Fora i czaty.

Ogólne zalecenia

Ceny

Co do cen — ogólnie ceny na macierze dyskowe, jeśli się pojawiają, to zazwyczaj są to ceny listowe, od których każdy klient otrzymuje indywidualny rabat. Wysokość rabatu składa się z wielu parametrów, dlatego przewidzenie, jaką końcową cenę otrzyma właśnie twoja firma, bez zapytania do dystrybutora, jest po prostu niemożliwe. Jednak ostatnio modele low-end zaczęły pojawiać się w zwykłych sklepach komputerowych, takich jak na przykład. nix.ru lub xcom-shop.ru. Można je nabyć od razu w interesującym cię systemie po stałej cenie, jak wszelkie podzespoły komputerowe.

Jednak chcę od razu zaznaczyć, że bezpośrednie porównanie według TB/$ nie jest trafne. Jeśli podejść z tego punktu widzenia, to najtańszym rozwiązaniem będzie prosty JBOD + serwer, co nie zapewni tej elastyczności ani niezawodności, które oferuje pełnoprawna macierz dyskowa z dwoma kontrolerami. To absolutnie nie oznacza, że JBOD to zła rzecz, po prostu trzeba bardzo jasno zrozumieć, jak i do jakich celów zamierzasz używać tego rozwiązania. Często można usłyszeć, że w JBOD nie ma co się zepsuć, bo jest tylko jedna płyta, jednak płyty również mogą się psuć. Wszystko się psuje prędzej czy później.

Podsumowując

Porównując systemy, należy to robić nie tylko według ceny, ani nie tylko według wydajności, ale według całokształtu wszystkich wskaźników.

Kupuj HDD tylko wtedy, gdy jesteś pewien, że ich potrzebujesz. Dla małych obciążeń i danych, które nie mogą być kompresowane, warto zwrócić uwagę na programy gwarancji wydajności przechowywania na SSD, które obecnie oferuje większość dostawców (i naprawdę działają, nawet w Polsce), ale wszystko zależy od aplikacji i danych, które będą przechowywane na danym systemie.

Nie daj się ponieść oszczędnościom. Często za nimi kryje się wiele nieprzyjemnych niespodzianek, co opisał Eugeniusz Jelizarow w swoich artykułach o Infortrend. I co, w końcu, ta oszczędność może cię drogo kosztować. Nie zapominaj – „skąpy płaci dwa razy”.

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster