Wysoka dostępność i trwałość danych.
Obiektowe przechowywanie Ceph osiąga dostępność danych poprzez replikację i zaawansowane kodowanie z wykorzystaniem informacji o parzystości, a następnie dzieli dane na fragmenty i rozprowadza je po puli przechowywania.
Kiedy urządzenie przechowywania ulegnie awarii, potrzebne jest tylko podzbiór fragmentów do odtworzenia danych, nie ma czasu odbudowy ani obniżonej wydajności, a uszkodzone urządzenia przechowywania można wymienić w dogodnym momencie.
Ceph łączy szeroko rozproszone dane i technologię sprawdzania poprawności danych, która ciągle sprawdza zapisane dane na nośniku, co pozwala osiągnąć trwałość danych na poziomie 15 dziewiątek.
Replikacja danych, kodowanie z wykorzystaniem kodu Reed-Solomona i sprawdzanie poprawności.
Replikacja obiektów
Kiedy klient zamierza zapisać dane, używa identyfikatora obiektu i nazwy puli, aby obliczyć, do którego OSD powinien zapisać. Po zapisaniu danych przez klienta do OSD, OSD kopiuje dane do jednego lub więcej OSD. Możesz skonfigurować dowolną liczbę replikacji, aby dane mogły przetrwać w przypadku jednoczesnej awarii wielu OSD. Replikacja jest podobna do RAID-1 macierzy dyskowej, ale pozwala na większą liczbę kopii danych. Ponieważ w przypadku dużych rozmiarów, prosta replikacja RAID-1 może już nie wystarczać do pokrycia ryzyka awarii sprzętu. Jedyną wadą przechowywania większej liczby replik jest koszt przechowywania.
Klienci Ceph zapisują dane losowo do OSD na podstawie algorytmu CRUSH.Jeśli dysk OSD lub węzeł ulegnie awarii, Ceph może ponownie odbudować dane z innych replik przechowywanych w zdrowych OSD.
You can zdefiniować domenę awarii, aby Ceph przechowywał replikowane dane na różnych serwerach, szafach, pomieszczeniach lub centrach danych, aby uniknąć utraty danych spowodowanej jedną lub więcej awariami całej domeny awarii.Na przykład, jeśli masz zainstalowane 15 serwerów przechowywania danych w 5 szafach (po 3 serwery w każdej szafie), możesz użyć trzech replik i szaf jako domeny awarii.Zapis danych do klastra Ceph zawsze będzie mieć trzy kopie przechowywane w trzech z pięciu szafek.Dane mogą przetrwać, nawet jeśli 2 z regałów ulegną awarii, bez pogorszenia obsługi klienta.Reguła CRUSH jest kluczem do zapewnienia, że Ceph storage nie ma jednego punktu awarii.
Kodowanie zacierające
Replikacja oferuje najlepszą ogólną wydajność, ale nie jest zbyt efektywna pod względem miejsca na dysku.Szczególnie jeśli potrzebujesz większego stopnia redundancji.
W przeszłości używaliśmy RAID-5 lub RAID-6 jako alternatywy dla RAID-1, aby zapewnić wysoką dostępność danych.RAID z parzystością zapewnia redundancję przy znacznie mniejszym narzucie na pamięć masową kosztem wydajności pamięci masowej (głównie wydajności zapisu).Ceph używa kodowania z zacieraniem, aby osiągnąć podobny rezultat.Kiedy skala Twojego systemu przechowywania staje się duża, możesz czuć się niepewnie, pozwalając na awarię tylko jednego lub dwóch dysków lub domen awarii jednocześnie.Algorytm kodowania usuwającego umożliwia skonfigurowanie wyższego poziomu redundancji, ale z mniejszym narzutem miejsca.
Kodowanie usuwające dzieli oryginalne dane na K fragmentów danych i oblicza dodatkowe M fragmentów kodowych.Ceph może odzyskać dane maksymalnie M domen awarii, które uległy awarii w międzyczasie.Całkowita liczba K+M fragmentów jest przechowywana w OSD, które znajdują się w różnych domenach awarii.
Czyszczenie
W ramach utrzymania spójności i czystości danych, demony Ceph OSD mogą przeprowadzać czyszczenie obiektów w grupach umieszczenia. To znaczy, demony Ceph OSD mogą porównywać metadane obiektów w jednej grupie umieszczenia z ich replikami w grupach umieszczonych na innych OSD. Oczyszczanie (zazwyczaj wykonywane codziennie) wyłapuje błędy lub błędy systemu plików. Demonstranci Ceph OSD wykonują również głębsze skanowanie, porównując dane w obiektach bit po bicie. Głębokie czyszczenie (zazwyczaj wykonywane co tydzień) znajduje uszkodzone sektory na dysku, które nie były widoczne podczas lekkiego czyszczenia.
Odzyskiwanie danych
Ze względu na projekt umieszczenia danych w Ceph, dane są naprawiane przez wszystkie zdrowe OSD. Nie ma potrzeby posiadania dodatkowego dysku do naprawy danych. Dzięki temu czas naprawy może być znacznie krótszy w porównaniu do macierzy dyskowej, która musi odbudować utracone dane na dodatkowym dysku.
- Konfiguracja mapy CRUSH i reguł