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


17.09.2019

PLNOG23 czyli sieci 5G,...

Największa polska konferencja telekomunikacyjna powraca do Krakowa! Wśród nowości ścieżka...
05.09.2019

Cloudya – nowa usługa NFON

Po ponad dekadzie ciągłego rozwoju technologii Cloudya, swobodna i niczym nie ograniczona...
02.09.2019

Na dużą skalę

Kaspersky Hybrid Cloud Security
02.09.2019

Bezpieczny brzeg sieci

Fortinet Secure SD-Branch
02.09.2019

Nowoczesne centra danych

AMD EPYC
30.08.2019

Dostęp do AI i ML

VMware Cloud Foundation
30.08.2019

Lekkość i moc

Toshiba Portégé A30-E
30.08.2019

Bez przestojów

APC Easy UPS On-Line
29.08.2019

Duże moce

Lenovo ThinkSystem SR635 i SR655

System plików GlusterFS

Data publikacji: 29-08-2019 Autor: Konrad Kubecki
Idea zasobu typu distributed...

Rozwój chmur publicznych i prywatnych oraz coraz większa popularność hiperkonwergencji nie byłyby możliwe bez rozwoju mniejszych projektów, będących fundamentem nowoczesnej infrastruktury IT. Przykładem realizacji trendu Software-Defined Storage jest GlusterFS.

 

GlusterFS to dystrybucyjny system plików. Zasoby tworzone przy użyciu tej technologii opierają się na lokalnych dyskach komputerów lub serwerów i tworzą współdzieloną przestrzeń dyskową. Jego ogromnymi zaletami są elastyczność i skalowalność poprzez kilka typów zasobów zapewniających dużą i rozszerzalną pojemność. To także odporność na awarie elementów tworzących infrastrukturę oraz wydajność możliwa dzięki odczytom i zapisom z wielu urządzeń fizycznych jednocześnie. GlusterFS jest pewną alternatywą dla tradycyjnych, ale jednocześnie drogich systemów pamięci masowych zbudowanych na podstawie macierzy i urządzeń tworzących infrastrukturę SAN. To po prostu tańsza przestrzeń dyskowa nadająca się do wielu zastosowań. Plusem GlusterFS jest także prosta konfiguracja po stronie zarówno serwera, jak i klienta.

Rozwiązanie bazuje na zasobach dyskowych, które mają już swoją konfigurację oraz system plików. Obsługuje m.in. ext3, ext4 i XFS zbudowane w ramach LVM. Możliwe jest także utworzenie zasobu współdzielonego przy użyciu infrastruktury opartej na ZFS. Stanowi więc swego rodzaju nakładkę na istniejące systemy plików, łącząc je w całość i organizując mechanizmy sterujące replikacją, wysoką dostępnością i wydajnością.

GlusterFS jest dostępny na najpopularniejszych dystrybucjach Linuksa, w tym na takich jak Red Hat, CentOS, Fedora, Debian, Ubuntu i SUSE. Jego właścicielem jest firma Red Hat. Może być rozpowszechniany dwojako: jako wolne oprogramowanie, dostępne nieodpłatnie, oraz komercyjnie jako Red Hat Gluster Storage (następca systemu Red Hat Storage Server) – platforma typu Software-Defined Storage, przeznaczona do środowisk backupowych, archiwizacyjnych i analitycznych.

> PODSTAWOWE TYPY WOLUMINÓW

GlusterFS daje możliwość tworzenia kilku typów woluminów. Wybór odpowiedniego przypomina rozważania nad rodzajem macierzy RAID, którą buduje się na podstawie puli dysków. Wydajność, odporność na awarie oraz pojemność to podstawowe aspekty do rozważenia podczas wyboru rozwiązania najlepiej spełniającego oczekiwania.

 

  • Distributed – typ woluminu stosowany, gdy celem jest uzyskanie maksymalnej wielkości zasobu dyskowego. Dwie skonfigurowane jako distributed cegiełki o wielkości 100 GB każda dadzą dysk o wielkości 200 GB. Plik będzie zapisany tylko w jednym miejscu, czyli w cegiełce pierwszej lub drugiej. Algorytm Glustera rozrzuca pliki pomiędzy cegiełkami w taki sposób, aby dokonać możliwie równomiernego wykorzystania węzłów. Typ distributed nie jest odporny na awarie. Awaria któregokolwiek elementu powoduje niedostępność całego dysku oraz utratę danych. Dane nie są replikowane pomiędzy dyskami, nie występuje nadmiarowość. W pewnym sensie można porównać typ distributed do macierzy typu RAID 0.
  • Replicated – polega na jednoczesnym zapisie plików we wszystkich cegiełkach tworzących wolumin. Jeśli zasób tworzą dwa katalogi (każdy z innego węzła), to oba zawierają identyczny zestaw danych. Całkowita wielkość zasobu równa się wielkości pojedynczej cegiełki. Typ replicated umożliwia ochronę i dostępność danych na wypadek awarii jednej z nich. Tym samym zapewniane są nadmiarowość i dostępność danych. Zasób typu replicated zbudowany z dwóch cegiełek można porównać do macierzy RAID 1. GlusterFS pozwala na angażowanie w typ replicated większej liczby węzłów, dzięki czemu zasób będzie jeszcze odporniejszy na awarie (możliwe jest np. replikowanie danych pomiędzy trzema węzłami).
  • Distributed replicated – stanowi połączenie dwóch powyższych typów. Najprostszy przykład takiego zasobu wymaga czterech cegiełek. Każda para tworzy wolumin typu replicated. Następnie pary te tworzą wspólnie jeden większy zasób dyskowy typu distributed. Pojedynczy plik jest zapisywany na obu dyskach jednej z par typu replicated. Można tę konfigurację porównać do macierzy RAID 10. Zachowane są nadmiarowość danych oraz dostępność na wypadek awarii nawet dwóch cegiełek (po jednej z każdej pary typu replicated). Ten typ zasobu można rozbudować w dwóch kierunkach. Pary replicated wcale nie muszą być parami, tylko grupami składającymi się z trzech, czterech lub większej liczby cegiełek. Zapewnia to większą odporność w przypadku awarii nawet kilku bricków jednocześnie. Innym kierunkiem rozbudowy jest dokładanie wielu par typu replicated, dzięki czemu wynikowa pojemność zasobu jest większa.
  • Dispersed – zasób zachowujący się podobnie do macierzy RAID 5 i 6, umożliwiający dostępność danych nawet w sytuacji awarii kilku cegiełek. Na każdej cegiełce jest umieszczany zakodowany fragment pliku, dzięki czemu GlusterFS potrafi odtworzyć całe pliki na podstawie dostępnych fragmentów oraz kodu. Liczba nadmiarowych cegiełek (poziom odporności na awarie) jest określana w trakcie tworzenia woluminu.
  • Distributed dispersed – typ woluminu, który łączy cechy opisanych wyżej typów distributed oraz dispersed. Pozwala na zwiększenie pojemności zasobu typu dispersed o drugi zestaw cegiełek mających identyczną konfigurację.


