Konfigurowanie odzyskiwania po awarii dla wielowarstwowej aplikacji internetowej opartej na usługach IIS

Oprogramowanie aplikacji to aparat produktywności biznesowej w organizacji. Różne aplikacje internetowe mogą służyć różnym celom w organizacji. Niektóre aplikacje, takie jak aplikacje używane do przetwarzania listy płac, aplikacji finansowych i witryn internetowych przeznaczonych dla klientów, mogą mieć kluczowe znaczenie dla organizacji. Aby zapobiec utracie produktywności, ważne jest, aby organizacja stale uruchamiała te aplikacje. Co ważniejsze, spójne udostępnianie tych aplikacji może pomóc zapobiec uszkodzeniu marki lub wizerunku organizacji.

Krytyczne aplikacje internetowe są zwykle konfigurowane jako aplikacje wielowarstwowe: aplikacja internetowa, baza danych i aplikacja znajdują się w różnych warstwach. Oprócz rozłożenia na różne warstwy aplikacje mogą również używać wielu serwerów w każdej warstwie do równoważenia obciążenia ruchu. Ponadto mapowania między różnymi warstwami i na serwerze internetowym mogą być oparte na statycznych adresach IP. W trybie failover niektóre z tych mapowań należy zaktualizować, zwłaszcza jeśli na serwerze sieci Web skonfigurowano wiele witryn sieci Web. Jeśli aplikacje internetowe używają protokołu TLS, należy zaktualizować powiązania certyfikatów.

Tradycyjne metody odzyskiwania, które nie są oparte na replikacji, obejmują tworzenie kopii zapasowych różnych plików konfiguracji, ustawień rejestru, powiązań, składników niestandardowych (COM lub .NET), zawartości i certyfikatów. Pliki są odzyskiwane za pomocą zestawu kroków ręcznych. Tradycyjne metody odzyskiwania kopii zapasowych i ręcznego odzyskiwania plików są kłopotliwe, podatne na błędy i nie są skalowalne. Na przykład można łatwo zapomnieć o tworzeniu kopii zapasowych certyfikatów. Po przejściu w tryb failover nie masz wyboru, ale kupujesz nowe certyfikaty dla serwera.

Dobre rozwiązanie odzyskiwania po awarii obsługuje modelowanie planów odzyskiwania dla złożonych architektur aplikacji. Należy również dodać dostosowane kroki do planu odzyskiwania w celu obsługi mapowań aplikacji między warstwami. Jeśli wystąpi awaria, mapowania aplikacji zapewniają jedno kliknięcie, pewne rozwiązanie, które pomaga prowadzić do niższego celu czasu odzyskiwania.

W tym artykule opisano sposób ochrony aplikacji internetowej opartej na usługach Internet Information Services (IIS) przy użyciu usługi Azure Site Recovery. W tym artykule opisano najlepsze rozwiązania dotyczące replikowania trójwarstwowej aplikacji internetowej opartej na usługach IIS na platformie Azure, sposobu wykonywania próbnego odzyskiwania po awarii oraz sposobu przechodzenia aplikacji w tryb failover na platformę Azure.

Wymagania wstępne

Przed rozpoczęciem upewnij się, że wiesz, jak wykonywać następujące zadania:

Wzorce wdrażania

Aplikacja internetowa oparta na usługach IIS zwykle jest zgodna z jednym z następujących wzorców wdrażania:

Wzorzec wdrożenia 1

Farma internetowa oparta na usługach IIS z routingiem żądań aplikacji (ARR), serwerem usług IIS i programem SQL Server.

Diagram of an IIS-based web farm that has three tiers

Wzorzec wdrożenia 2

Farma internetowa oparta na usługach IIS z usługami ARR, serwerem usług IIS, serwerem aplikacji i programem SQL Server.

Diagram of an IIS-based web farm that has four tiers

Obsługa usługi Site Recovery

W przykładach w tym artykule używamy maszyn wirtualnych VMware z usługami IIS 7.5 w systemie Windows Server 2012 R2 Enterprise. Ponieważ replikacja usługi Site Recovery nie jest specyficzna dla aplikacji, zalecenia zawarte w tym artykule powinny być stosowane w scenariuszach wymienionych w poniższej tabeli oraz dla różnych wersji usług IIS.

Źródło i cel

Scenariusz Do lokacji dodatkowej Na platformę Azure
Hyper-V Tak Tak
VMware Tak Tak
Serwer fizyczny Nie. Tak
Azure Nie dotyczy Tak

Replikowanie maszyn wirtualnych

