Backup vs Raid

Backup vs Raid
Kopie zapasowe są kluczową częścią naszego cyfrowego życia. Każdy komputer, od gigantycznych baz danych po jeden komputer osobisty lub urządzenie mobilne wymaga kopii zapasowej. Miejsce, w którym najbardziej odpowiednie dane użytkownika mogą być przechowywane przez długi czas, a także przechowywać w taki sposób, że można je odzyskać w potrzebie. Możemy narysować rozróżnienie między danymi w naszym aktualnie działającym systemie, nazwijmy to dane na żywo, i cofnął się dane. Ten ostatni jest przechowywany z dala od obecnego systemu, który wykorzystuje dane na żywo.

RAID, dotyczy danych na żywo, jest to mechanizm, z którym działający system łączy wiele dysków w pojedynczy jednostkę magazynową. Dane są następnie rozpowszechniane na wszystkie dyski w taki sposób, aby przetrwać niepowodzenie co najmniej jednego (lub więcej) dysków fizycznych. Najprostszym rodzajem tablicy RAID jest RAID1 lub lustrzanie. W tym miejscu kopiujesz (lub odzwierciedlasz) te same dane na dwóch lub więcej dyskach, tak że jeśli jeden z dysków zawiedzie, dane mogą nadal przetrwać i nadal być aktywnie używane. Istnieją również inne konfiguracje RAID i omówimy je w miarę upływu czasu.

O RAID

RAID lub zbędny zestaw niedrogich dysków, jest mechanizmem przechowywania danych na dyskach. Istnieje szeroka „tablica” konfiguracji RAID, z którymi możesz się udać, ale dwa podstawowe mechanizmy, na których wszystkie są oparte, są następujące:

1. Lustro:

Mirroring implikuje, że bloki danych są kopiowane, odzwierciedlane, na wielu dyskach. Jeśli odzwierciedlasz swoje dane na trzech dyskach, możesz przetrwać do niepowodzenia dwóch dysku w dowolnym momencie, nieudane dyski można następnie zastąpić nowymi bez większego problemu. Podobnie, jeśli skopiujesz dane n+1 dyski, możesz wytrzymać N Dyski zawodzące. Minusem tego jest to, że otrzymujesz tylko pojemność magazynową równą najmniejszego dysku w tablicy RAID.

2. Parytet:

Drugim podejściem jest podzielenie danych na dwie części, przy użyciu dwóch bloków danych użytkownika. Trzy bloki są tego samego rozmiaru i są rozłożone na różne urządzenia. Do pracy tej konfiguracji jest minimum trzy urządzenia. Jeśli którykolwiek z dysku nie powiedzie się, możesz odtworzyć bloki przechowywane na tym dysku za pomocą pozostałych dwóch bloków. Na przykład, jeśli drugi blok użytkownika zostanie utracony, pierwszy blok i blok parzystości można użyć do obliczenia drugiego bloku użytkownika. Jeśli jesteś zainteresowany tym, jak to działa, sprawdź to wspaniałe wyjaśnienie.

Tę metodę można poprawić po dalszych 2 lub nawet 3 blokach parytetu. Ale w branży nie widać więcej niż 3 parytetu. Jeśli masz jeden blok parytetu, możesz przetrwać jedną awarię dysku. Blok parytetu oznacza, że ​​możesz wytrzymać dwa dyski i tak dalej.

Jest bardziej wydajny pod względem wykorzystania przechowywania, niż lustrzanie. Jeśli masz jeden blok parytetu, potrzebujesz tylko 50% więcej fizycznej pamięci na rzeczywiste dane użytkownika, które przechowujesz. Oznacza to przechowywanie 1 GB danych, których potrzebujesz 1.5 GB przechowywania (plus jest niewielki narzut dla metadanych). Jest to o wiele bardziej wydajne niż nawet najbardziej wydajny schemat lustrzany, w którym potrzebujesz co najmniej 2 GB pamięci, aby odzwierciedlić 1 GB danych między dwoma dyskami.

