Monitorowanie odzyskiwania po awarii AWS Elastic Disaster Recovery
Monitorowanie i rozwiązywanie problemów z odzyskiwaniem po awarii (DR) jest kluczowym elementem każdej strategii DR. Możliwość otrzymywania alertów i aktualizacji statusu jest niezbędna, jeśli chodzi o ograniczenie przestojów i utrzymanie operacji. Często monitorowanie rozwiązania DR jest czynnością po wdrożeniu. Administratorzy muszą być zalogowani do narzędzia, aby zobaczyć, czy nie jest w stanie opóźnienia lub zaległości. Jeśli rozwiązanie nie jest odpowiednio monitorowane i testowane, może nie działać, gdy jest potrzebne.
AWS Elastic Disaster Recovery to rozwiązanie DR do replikacji na poziomie blokowym dla obciążeń fizycznych i wirtualnych, które pomaga w przyspieszeniu i automatyzacji przełączania awaryjnego DR. Amazon CloudWatch to usługa monitorowania, która pomaga monitorować zasoby AWS w miarę ich używania na koncie. W tym wpisie, pokazujemy jak wykorzystać istniejące zdarzenia Elastic Disaster Recovery i integrację z Amazon CloudWatch do zbudowania konfigurowalnego i szczegółowego pulpitu nawigacyjnego dla Elastic Disaster Recovery. Dowiesz się, jak uzyskać głębszy wgląd w stan swojego DR i otrzymywać krytyczne aktualizacje za pomocą Amazon EventBridge oraz Amazon Simple Notification Service.
Wymagania wstępne
Dla tego opisu krok po kroku, powinieneś mieć następujące rzeczy:
- Konto AWS
- Zasoby AWS
- AWS Elastic Disaster Recovery z agentami zainstalowanymi w „zdrowym” stanie, jak pokazano w AWS Elastic Disaster Recovery User Guide
- Dostęp do następujących usług AWS:
Omówienie rozwiązania
Ten post używa AWS Elastic Disaster Recovery do replikacji obciążeń ze środowiska źródłowego do regionu AWS. Wykorzystuje Amazon CloudWatch do monitorowania stanu replikacji. Amazon EventBridge powiadamia użytkowników o wszelkich serwerach z problemami z replikacją za pośrednictwem tematu Amazon SNS, które subskrybują, za pośrednictwem poczty e-mail lub wiadomości tekstowej.
Opis krok po kroku
Ta sekcja przeprowadzi Cię przez instrukcje jak rozpocząć konfigurowanie pulpitu nawigacyjnego oraz powiadomienia, które będą ostrzegać o problemach z replikacją.
Utwórz swój dashboard
Możesz wizualizować i udostępniać swoje metryki za pomocą dashboardów CloudWatch. Dostępnych jest wiele metryk, a CloudWatch pomaga zbudować pojedynczy widok operacji. Uwzględnij metryki dotyczące wykorzystania przepustowości, wydajności, bezpieczeństwa lub inne metryki, które pokazują kondycję funkcji DR. To jest szybkie odniesienie dla personelu operacyjnego. W tym poście dodajemy również monitorowanie, aby pokazać opóźnienie maszyn źródłowych w ramach Elastic Disaster Recovery. Dzieje się tak, gdy usługa DR nie osiąga już wartości RPO (Recovery point objective) mierzonych w sekundach i musi zostać naprawiona. Monitorujemy również wykorzystanie CPU i przychodzące bajty serwerów replikacji, aby zapewnić ich odpowiedni rozmiar.
- Przejdź do Amazon CloudWatch dashboard.
- W sekcji Dashboards, wybierz Create dashboard i podaj nazwę nowego dashboardu (na przykład „DRS-health”).
- Kliknij Add widget.
- W oknie Add widget, wybierz graph type (rekomendujemy wykres liniowy Line, aby zilustrować trend ciągły).
- Kliknij Metrics.
- Wybierz DRS, a następnie By source server, aby zobaczyć wszystkie serwery źródłowe, na których zainstalowano DRS.
- Kliknij na strzałkę, aby rozwinąć listę obok LagDuration i Backlog, a następnie kliknij Add to search.
- LagDuration pokazuje, że maszyna źródłowa powinna wysyłać więcej bloków niż obecnie otrzymujemy. Z tego powodu wpływa to na nasze RPO.
- Backlog informuje nas, że replikacja jest działa poprawnie. Istnieją jednak dane zapisane na dysku, które nadal musimy zreplikować do AWS. Dotyczy to również RPO.
- Zaznacz wszystkie maszyny i wybierz Create widget.
- Aby monitorować również te metryki serwera replikacji, wybierz Add widget.
- Wybierz Line, a następnie wybierz Metrics.
- Wybierz EC2.
- Następnie wybierz EC2>Per-Instance Metrics.
- Filtruj według Instance name serwera AWS Elastic Disaster Recovery Replication Server, aby zobaczyć dostępne metryki, takie jak:
- NetworkIn
- Zapewnia to metrykę bajtów do serwera replikacji. Jeśli jest ona zbyt duża dla Twojego typu instancji, możesz uaktualnić rozmiar instancji replikacji.
- CPUUtilization
- Zapewni to ogólne wykorzystanie procesora przez serwery replikacji. Chcesz się upewnić, że nie jest to zbyt wysoki zakres. Jeśli to wykorzystanie jest zbyt wysokie, możesz uaktualnić rozmiary instancji.
- EBSIOBalance%
- Jest to ilość dostępnych operacji I/O dla serwerów replikacji. Jeśli ta wartość stanie się to zbyt niska, możesz chcieć zaktualizować typ dysku.
- Kliknij Create widget.
- Wykonaj kroki od 7a do 7e dla NetworkIn i CPUUtilization.
Stwórz swój temat Amazon SNS
Używamy Amazon SNS do ostrzegania określonej skrzynki odbiorczej lub listy dystrybucyjnej dowolnych maszyn źródłowych AWS Elastic Disaster Recovery z zablokowaną replikacją, którą należy naprawić. W ten sposób Twoje zespoły będą mogły szybciej identyfikować i rozwiązywać problemy, dzięki czemu RPO pozostaje zgodne z oczekiwaniami. Zawieszona replikacja jest głównym wskaźnikiem problemów z replikacją i może wskazywać na wiele problemów.
- Przejdź do Amazon Simple Notification Service.
- Kliknij Create Topic.
- W sekcji Details oraz Type wybierz FIFO (first-in, first-out).
- W Name wpisz nazwę swojego tematu. (My wybraliśmy “drs-replication-monitoring.”).
- (Opcjonalnie) – Wprowadź nazwę wyświetlaną dla wiadomości SMS wysyłanych na urządzenia mobilne.
- Uwaga: od 1 czerwca 2021 r. operatorzy telekomunikacyjni w USA nie obsługują już długich kodów typu „person-to-person” w komunikacji między aplikacjami. Więcej informacji znajdziesz w Amazon SNS Developer Guide.
- (Opcjonalnie) – W przypadku Tags wprowadź parę klucz-wartość, aby ułatwić późniejszą identyfikację.
- Kliknij Create topic.
- Po utworzeniu tematu wybierz z listy drs-in-lag.
- Wybierz Create subscription.
- Sprawdź, czy Topic ARN w sekcji Details jest taki sam jak drs-in-lag.
- Z rozwijanej listy Protocol, wybierz email.
- W obszarze Endpoint dodaj e-mail lub listę dystrybucyjną, aby otrzymywać te alerty.
- Wybierz Create subscription.
Utwórz regułę za pomocą konsoli
Używamy Amazon EventBridge do monitorowania określonych zdarzeń Elastic Disaster Recovery związanych ze stanem replikacji. Jeśli EventBridge otrzyma zdarzenie o złym stanie replikacji dla Elastic Disaster Recovery, powiadomi o tym temat Amazon SNS. To z kolei powiadamia subskrybentów tego tematu.
- Otwórz Amazon EventBridge.
- Wybierz Create rule.
- W polach Name and description i Name wprowadź nazwę tej reguły. (W tym poście używamy „drs-replication-monitoring”.).
- W sekcji Define pattern, wybierz Event pattern.
- Wybierz opcję Pre-defined pattern by service.
- Z menu rozwijanego Service provider, wybierz AWS.
- Z rozwijanej listy Service name, wybierz Elastic Disaster Recovery Service.
- W obszarze Event type wybierz opcję DRS Source Server Data Replication Stalled Change.
- W sekcji Select targets oraz Target wybierz SNS topic.
- Jako Topic wybierz utworzony wcześniej temat SNS, drs-replication-monitoring.
- Wybierz Create.
Czynności końcowe
Aby uniknąć przyszłych opłat, usuń wdrożone zasoby pomocnicze i alerty. Poniższe linki zawierają odpowiednie procesy.
Podsumowanie
W tym poście umówiliśmy wszystko, co należy stworzyć, aby monitorować kondycję replikacji dla wdrożenia elastycznego odzyskiwania po awarii (DRS), w tym opcjonalne metryki do monitorowania serwerów replikacji.
Monitorowanie i powiadamianie o wszelkich przerwach w replikacji powinno mieć wysoki priorytet, jeśli chodzi o utrzymanie prawidłowego działania rozwiązania odzyskiwania po awarii. Zdarzenia AWS Elastic Disaster Recovery zapewniają skuteczną metodę uwzględniania określonych szczegółów oprzyrządowania zasobów w ramach ochrony AWS Elastic Disaster Recovery. Pomaga to w wyciąganiu wniosków, uruchamianiu operacji i prowadzeniu proaktywnych alertów i działań za pomocą CloudWatch i innych usług AWS. Dzięki temu administratorzy mogą być pewni, że są stale na bieżąco z kondycją usługi AWS Elastic Disaster Recovery.