Replikacja czy klaster – co jest lepsze?
Jeśli tutaj trafiłeś to najprawdopodobniej szukasz odpowiedzi na pytanie: co jest lepsze – replikacja czy klaster? Trudno znaleźć jednoznaczną odpowiedź, nie znając specyfiki biznesu jak i potrzeb klienta. Jednak jedno można stwierdzić na pewno. Oba te rozwiązania, połączone ze sobą wykazują najwyższą wysoką dostępność, jednakże to najdroższa opcja, na którą mało kto się decyduje. Większość firm z sektora mikro i MŚP nie ma odpowiednio zabezpieczonej infrastruktury i dopiero po pierwszej (niestety) poważnej awarii zaczyna się szukanie rozwiązania jak uniknąć kolejnych awarii. Rzadko, ale zdarza się również sytuacja w drugą stronę, że firma okazuje się „odporna” na dłuższy przestój systemów informatycznych i nie potrzebuje wysokodostępnego środowiska. W poniższym artykule odpowiemy zatem na pytanie, co jest lepsze, replika, czy klaster? Zachęcamy do lektury.
Czym jest replika?
Replika to kopia bazy danych lub zestaw danych, która istnieje równolegle do pierwotnego źródła danych. Replikacja może być stosowana w różnych celach, w tym w celu zwiększenia dostępności, odporności na awarie oraz wydajności systemu. Proces replikacji polega na ciągłym kopiowaniu danych z jednej lokalizacji (pierwotnej) do jednej lub więcej lokalizacji (replik). Repliki mogą być wykorzystywane do rozkładania obciążenia zapytań pomiędzy różne serwery, co umożliwia szybsze przetwarzanie zapytań i skrócenie czasu odpowiedzi. W zależności od wybranej strategii, replikacja może być synchroniczna, gdzie dane są replikowane natychmiast, lub asynchroniczna, co pozwala na pewne opóźnienie w propagacji danych.
Czym jest klaster?
Klaster to grupa wzajemnie powiązanych serwerów pracujących razem, aby działać jako pojedynczy system. Klastrowanie ma na celu zwiększenie dostępności i wydajności poprzez dystrybucję obciążenia oraz zapewnienie redundancji. W klastrze, zadania i zasoby są zarządzane wspólnie, co umożliwia bardziej efektywne wykorzystanie zasobów i lepszą skalowalność. Klaster może być stosowany w różnych aplikacjach, od obliczeń naukowych po przetwarzanie dużych zbiorów danych. Kluczowym aspektem klastrów jest ich zdolność do samodzielnego wykrywania i zarządzania awariami, co pozwala na minimalizację przestojów i zapewnienie ciągłości operacji. Klastry mogą być konfigurowane w różnorodny sposób, w zależności od potrzeb i wymagań specyficznych aplikacji.
Dla krytycznych systemów zawsze warto mieć klaster, ale czy na pewno?
Stosowanie klastra z dwóch węzłów + magazyn danych to chyba najpopularniejsza metoda budowy wysokodostępnego środowiska, jednak często ograniczony budżet po prostu nie pozwala na zakup dwóch magazynów danych i firma bądź instytucja decyduje się na zakup jednej macierzy.
- Zero-Downtime, podczas awarii jednego z hostów, drugi przejmuje jego rolę, a przy utracie kilku pakietów TCP przełączenie nastąpi automatycznie.
- Elastyczność, aktualizacje hostów odbywają się w momencie, kiedy drugi jest w 100% active.
Tylko dwie zalety? Moim zdaniem na tym koniec, w takim razie jakie są wady klastra dwu węzłowego i jednej macierzy, spójrzmy.
- „Single Point of Failure” jedna macierz to niestety bardzo często najczęstszy SPoF w tego typu architekturze.
- Koszty. Jeśli wystarczy macierz z dyskami talerzowymi SAS 10k to najprawdopodobniej nie trzeba dużo inwestować, natomiast macierz z dyskami SSD SAS lub NVMe U.3 to już większy wydatek. Do tego, aby w pełni wykorzystać dyski NVMe należy rozważyć interfejs sieciowy NVMe-of.
- Testy automatycznego przełączenia, odporności na awaryjność i poprawna konfiguracja sieciowa jest praktycznie niemożliwa, mając jeden magazyn danych, nie jesteśmy w stanie odłączyć się na chwilę od produkcji.
Według mnie, powyższe argumenty to główne wady vs zalety rozwiązania klastra z dwóch węzłów.
Jak duży wpływ na ciągłość działania firmy mają „Single Point of Failure” przekonało się już wiele firm, ale niestety dopiero po przykrych wydarzeniach nastąpiło wdrożenie Disaster Recovery Plan, mającego na celu poprawę tego stanu i odpowiednie zabezpieczenie infrastruktury. Pamiętaj, aby nie powtarzać błędu innych i być gotowym!
Co się stało? Wpadka HP z dyskami SSD.
Dyski HP SAS nagle przestały działać, okazało się, że w środku były dyski z błędnym oprogramowaniem, które spowodowało uszkodzenie dysków po przekroczeniu określonego limitu godzinowego.
Nic nie dało się zrobić, jedyne rozwiązanie problemu to ponowna konfiguracja macierzy i odzyskanie całego środowiska z kopii zapasowej. Chwilę to trwało, ale udało się i klient odzyskał całe środowisko, ale stracił cały dzień pracy, bowiem kopia wszystkich systemów była wykonywana raz na dobę.
Takich podobnych historii zapewne było wiele, więc jak bezpiecznie i sprawnie zaktualizować firmware na dyskach, jeżeli mamy tylko jeden storage? A co jak się nie uruchomi? Jak odzyskamy naszą infrastrukturą o 22 w sobotni wieczór?
Takich przykładów mam wiele, ale ten był najpoważniejszy i teoretycznie użytkownik tutaj w żaden sposób nie zawinił, piszę teoretycznie, ponieważ HP wysyłało komunikaty o błędzie, ale nie ukrywajmy, kto je przeczytał?
To w takim razie czy replikacja jest lepsza od klastra?
Porównując analogicznie do klastra przejdźmy do przedstawienia zalet replikacji:
- Niewątpliwie dla mnie numerem jeden jest oddzielny magazyn danych i jest to kluczowy element, dla którego warto rozważyć wdrożenie replikacji.
- Testowanie jest dużo łatwiejsze, w momencie testów mamy środowisko w tej samej wersji.
- Prostsza administracja.
- Łatwy sposób monitoringu replikacji.
- Niższy koszt utrzymania i zakupu. Nie potrzebujesz dysków SAS, nie musisz licencjonować drugiego hosta licencjami Microsoft, musisz jedynie w przypadku kiedy nie posiadasz ich w modelu SPLA lub nie masz wykupionego Software Assurance.
- Możliwość replikowania synchronicznego, czyli takiego bez utraty danych.
- Możliwość replikowania asynchronicznego, bez problemu wykonamy replikację na drugi koniec świata po sieci WAN.
Z głównych zalet to chyba wszystko, przejdźmy do wad.
- Replikacja synchroniczna jest droga, nie wszystkie wirtualizatory ją wspierają i wymagają dodatkowych licencji.
- Replikacja asynchroniczna powoduje utratę danych – główna wada.
- Aplikacje serwery, nie przełączą się automatycznie.
- Nie wszystkie aplikacje wspierają metodę replikacji.
Kiedy replikacja asynchroniczna jest najlepsza:
- Serwery zostały zaszyfrowane, drugą replikę powinniśmy mieć dostępną, pod warunkiem, że skonfigurowaliśmy odpowiednio sieć i dodaliśmy checkpointy do konfiguracji.
- Potrzebujemy coś przetestować na serwerze z konfiguracją produkcyjną, możemy ją wyłączyć na chwilę, uruchomić replikę w sieci prywatnej i testować.
PAMIETAJ! Nie traktuj replikacji jak kopii zapasowej!
Jak wybrać między replikacją a klastrem?
Decyzja o wyborze między replikacją a klastrem powinna być podejmowana na podstawie szczegółowej analizy wymagań systemowych, dostępności i odporności na awarie, które są kluczowe dla działalności organizacji. Przed podjęciem decyzji, ważne jest, aby zrozumieć cel każdego z tych rozwiązań oraz ich wpływ na infrastrukturę IT.
Wybierając między replikacją a klastrem, należy wziąć pod uwagę następujące aspekty:
- Wymagania dotyczące dostępności – kluczowe jest określenie, jak ważne dla działalności firmy jest utrzymanie ciągłej dostępności danych i usług.
- Wymagania dotyczące wydajności – analiza obciążeń pracy i przepustowości może wskazać, czy bardziej potrzebna jest możliwość skalowania poziomego, którą oferuje klaster.
- Budżet – koszty wdrożenia i utrzymania klastra są zazwyczaj wyższe niż w przypadku prostych rozwiązań replikacyjnych, co może być decydującym czynnikiem w zależności od dostępnych zasobów finansowych.
- Złożoność administracyjna – zarządzanie klastrami wymaga bardziej zaawansowanych umiejętności i narzędzi niż zarządzanie pojedynczymi replikami, co może wpłynąć na decyzje związane z zasobami ludzkimi.
Podsumowując
Z doświadczenia wiem, że dla większości klientów replikacja asynchroniczna będzie wystarczająca, system krytyczny dla 90% firm to poczta w chmurze, 10% to firmy produkcyjne które muszą dokładnie oszacować, ile kosztowałaby potencjalna utrata danych oraz przestój w dostępie do danych. Określenie wskaźników RTO i RPO to podstawa do wyboru odpowiedniego rozwiązania. Idealne rozwiązanie to połączenie obu technologii, ale nie każdy może sobie na to pozwolić.
Jeżeli nadal się zastanawiasz co wybrać, zachęcam do zapoznania się z naszą ofertą i kontaktu, razem dobierzemy odpowiednie rozwiązania dla Twojej firmy.