Aby rozpocząć replikację wszystkich maszyn wirtualnych farmy sieci Web usług IIS na platformę Azure, postępuj zgodnie ze wskazówkami w temacie Testowanie pracy w trybie failover na platformie Azure w usłudze Site Recovery.

Jeśli używasz statycznego adresu IP, możesz określić adres IP, który ma zostać zabrany przez maszynę wirtualną. Aby ustawić adres IP, przejdź do pozycji Ustawienia>sieci DOCELOWy adres IP.

Screenshot that shows how to set the target IP in the Site Recovery Network pane

Tworzenie planu odzyskiwania

Plan odzyskiwania obsługuje sekwencjonowanie różnych warstw w aplikacji wielowarstwowej podczas pracy w trybie failover. Sekwencjonowanie pomaga zachować spójność aplikacji. Podczas tworzenia planu odzyskiwania dla wielowarstwowej aplikacji internetowej wykonaj kroki opisane w temacie Tworzenie planu odzyskiwania przy użyciu usługi Site Recovery.

Dodawanie maszyn wirtualnych do grup trybu failover

Typowa wielowarstwowa aplikacja internetowa usług IIS składa się z następujących składników:

  • Warstwa bazy danych, która ma maszyny wirtualne SQL.
  • Warstwa internetowa, która składa się z serwera USŁUG IIS i warstwy aplikacji.

Dodaj maszyny wirtualne do różnych grup na podstawie warstwy:

  1. Utwórz plan odzyskiwania. Dodaj maszyny wirtualne warstwy bazy danych w obszarze Grupa 1. Dzięki temu maszyny wirtualne w warstwie bazy danych są zamykane jako ostatnie i są najpierw otwierane.
  2. Dodaj maszyny wirtualne warstwy aplikacji w obszarze Grupa 2. Dzięki temu maszyny wirtualne warstwy aplikacji są tworzone po utworzeniu warstwy bazy danych.
  3. Dodaj maszyny wirtualne warstwy internetowej w grupie 3. Dzięki temu maszyny wirtualne warstwy internetowej są tworzone po utworzeniu warstwy aplikacji.
  4. Dodaj maszyny wirtualne równoważenia obciążenia w grupie 4. Dzięki temu maszyny wirtualne równoważenia obciążenia są tworzone po utworzeniu warstwy internetowej.

Aby uzyskać więcej informacji, zobacz Dostosowywanie planu odzyskiwania.

Dodawanie skryptu do planu odzyskiwania

Aby farma internetowa usług IIS działała poprawnie, może być konieczne wykonywanie niektórych operacji na maszynach wirtualnych platformy Azure po przejściu w tryb failover lub podczas testu pracy w trybie failover. Niektóre operacje po przejściu w tryb failover można zautomatyzować. Można na przykład zaktualizować wpis DNS, zmienić powiązanie lokacji lub zmienić parametry połączenia, dodając odpowiednie skrypty do planu odzyskiwania. Dodawanie skryptu programu VMM do planu odzyskiwania opisuje sposób konfigurowania zautomatyzowanych zadań przy użyciu skryptu.

Aktualizacja DNS

Jeśli system DNS jest skonfigurowany do dynamicznej aktualizacji DNS, maszyny wirtualne zwykle aktualizują system DNS przy użyciu nowego adresu IP po uruchomieniu. Jeśli chcesz dodać jawny krok w celu zaktualizowania systemu DNS przy użyciu nowych adresów IP maszyn wirtualnych, dodaj skrypt w celu zaktualizowania adresu IP w systemie DNS jako akcji po przejściu w tryb failover dla grup planu odzyskiwania.

ciąg Połączenie ion w pliku web.config aplikacji

Parametry połączenia określa bazę danych, z którą komunikuje się witryna internetowa. Jeśli parametry połączenia nosi nazwę maszyny wirtualnej bazy danych, żadne dalsze kroki nie są wymagane po przejściu w tryb failover. Aplikacja może automatycznie komunikować się z bazą danych. Ponadto jeśli adres IP maszyny wirtualnej bazy danych jest zachowywany, nie trzeba aktualizować parametry połączenia.

Jeśli parametry połączenia odwołuje się do maszyny wirtualnej bazy danych przy użyciu adresu IP, należy zaktualizować go po przejściu w tryb failover. Na przykład następujące parametry połączenia wskazuje bazę danych z adresem IP 127.0.1.2:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="ConnStringDb1" connectionString="Data Source= 127.0.1.2\SqlExpress; Initial Catalog=TestDB1;Integrated Security=False;" />
</connectionStrings>
</configuration>

Aby zaktualizować parametry połączenia w warstwie internetowej, dodaj skrypt aktualizacji połączenia usług IIS po grupie 3 w planie odzyskiwania.