> POZOSTAŁE TYPY ZASOBÓW

Poniżej przedstawiono pozostałe, przestarzałe typy woluminów. Wspierane są w ograniczonym zakresie.

 

  • Striped – typ woluminu, który pozwala na zwiększenie wydajności zapisu i odczytu. GlusterFS dzieli plik przeznaczony do zapisu na fragmenty i równolegle zapisuje je we wszystkich cegiełkach tworzących zasób. W przypadku odczytu pliku odbywa się on jednocześnie ze wszystkich cegiełek. Celem jest osiągnięcie lepszej wydajności poprzez rozłożenie operacji odczytu i zapisu na różne urządzenia. Zastosowanie typu striped to przede wszystkim obsługa dużych plików, podczas której wykonywanie operacji I/O w ramach tylko jednego urządzenia dyskowego mogłoby być niewydajne.
  • Distributed striped – typ woluminu, którego konfiguracja bazuje na dwóch prostszych typach: distributed oraz striped. Dwa zasoby typu striped (np. każdy składający się z dwóch cegiełek) są połączone w jeden większy zasób typu distributed. Zaletą tego rozwiązania jest wydajność. Pojedynczy plik jest zapisywany/odczytywany z jednej grupy typu striped. W tym samym czasie podobne operacje mogą być wykonywane na innym pliku, przy udziale innej grupy striped.


Wśród pozostałych dostępnych typów znajdują się też striped replicated oraz distributed striped replicated, które pozwalają na zwiększenie wydajności operacji odczytu i zapisu, a także na ochronę danych przed awariami sprzętowymi.

Obok opisanych wyżej typów zasobów GlusterFS pozwala na tworzenie replik przechowujących kopie danych. Tzw. georeplikacja polega na asynchronicznym replikowaniu plików do odpowiedniej lokalizacji zapasowej. Przeznaczeniem takiego rozwiązania jest zapewnienie kopii środowisk produkcyjnych na wypadek sytuacji DR (Disaster Recovery). Co więcej, GlusterFS nie ogranicza tego mechanizmu tylko do relacji oryginał–kopia. Możliwe jest tworzenie kolejnych replik, które będą synchronizowały się na podstawie zawartości pierwszej lokalizacji zapasowej. Replikacja może się odbywać przy użyciu sieci LAN, WAN oraz przez internet.

> PRZYKŁADOWE UTWORZENIE ZASOBU

Charakter oprogramowania GlusterFS najlepiej poznać na praktycznych przykładach. W niniejszym utworzony zostanie zasób typu distributed bazujący na trzech cegiełkach zbudowanych na podstawie zasobów dyskowych trzech serwerów z systemem operacyjnym CentOS 7. Przed instalacją usługi Gluster należy się upewnić, że serwery udostępniające swoje dyski są w stanie komunikować się ze sobą. Bez tej komunikacji nie będzie możliwe utworzenie klastra i woluminów. Jeżeli w sieci istnieje lokalny serwer DNS i serwery korzystają z niego do rozwiązywania nazw, to wystarczy utworzenie rekordów typu A (host address) dla każdego z nich. Brak lokalnego serwera DNS można obejść poprzez dodanie odpowiednich wpisów do tablicy /etc/hosts na każdym z serwerów. Wpisy powinny opisywać adresy IP, długie i krótkie nazwy każdego serwera.

 

[...]

 

Specjalista ds. utrzymania infrastruktury i operacji. Zajmuje się problematyką budowy i utrzymania centrów przetwarzania danych oraz zarządzania nimi i koordynowaniem zmian dotyczących krytycznej infrastruktury IT.

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"