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


26.10.2020

Nowa wersja nVision

Można już pobierać nową wersję nVision
26.10.2020

Monitorowanie infrastruktury

Vertiv Environet Alert
23.10.2020

Telefonia w chmurze

NFON Cloudya
23.10.2020

Nowości w EDR

Bitdefender GravityZone
23.10.2020

Wykrywanie anomalii

Flowmon ADS11
23.10.2020

Mobilny monitor

AOC 16T2
22.10.2020

HP Pavilion

HP zaprezentowało nowe laptopy z linii Pavilion.
22.10.2020

Inteligentny monitoring

WD Purple SC QD101
22.10.2020

Przełącznik 2,5GbE

QNAP QSW-1105-5T

Systemy pamięci definiowanej programowo

Data publikacji: 26-05-2017 Autor: Piotr Pisz
RYS. 1. ARCHITEKTURA CEPH

Dynamiczny rozwój usług IT to równocześnie gwałtowny przyrost zbieranych i przetwarzanych danych. W ciągu miesiąca gromadzone są już nie terabajty, a petabajty danych. Gdzie je wszystkie składować? Odpowiedź okazała się prosta – Software Defined Storage, czyli pamięć masowa definiowana programowo, która niweluje ograniczenia tradycyjnych rozwiązań macierzowych.

W spółczesne systemy informatyczne w coraz mniejszym stopniu opierają się na klasycznych rozwiązaniach sprzętowo-programowych wymagających precyzyjnej konfiguracji przez liczne zespoły administratorów. Firmy coraz częściej sięgają po rozwiązania programowe, takie jak Software Defined Networking (SDN) lub Software Defined Storage (SDS), pozwalające na zautomatyzowanie kolejnych obszarów i uwolnienie się od starych ograniczeń. Nie chodzi tu o wyeliminowanie czynnika ludzkiego, jak na początku obawiało się wielu administratorów, ale o zapanowanie nad chaosem, który powstaje, gdy rozrost środowiska jest tak duży, że ludzie przestają nad nim powoli panować.

Dynamiczny rozwój pociąga za sobą ogromne koszty, tak pracy zespołów administratorów, jak i koszty zakupu sprzętu obsługującego rozrastające się środowisko. W artykule przybliżymy ideę stojącą za pamięciami masowymi definiowanymi programowo oraz opiszemy, jak działa SDS i jakie są dostępne na rynku rozwiązania, zarówno darmowe, jak i komercyjne. Pokażemy też, jakie problemy można rozwiązać w firmie, migrując środowisko w kierunku rozwiązań hiperkonwergentnych, czyli łączących na poziomie serwera funkcje przetwarzania (compute) i przechowywania (storage).

> GENEZA ROZWIĄZAŃ SDS

W świecie informatyki nowe rozwiązania najczęściej są rozwinięciami poprzednich, ograniczonych systemów lub usług. Jeżeli przyjrzymy się np. klastrowemu systemowi plików, takiemu jak DRBD, i połączymy go z serwerem NFS, uzyskamy całkiem sporą funkcjonalność – bezpieczne, mirrorowane i dostępne zdalnie środowisko dla danych. Rozbudowa takiego systemu będzie jednak bardzo utrudniona (pierwsze ograniczenie), a całość dostępna tylko przez jeden punkt wejścia (drugie ograniczenie). W 2010 r. pojawił się GlusterFS – darmowy, definiowany programowo, podłączany sieciowo system plików, potrafiący agregować zasoby wielu serwerów w jedną spójną przestrzeń dostępną poprzez wiele punktów wejścia. Już z samej definicji widać, że GlusterFS znosi wymienione wyżej ograniczenia. Obecnie system ten traktowany jest jako prekursor pamięci masowej definiowanej programowo (powstał na długo przed powstaniem terminu SDS). Jego potencjał dostrzegła firma Red Hat, która kupiła firmę Gluster w 2011 r. i zbudowała na jej bazie rozwiązanie Red Hat Storage Server. Idea rozproszonej pamięci masowej została trwale zaszczepiona na rynku.

