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 wyleczyć dane z innych replikacji przechowywanych w zdrowych OSD.
Możesz zdefiniować domenę awarii, aby Ceph przechowywał dane replikowane na różnych serwerach, regałach, pomieszczeniach lub centrach danych, aby uniknąć utraty danych z powodu jednej lub więcej awarii 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 magazyn Ceph ma brak pojedynczego punktu awarii.
Kodowanie zacierające
Replikacja oferuje najlepszą ogólną wydajność, ale nie jest zbyt efektywna pod względem miejsca na dysku.Zwłaszcza jeśli potrzebujesz wyższego stopnia redundancji.
Aby mieć wysoką dostępność danych, w przeszłości używaliśmy RAID-5 lub RAID-6 jako alternatywy dla RAID-1.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 kodu korekcyjnego umożliwia skonfigurowanie wyższego poziomu redundancji, ale z mniejszym zużyciem miejsca.
Kodowanie korekcyjne dzieli oryginalne dane na K bloków danych i oblicza dodatkowe M bloków kodujących.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 i Reguł CRUSH