Spis treści
Potencjalna awaria i związane z nią przestoje w działalności to prawdziwy koszmar dla biznesu. Czy istnieje jakiś sposób, aby zapewnić maksymalną możliwą niezawodność systemów? Rozwiązaniem może być wykorzystanie chmury, w szczególności usług o wysokiej dostępności.
W niektórych branżach zakłócenia w dostępie do usług mogą okazać się katastrofalne w skutkach, nie tylko ze względów finansowych. W jaki sposób eliminować ryzyko wystąpienia awarii i zapewnić niezawodność na możliwie najwyższym poziomie? Odpowiedzią jest tu chmura obliczeniowa i usługi opatrzone metką High Availability (w skrócie HA).
High Availability – co to jest?
Definicja wysokiej dostępności zakłada, że dana usługa powinna działać bez zakłóceń przez określony czas, nawet w przypadku awarii. Ta pozostanie dla użytkownika niezauważalna, bo cały system jest na takie zdarzenia dobrze przygotowany. Jeśli pojedynczy serwer lub jego komponenty przestaną działać, ich pracę automatycznie przejmuje inna maszyna w okolicy. Oto cała moc rozproszonej architektury usług chmurowych.
Infrastruktura Google Cloud Platform (GCP) jest rozsiana po całym globie. Została podzielona na 32 obszary geograficzne (regions), w ramach których działa łącznie aż 97 stref dostępności (zones). W każdym z regionów dostępne są co najmniej trzy strefy, w których mieszczą się centra danych dostawcy usług chmurowych.
Maszyny często współpracują ze sobą jako klaster. Oznacza to, że serwery dzielą między siebie obciążenie (poprzez load balancing) i stale synchronizują dane, zachowując się jak jeden serwer. Kiedy jedna instancja lub centrum danych jest niedostępne, inne natychmiast przejmuje na siebie ruch i świadczenie usługi. Instancje mogą się również automatycznie diagnozować i samoczynnie naprawiać.
Wartym odnotowania jest fakt niedawnego uruchomienia pierwszego regionu Google Cloud w Europie Środkowo-Wschodniej. Region w Warszawie skraca nie tylko czas dostępu do usług chmurowych. Zwiększa poziom świadomości i dostępności usług chmurowych dla lokalnego biznesu.
High Availability a wirtualizacja
Wysoka dostępność jest stosunkowo łatwa do osiągnięcia przy wykorzystaniu wirtualizacji. Maszyny wirtualne uruchomione w chmurze łączymy w klastry (podobnie jak urządzenia fizyczne, jednak taka operacja redukuje koszty, zwiększa tempo wdrożenia i lepiej wykorzystuje dostępne zasoby). W sytuacji awarii jednej z maszyn, inna przejmuje jej działanie w sposób natychmiastowy.
Więcej o maszynach wirtualnych i ich zaletach przeczytasz w naszym artykule: Maszyny wirtualne. Czym są, jak działają i w jakim celu się ich używa?
Oprogramowanie High Availability – bazy danych
Jednym z przykładów usługi Google Cloud Platform, gdzie zachodzi potrzeba zapewnienia wysokiej dostępności jest baza danych Cloud SQL. Jeśli zachodzi potrzeba ustawienia instancji typu HA, tworzona jest tzw. instancja regionalna. Oznacza to, że baza danych dostępna jest w dwóch strefach, a każdej zmianie zawartości towarzyszy natychmiastowa synchronizacja.
W Google Cloud Platform baza danych Cloud SQL ma wsparcie dla zewnętrznych fizycznych nośników danych (tzw. Persistent Disks). W ten sposób krytyczne dane pozostaną dostępne w przypadku instancji awarii maszyny wirtualnej, a nawet całego fizycznego serwera.
Dowiedz się więcej o Cloud SQL z naszego artykułu: Cloud SQL, czyli baza danych w chmurze. Czym jest i dlaczego warto z niej korzystać?