Minusem jest to, że losowe operacje zapisu zostaną spowolnione, dzięki dodatkowej części obliczeń i operacji zapisu związanego z blokiem parzystości. Również niezawodność nie jest tak dobra jak niezawodność n+1 Dyski lustrzane, w których możesz przygotować się na dowolną dowolną liczbę dysków.

Konfiguracje RAID mogą być tak złożone lub tak proste, jak to lubisz, możesz połączyć strategie parytetu i odzwierciedlania oraz modyfikować je do upodobań przedsiębiorstwa. Istnieją dedykowane kontrolery rajdowe, do których podłączasz dyski fizyczne, a następnie system operacyjny widzi pojedynczy dysku. LSI jest jednym z takich dostawców kontrolerów RAID. Możesz także wykonać RAID w oprogramowaniu OpenZFS to prawdopodobnie najlepszy zakład, jaki masz w tym sprawie.

Ostatni rodzaj nalotu, który otrzymuje wyróżnienie, to nalot 0. Technicznie nie jest to schemat nalotu, ponieważ nie wiąże się tu zwolnienia. Ideą RAID 0 jest po prostu rozpowszechnianie danych na wiele urządzeń pamięci masowej bez każdy Odporność na awarie dysku. Zaletą jest to, że uzyskasz ulepszenia wydajności, wykonując to. Jeśli piszesz 1 GB danych na pojedynczy dysku, proces jest powolny. Dysk może wykonywać ograniczoną liczbę operacji zapisu na sekundę, a system operacyjny musi poczekać, aż zakończy tę operację przed wysłaniem nowych danych. Jeśli rozpowszechniasz te same 1 GB danych na dwa takie dyski, możesz pisać (i odczytać) od obu z nich jednocześnie i zyskać sporo poprawy wydajności.

Kopie zapasowe

Pojęcie kopii zapasowych jest bardziej ważne niż koncepcja RAID. Kopia zapasowa, w kontekście zarządzania pamięcią, to znana dobra kopia danych, od danego punktu, z którego można przywrócić pliki z powrotem do głównego systemu. Jeśli chodzi o implementację, istnieje wiele rozwiązań hostowanych w chmurze, a także wiele offline, których można użyć.

Tarsnap i Backblaze to moje ulubione usługi zarządzane na tworzenie kopii zapasowych zarówno dla przypadków użycia prywatnego, jak i biznesowego. Możesz także dołączyć Dysk Google, iCloud lub Dropbox w tej definicji kopia zapasowa Rozwiązanie, ale są one bardziej ukierunkowane na rynek konsumencki niż przedsiębiorstwo. Jednak podstawowa zasada jest nadal taka sama. Kiedy zalogujesz się na nowy iPhone lub iPad, wszystkie dane, Twoje kontakty, zdjęcia, biblioteka multimediów itp. Są płynnie synchronizowane z konta iCloud, a gdy używasz urządzenia, nowsze dane zostają poparte w chmurze, a ty nie Muszę się tym martwić.