Powiązania lokacji dla aplikacji

Każda witryna składa się z informacji o powiązaniach. Informacje o powiązaniu obejmują typ powiązania, adres IP, pod którym serwer USŁUG IIS nasłuchuje żądań dotyczących lokacji, numeru portu i nazw hostów dla lokacji. Podczas pracy w trybie failover może być konieczne zaktualizowanie tych powiązań, jeśli wystąpi zmiana skojarzonego z nimi adresu IP.

Uwaga

Jeśli ustawisz powiązanie witryny na Wszystkie nieprzypisane, nie musisz aktualizować tego powiązania po przejściu w tryb failover. Ponadto jeśli adres IP skojarzony z witryną nie zostanie zmieniony po przejściu do trybu failover, nie musisz aktualizować powiązania witryny. (Przechowywanie adresu IP zależy od architektury sieci i podsieci przypisanych do lokacji głównych i odzyskiwania. Ich aktualizowanie może nie być możliwe w twojej organizacji).

Screenshot that shows setting the TLS/SSL binding

Jeśli adres IP został skojarzony z lokacją, zaktualizuj wszystkie powiązania lokacji przy użyciu nowego adresu IP. Aby zmienić powiązania witryny, dodaj skrypt aktualizacji warstwy internetowej usług IIS po grupie 3 w planie odzyskiwania.

Aktualizowanie adresu IP modułu równoważenia obciążenia

Jeśli masz maszynę wirtualną ARR, aby zaktualizować adres IP, dodaj skrypt trybu failover usług IIS ARR po grupie 4.

Powiązanie certyfikatu TLS/SSL dla połączenia HTTPS

Witryna internetowa może mieć skojarzony certyfikat TLS/SSL, który pomaga zapewnić bezpieczną komunikację między serwerem internetowym a przeglądarką użytkownika. Jeśli witryna internetowa ma połączenie HTTPS, a także skojarzone powiązanie witryny HTTPS z adresem IP serwera usług IIS z powiązaniem certyfikatu TLS/SSL, należy dodać nowe powiązanie lokacji dla certyfikatu z adresem IP maszyny wirtualnej USŁUG IIS po przejściu do trybu failover.

Certyfikat TLS/SSL można wydać dla następujących składników:

  • W pełni kwalifikowana nazwa domeny witryny internetowej.
  • Nazwa serwera.
  • Certyfikat z symbolami wieloznacznymi dla nazwy domeny.
  • Adres IP. Jeśli certyfikat TLS/SSL jest wystawiony na adres IP serwera usług IIS, należy wydać inny certyfikat TLS/SSL względem adresu IP serwera usług IIS w witrynie platformy Azure. Należy utworzyć dodatkowe powiązanie protokołu TLS dla tego certyfikatu. W związku z tym nie zalecamy używania certyfikatu TLS/SSL wystawionego względem adresu IP. Ta opcja jest mniej powszechnie używana i wkrótce zostanie wycofana zgodnie ze zmianami nowego urzędu certyfikacji/forum przeglądarki.

Aktualizowanie zależności między warstwą internetową a warstwą aplikacji

Jeśli masz zależność specyficzną dla aplikacji opartą na adresie IP maszyn wirtualnych, musisz zaktualizować tę zależność po przejściu w tryb failover.

Wykonywanie testu przejścia w tryb failover

  1. W witrynie Azure Portal wybierz magazyn usługi Recovery Services.
  2. Wybierz plan odzyskiwania utworzony dla farmy sieci Web usług IIS.
  3. Wybierz pozycję Test pracy w trybie failover.
  4. Aby rozpocząć testowy proces pracy w trybie failover, wybierz punkt odzyskiwania i sieć wirtualną platformy Azure.
  5. Po uruchomieniu środowiska pomocniczego można przeprowadzić walidację.
  6. Po zakończeniu walidacji, aby wyczyścić testowe środowisko pracy w trybie failover, wybierz pozycję Walidacje zakończone.

Aby uzyskać więcej informacji, zobacz Testowanie trybu failover na platformie Azure w usłudze Site Recovery.

Uruchom tryb failover

  1. W witrynie Azure Portal wybierz magazyn usługi Recovery Services.
  2. Wybierz plan odzyskiwania utworzony dla farmy sieci Web usług IIS.
  3. Wybierz pozycję Tryb failover.
  4. Aby rozpocząć proces pracy w trybie failover, wybierz punkt odzyskiwania.

Aby uzyskać więcej informacji, zobacz Tryb failover w usłudze Site Recovery.

Następne kroki