Technologia dla niecierpliwych

Architektura i filozofia oprogramowania HACMP for AIX zakłada wysoką dostępność zasobów klastra bez względu na awarię pojedynczego węzła, aplikacji, karty sieciowej lub sieci w ogóle. IBM zaleca, aby serwery wchodzące w skład klastra zawierały co najmniej dwie karty sieciowe oraz łącza dodatkowe. Mogą to być dodatkowe kanały Fibre Channel lub łącza szeregowe RS-232. Zapewnienie węzłom klastra dostępu do sieci innych niż TCP/IP pozwala zapobiec sytuacji, w której na skutek awarii sieci TCP/IP dwie lub więcej grup serwerów walczyłoby ze sobą o zasoby.

Na każdym węźle klastra HACMP uruchamiane jest oprogramowanie Cluster Controller. Jego zadaniem jest śledzenie lokalnych zdarzeń i ich raportowanie do centralnej bazy danych klastra. Ponadto komponent ten wysyła z określoną częstotliwością komunikaty typu heartbeat do pozostałych węzłów w celu sprawdzenia, czy nie uległy one awarii. Oprogramowanie HACMP pozwala na przeniesienie serwisów na inną maszynę - zarówno na podstawie listy preferencji określonej przez administratora, jak i własnej oceny obciążenia węzłów aktywnych.

Novell

Novell ma długoletni dorobek w dziedzinie technologii klastrowej. Już systemy operacyjne z serii NetWare 3 i 4 miały jej zalążki - umożliwiały tworzenie lustrzanych kopii serwera. W wersji 5 pojawiła się dodatkowa opcja znana pod nazwą Novell Cluster Services - pozwalająca na budowanie klastrów składających się aż z 32 węzłów. W przypadku NetWare 6 klienci otrzymują oprogramowanie klastrowe w pudełku, umożliwia ono jednak budowanie klastrów składających się maksymalnie z 2 węzłów. Rozbudowa o kolejne węzły wymaga dopłaty.

Do wykrywania nieprawidłowości w pracy poszczególnych węzłów lub działających na nich aplikacji rozwiązanie Novella wykorzystuje programy-agenty. Każdy z nich porozumiewa się ze wszystkimi pozostałymi za pośrednictwem wydzielonej sieci IP. W momencie wykrycia nietypowego zachowania jednego z serwerów bądź aplikacji oprogramowanie klastrowe sprawdza zawartość pliku konfiguracyjnego, aby dowiedzieć się, jakie działania powinno podjąć. Jeżeli stwierdzona sytuacja zostaje zidentyfikowana jako awaria aplikacji, prawdopodobnie klaster podejmie próbę jej zatrzymania i ponownego uruchomienia. Jeżeli problem się powtórzy, oprogramowanie klastrowe może podjąć decyzję o wykluczeniu serwera z klastra i przeniesieniu jego zasobów na inny serwer. Oprogramowanie wyposażono w funkcje, umożliwiające automatyczny powrót aplikacji do macierzystego serwera po jego ponownym uruchomieniu.

Oprogramowanie klastrowe Novella wymaga, aby wszystkie węzły klastra były podłączone do jednej macierzy. Oprócz tego każdy z węzłów powinien utrzymywać dysk lokalny, na którym przechowywane są binaria systemu NetWare i aplikacji. Preferowanym przez Novella sposobem podłączania pamięci masowych jest Fibre Channel, choć może to również być SCSI.

Compaq

Oferowane przez Compaq Computer oprogramowanie klastrowe TruCluster jest płatną opcją dla systemu operacyjnego Tru64 Unix. Za jego pomocą można tworzyć instalacje klastrowe, składające się z maksymalnie 8 węzłów. Oprogramowanie to sprawia, że lokalne systemy plików i urządzenia fizycznie podłączone do poszczególnych serwerów widoczne są jako jedna przestrzeń zasobów.

Serwery wchodzące w skład klastra można łączyć na dwa sposoby: za pomocą sieci IP lub za pośrednictwem dedykowanej do zastosowań klastrowych technologii Memory Channel. Jej unikalność polega na tym, że umożliwia ona każdemu z węzłów klastra bezpośredni dostęp do wydzielonego obszaru pamięci pozostałych węzłów i zapisanie w nim informacji typu heartbeat. Opóźnienia w tego rodzaju komunikacji są wyjątkowo małe - rzędu 3-5 mikrosekund. Mechanizm ten ma wbudowany niskopoziomowy algorytm korekcji błędów, dzięki czemu możliwa jest rezygnacja z kosztowniejszej czasowo korekcji błędów realizowanej na poziomie oprogramowania.

Uruchamianie aplikacji w środowisku klastrowym nie wymaga dokonywania w nich żadnych zmian. Oprogramowanie TruCluster pozwala na uruchamianie aplikacji mających jedną instancję, wiele instancji lub aplikacji rozproszonych, tworzonych specjalnie dla środowiska klastrowego. W przypadku aplikacji jednoinstancyjnych wysoka dostępność wynika z faktu możliwości szybkiego jej uruchomienia na innym serwerze. Aplikacje, które można uruchamiać w wielu instancjach jednocześnie, pozwalają na uzyskanie dużo wyższej dostępności, gdyż awaria jednej kopii nie ma wpływu na działanie pozostałych. Najwyższą dostępność zapewniają aplikacje rozproszone, których poszczególne komponenty działają na różnych węzłach klastra.

Mechanizmem umożliwiającym uruchamianie wielu instancji aplikacji w środowisku TruCluster - bez szkody w postaci desynchronizacji danych - jest Distributed Lock Manager. Jego zadaniem jest zarządzanie dostępem do danych w taki sposób, aby w danym momencie tylko jeden proces mógł dokonać modyfikacji danych. Blokowanie dostępu na czas operacji jest najczęściej dokonywane na poziomie "surowego" dysku twardego. Działanie Distri-buted Lock Managera nie wyklucza konieczności stosowania zabezpieczeń dostępu do danych na poziomie aplikacji najczęściej w postaci mechanizmów transakcyjnych motoru bazy danych.


TOP 200