Twoje rozwiązanie do tworzenia kopii zapasowych może być tak proste, jak kopiowanie danych na zewnętrznym dysku twardym lub użycie rsync (lub wysyłanie ZFS, jeśli używasz OpenZFS) do okresowego generowania kopii wszystkich odpowiednich informacji. Może to obejmować folder dokumentów, bazę danych, repozytorium źródłowe lub nawet cały system plików głównych w płaskim zamku lub tarball. Ważne kryteria, które powinno spełnić dobre rozwiązanie do tworzenia kopii zapasowych, są następujące:

  1. Kopie zapasowe powinny występować często - jeśli tworzysz kopie zapasowe co miesiąc, zamiast każdego tygodnia ryzykujesz utratę danych o wartości do miesiąca, gdy pojawia się katastrofa.
  2. Twoje kopie zapasowe powinny cofać się w czasie - pamięć kopii zapasowej jest skończona. Czasami musisz wyrzucić starsze kopie zapasowe. Im więcej masz przechowywania, tym lepsze mogą być twoich kopii zapasowych. Załóżmy, że co tydzień tworzysz kopię zapasową danych, ale wyrzucasz kopie zapasowe starsze niż 2 tygodnie. Jeśli plik zostanie przypadkowo usunięty, a to pozostaje niezauważone przez dwa tygodnie, nie będziesz mieć sposobu, aby go przywrócić.
  3. Twoje pliki powinny być faktycznie odpoczywne - jeśli nigdy nie próbowałeś odzyskać danych z kopii zapasowej, nie masz kopii zapasowej. Nie powinieneś nauczyć się odzyskać danych, w krytycznym momencie, gdy poniosłeś utratę danych. Zaplanuj z wyprzedzeniem i wiedz, jak przywrócić system z ostatniego znanego dobrego kopii zapasowej.
  4. Twoja kopia zapasowa powinna być oddzielona od systemu działającego - gdy uderza w katastrofę, a wszystkie pliki na serwerze produkcyjnym są szyfrowane, usunięte lub uszkodzone, musisz upewnić się, że to samo nie zdarzyło się twoich kopii zapasowych. Jednym dobrym sposobem na zapewnienie temu jest upewnienie się, że urządzenie kopii zapasowych nie jest „podłączone” do środowiska produkcyjnego, tj.e, Odłącz swój dysk twardy USB, nie zamontuj systemu plików NFS, gdy skończysz go. Przynajmniej nie daj systemu produkcyjnego uprzywilejowania do zastąpienia lub modyfikowania danych tworzenia kopii zapasowych. Zrób to tylko do odczytu.

Teraz, gdy wiemy trochę o RAID, jak i kopii zapasowej, podkreślmy niektóre różnice między nimi.

Pliki i bloki

RAID jest zawsze zaniepokojony blokami danych, a nie sposób, w jaki system plików przedstawia użytkownikowi te dane. Zarówno oprogramowanie, jak i sprzętowe RAID dotyczą danych jako bloków informacji, rozmiar bloków może wahać się od 128 KIB do 1 MIB.

Z drugiej strony kopie zapasowe są znacznie bardziej elastyczne. Zazwyczaj są one wykonywane na poziomie systemu plików, chociaż nie ma tak trudnej i szybkiej zasady. Są też bardziej ziarniste. Możesz przywrócić pojedynczy plik z kopii zapasowej, jeśli Twoje rozwiązanie jest wystarczająco elastyczne. Tablice RAID nie są kopiami zapasowymi, są tylko sposobem na rozpowszechnianie danych na wielu dyskach. Jeśli plik zostanie usunięty, wszystkie jego lustrzane bloki i bloki parzystości są uwolnione. Koniec opowieści.

Przypadków użycia

Kopie zapasowe są dla wszystkich. Podejście i zakres może różnić się w zależności od przypadków użycia osobistego do przedsiębiorstwa, ale każdy z cyfrowym życiem potrzebuje tworzenia kopii zapasowych. RAID to bardziej funkcja specyficzna dla biznesu/przedsiębiorstwa. Widzisz tablice RAID na serwerach, urządzeniach do przechowywania takich jak NAS i SAN, Hipervisors Cloud itp. Prawie każde miejsce, które przechowuje na żywo krytyczne dane, wykorzystuje jakąś formę RAID. Nawet serwery, które uruchamiają twoje kopie zapasowe hostowane w chmurze, prawdopodobnie używają tablic RAID. Nie są to wzajemnie wykluczające się technologie.