Jednak rozwiązania takie jak GlusterFS, MooseFS, LizardFS miały kolejne ograniczenie – zasoby nie mogły być udostępniane za pośrednictwem tradycyjnych urządzeń blokowych (tzw. block device, pozwalających na odczytywanie/zapisywanie danych blokami, czyli większymi grupami bajtów). Urządzenie takie (dyski, partycje) można np. sformatować, używając tradycyjnych systemów plików. Brak możliwości użycia rozproszonej pamięci masowej w dostępnym lokalnie urządzeniu blokowym było dla wielu firm barierą nie do przejścia. W odpowiedzi na to ograniczenie powstało kolejne rozwiązanie, jakim jest Ceph. System ten jest rozwijany intensywnie od 2012 r. i funkcjonuje jako rozproszona, obiektowa pamięć masowa, agregująca zasoby wielu serwerów w jedną spójną pulę zasobów. Pula ta jest dostępna tak w formie blokowego urządzenia RBD, jak i systemu plików CephFS. Ceph jest też punktem wyjścia dla wielu rozwiązań komercyjnych, takich jak na przykład EMC ScaleIO. Dlatego w artykule dokładnie omówimy sposób działania tego SDS-a, a przy omawianiu innych rozwiązań zawsze będziemy porównywać je do Ceph.

> CEPH – JAK DZIAŁA PAMIĘĆ MASOWA DEFINIOWANA PROGRAMOWO

Ceph jest rozproszonym, skalowalnym systemem pamięci masowej. Został zaprojektowany tak, aby był odporny na problem pojedynczego punktu awarii (klaster do poprawnego działania wymaga minimum trzech węzłów). Zarządzanie danymi na poziomie węzłów odbywa się całkowicie automatycznie, dane są replikowane w minimum dwóch kopiach. W przypadku awarii pojedynczego węzła lub dysku Ceph identyfikuje dane, dla których istnieje tylko jedna kopia, i automatycznie replikuje je na pozostałe węzły klastra. Pula przestrzeni danych może być łatwo rozszerzana i zmniejszana poprzez dodawanie lub ujmowanie kolejnych węzłów (lub dysków na poziomie serwera). Wraz ze wzrostem liczby węzłów w środowisku wzrasta też (teoretycznie w sposób liniowy) wydajność całego systemu.

Dane wewnątrz Ceph przechowywane są w postaci obiektowej, a każdy obiekt zawiera unikalny numer oraz dane i metadane go opisujące. Takie przechowywanie danych pozwala skalować pojemność systemu teoretycznie w nieskończoność. Ważną cechą jest też to, że nie są stawiane żadne wymagania, które musi spełnić sprzęt (HCL). Można więc użyć dowolnego serwera z dowolnym kontrolerem i dowolnym dyskiem, a Ceph ze wszystkim sobie poradzi, o ile sprzęt będzie działał stabilnie. Obiekty pomiędzy węzłami wymieniane są poprzez sieć Ethernet, dlatego preferowanym standardem mającym wpływ na wydajność jest 10G.

Ceph został zbudowany na bazie architektury warstwowej. Najniższa warstwa to RADOS, czyli klaster rozproszonej przestrzeni masowej realizujący wszystkie funkcje związane z przechowywaniem i zarządzaniem danymi (w funkcji blokowej). Następna warstwa to LibRADOS realizująca funkcje dostępowe do klastra dla aplikacji napisanych w wielu językach (np. C++, Ruby, Python). Następne warstwy to kolejno: RadosGW, brama dostępowa REST-API dla rozwiązań kompatybilnych z OpenStack SWIFT i Amazon S3. Kolejna RBD, czyli rozproszone urządzenie blokowe zapewniające dostęp blokowy do klastra Ceph. I na koniec CephFS, kompatybilny z POSIX system plików możliwy do zamontowania w przestrzeni użytkownika (FUSE).

[...]

Administrator i architekt systemów informatycznych z kilkunastoletnim doświadczeniem w IT. Specjalizuje się w środowiskach zwirtualizowanych opartych na technologii firmy VMware. Projektuje i wdraża systemy backupu, storage oraz sieci SAN.

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"