To nie znaczy, że nie możesz użyć RAID w przypadku użytku osobistego, po prostu ma więcej użyteczności w przedsiębiorstwach. Jednym z powodów jest to, że w przedsiębiorstwie dyski są wbijane w operacje IO 24/7. W środowisku produkcyjnym, podobnie jak przechowywanie bazy danych lub usługi przesyłania strumieniowego wideo lub hiperwizor w chmurze, urządzenie pamięci pamięci serwera będzie pod stałe makabryczne obciążenie, dane są stale odczytywane i zapisywane do tych urządzeń, a często przez kilka aplikacji jednocześnie. W tych warunkach dyski są znacznie bardziej prawdopodobne. Konfiguracja RAID oznacza, że ​​jeśli napęd nie powiedzie. Większość serwerów może nadal działać nawet po awarii dysku, więc nie tracisz nowych informacji i żądań, które pojawiają się w każdej sekundzie.

Przeciętny komputer stacjonarny nie może odtworzyć tego samego stresującego stanu, nawet jeśli dysk umiera, jeśli używasz rozwiązania kopii zapasowej, takiego jak Backblaze, możesz odzyskać większość utraconych danych i stracić kilka godzin pracy, to prawdopodobnie najgorsze rzeczy może się zdarzyć. Nawet to staje się rzadkością dzięki rozwiązaniom hostowanym w chmurze, takim jak Adobe Creative Cloud, Office 365 itp.

RAID nie jest substytutem kopii zapasowej

Jeśli z tego artykułu istnieje jeden odejście, powinno to być. RAID nie jest substytutem kopii zapasowej. Zawsze cofnij swoje dane! Jest wielu ludzi, którzy myślą, że jeśli masz nalot, oznacza to, że dane są bezpieczne na wielu dyskach, więc nie ma potrzeby ich poparcia. Nic nie jest dalsze od prawdy. RAID ma radzić sobie z jednym konkretnym problemem - dyskami zawodowymi lub oddawaniem błędnych danych. Nalot nie ochroni cię przed milionem innych zagrożeń, takich jak następujące:

  1. Błędy użytkownika i przypadkowe usunięcia
  2. Błędy aplikacji lub systemu operacyjnego powodujące powszechne uszkodzenie danych
  3. Oprogramowanie ransomware lub inne szyfrowanie złośliwego oprogramowania, usuwanie lub uszkodzenie danych
  4. Niepowodzenie samych kontrolerów rajdowych

Dane dotyczące tablicy RAID są na żywo. Jeśli system systemu operacyjnego, aplikacja (lub użytkownik) idzie w szaleństwie i usunie kilka plików tutaj i tam, plik zostanie usunięty w całej tablicy RAID. Posiadanie oddzielnej kopii danych, kopii zapasowej, to jedyny sposób, w jaki możesz kiedykolwiek chronić się przed tego rodzaju scenariuszem.

Wniosek

Jeśli martwisz się o swoje dane, pierwszym problemem powinno być rozwiązanie do tworzenia kopii zapasowych. Większość użytkowników komputerów stacjonarnych, z wyjątkiem może zaawansowanych użytkowników, powinna więcej zainwestować w niezawodną kopię zapasową zamiast bawić się RAID1, RAID5 lub RaIDZ. Jeśli chcesz zbudować własny serwer kopii zapasowej, musisz pomyśleć o przyzwoitej polityce tworzenia kopii zapasowych i niezawodnym zapleczu pamięci. Ten artykuł może dobre miejsce na rozpoczęcie. Możesz użyć RSYNC lub ZFS Wyślij, aby zabrać etykietę kopii danych na ten backend.

Jeśli jesteś w przedsiębiorstwie i rozważasz rozwiązanie RAID do przechowywania wszystkich danych na żywo. Rozważ użycie OpenZFS, oferuje bardzo elastyczne rozwiązanie, wszystko, od lustrzania N-Disk po RaIDZ1 z jednym blokiem parytetu po RaIdz2 i RaIdz3 z blokami 2 i 3 parytetu. Przed podjęciem decyzji musisz rozważyć wymagania swojej aplikacji. Istnieją kompromisy między występami odczytu, odpornością i wydajnością przechowywania. Poleciłbym jednak, abyś pomyślał o RAID dopiero po ustaleniu rozwiązania do tworzenia kopii zapasowych.