Ponowne hostowanie lokalnej aplikacji systemu Linux na maszynach wirtualnych platformy Azure

W tym artykule pokazano, jak fikcyjna firma Contoso ponownie hostuje dwuwarstwową aplikację opartą na lampie przy użyciu maszyn wirtualnych (IaaS) infrastruktury jako usługi platformy Azure.

Aplikacja pomocy technicznej używana w tym przykładzie osTicket jest dostarczana jako oprogramowanie typu open source. Jeśli chcesz go użyć do własnych celów testowych, możesz pobrać go z usługi GitHub.

Biznesowa siła napędowa

Zespół liderów IT w ścisłej współpracy z partnerami biznesowymi firmy ustalił, co firma będzie chciała osiągnąć dzięki migracji:

  • Reagowanie na rosnące potrzeby biznesowe. Firma Contoso rozwija się, przez co lokalne systemy i infrastruktura stają się przeciążone.
  • Ograniczanie ryzyka. Aplikacja pomocy technicznej ma kluczowe znaczenie dla firmy Contoso. Firma Contoso chce przenieść ją na platformę Azure, eliminując ryzyko.
  • Rozszerz. Firma Contoso nie chce teraz zmieniać aplikacji. Chce upewnić się, że aplikacja jest stabilna.

Cele migracji

Zespół ds. chmury firmy Contoso przypiął cele tej migracji, aby określić najlepszą metodę migracji:

  • Po migracji aplikacja na platformie Azure powinna mieć takie same możliwości wydajności, jak obecnie w lokalnym środowisku VMware firmy. Aplikacja pozostanie tak krytyczna w chmurze, jak była lokalna.
  • Firma Contoso nie chce inwestować w tę aplikację. Jest to ważne dla firmy, ale w obecnej formie firma Contoso po prostu chce bezpiecznie przenieść ją do chmury.
  • Firma Contoso nie chce zmieniać modelu operacji dla tej aplikacji. Chce wchodzić w interakcje z aplikacją w chmurze w taki sam sposób, jak teraz.
  • Firma Contoso nie chce zmieniać funkcjonalności aplikacji. Zmieni się tylko lokalizacja aplikacji.
  • Po ukończeniu kilku migracji aplikacji systemu Windows firma Contoso chce dowiedzieć się, jak używać infrastruktury opartej na systemie Linux na platformie Azure.

Projekt rozwiązania

Po przypinaniu celów i wymagań firma Contoso projektuje i przegląda rozwiązanie wdrożenia oraz identyfikuje proces migracji. Zidentyfikowano również usługi platformy Azure, które będą używane przez firmę Contoso do migracji.

Bieżąca aplikacja

  • Aplikacja osTicket jest warstwowa na dwóch maszynach wirtualnych (OSTICKETWEB i OSTICKETMYSQL).
  • Maszyny wirtualne znajdują się na hoście VMware ESXi contosohost1.contoso.com (wersja 6.5).
  • Środowisko VMware jest zarządzane przez program vCenter Server 6.5 (vcenter.contoso.com) i działa na maszynie wirtualnej.
  • Firma Contoso ma lokalne centrum danych (contoso-datacenter) z lokalnym kontrolerem domeny (contosodc1).

Proponowana architektura

  • Ponieważ aplikacja jest obciążeniem produkcyjnym, maszyny wirtualne na platformie Azure będą znajdować się w produkcyjnej grupie ContosoRGzasobów .
  • Maszyny wirtualne zostaną zmigrowane do regionu podstawowego (Wschodnie stany USA 2) i umieszczone w sieci produkcyjnej (VNET-PROD-EUS2):
    • Internetowa maszyna wirtualna zostanie umieszczona w podsieci frontonu (PROD-FE-EUS2).
    • Maszyna wirtualna bazy danych będzie znajdować się w podsieci bazy danych (PROD-DB-EUS2).
  • Lokalne maszyny wirtualne w centrum danych firmy Contoso zostaną zlikwidowane po zakończeniu migracji.

Diagram architektury scenariusza.

Przegląd rozwiązania

Firma Contoso ocenia proponowany projekt, łącząc listę zalet i wad.

Kwestie do rozważenia Szczegóły
Zalety Obie maszyny wirtualne aplikacji zostaną przeniesione na platformę Azure bez zmian, co sprawia, że migracja jest prosta.

Ponieważ firma Contoso korzysta z podejścia "lift-and-shift" dla obu maszyn wirtualnych aplikacji, nie są potrzebne żadne specjalne narzędzia konfiguracji ani migracji dla bazy danych aplikacji.

Firma Contoso zachowa pełną kontrolę nad maszynami wirtualnymi aplikacji na platformie Azure.

Maszyny wirtualne aplikacji korzystają z systemu Ubuntu 16.04-TLS, zatwierdzonej dystrybucji systemu Linux. Dowiedz się więcej o zatwierdzonych dystrybucjach systemu Linux na platformie Azure.
Wady Warstwa internetowa i dane aplikacji pozostają pojedynczymi punktami trybu failover.

Firma Contoso będzie musiała nadal obsługiwać aplikację jako maszyny wirtualne platformy Azure, a nie przechodzić do usługi zarządzanej, takiej jak Azure App Service i Azure Database for MySQL.

Firma Contoso zdaje sobie sprawę, że dzięki obsłudze migracji maszyn wirtualnych metodą "lift-and-shift" firma nie wykorzystuje w pełni funkcji oferowanych przez Azure Database for MySQL. Te funkcje obejmują wbudowaną wysoką dostępność, przewidywalną wydajność, proste skalowanie, automatyczne kopie zapasowe i wbudowane zabezpieczenia.

Proces migracji

Firma Contoso przeprowadzi proces migracji w następujący sposób:

  • W pierwszym kroku firma Contoso przygotowuje i konfiguruje składniki platformy Azure dla usługi Azure Migrate: Server Migration i przygotowuje lokalną infrastrukturę VMware.
  • Firma ma już infrastrukturę platformy Azure , więc wystarczy skonfigurować replikację maszyn wirtualnych za pomocą narzędzia Azure Migrate: Server Migration.
  • Po przygotowaniu wszystkich elementów firma Contoso może rozpocząć replikację maszyn wirtualnych.
  • Po włączeniu i uruchomieniu replikacji firma Contoso przeprowadzi migrację maszyny wirtualnej przez przełączenie jej do trybu failover na platformę Azure.

Diagram procesu migracji.

Usługi platformy Azure

Usługa Opis Koszty
Azure Migrate: migracja serwera Usługa organizuje migrację aplikacji i obciążeń lokalnych oraz usług Amazon Web Services (AWS) i Google Cloud Platform (GCP). Podczas replikacji na platformę Azure naliczane są opłaty za usługę Azure Storage. Maszyny wirtualne platformy Azure są tworzone i naliczane są opłaty w przypadku migracji. Dowiedz się więcej o opłatach i cenach.

Wymagania wstępne

W tym scenariuszu firma Contoso potrzebuje następujących elementów.

Wymagania Szczegóły
Subskrypcja platformy Azure Firma Contoso utworzyła subskrypcje we wcześniejszym artykule z tej serii. Jeśli nie masz subskrypcji platformy Azure, utwórz bezpłatne konto.

Jeśli bezpłatne konto właśnie zostało utworzone, jesteś administratorem subskrypcji i możesz wykonywać wszystkie akcje.

Jeśli używasz istniejącej subskrypcji i nie jesteś administratorem, skontaktuj się z administratorem, aby przypisać Ci uprawnienia właściciela lub współautora.

Jeśli potrzebujesz bardziej szczegółowych uprawnień, zobacz Zarządzanie dostępem Site Recovery za pomocą kontroli dostępu opartej na rolach (RBAC) platformy Azure.
Infrastruktura platformy Azure Dowiedz się, jak firma Contoso skonfigurowała infrastrukturę platformy Azure.

Dowiedz się więcej o określonych wymaganiach wstępnych dotyczących usługi Azure Migrate: Migracja serwera.
Serwery lokalne Lokalny serwer vCenter powinien działać w wersji 5.5, 6.0 lub 6.5.

Host ESXi z wersją 5.5, 6.0 lub 6.5.

Co najmniej jedna maszyna wirtualna programu VMware uruchomiona na hoście ESXi.
Lokalne maszyny wirtualne Przejrzyj dystrybucje systemu Linux zatwierdzone do uruchamiania na platformie Azure.

Etapy scenariusza

Firma Contoso przeprowadzi migrację w następujący sposób:

  • Krok 1. Przygotowanie platformy Azure do usługi Azure Migrate: migracja serwera. Dodaj narzędzie Azure Migrate: Server Migration do projektu usługi Azure Migrate.
  • Krok 2. Przygotowanie lokalnego oprogramowania VMware do usługi Azure Migrate: migracja serwera. Przygotuj konta do odnajdywania maszyn wirtualnych i przygotuj się do nawiązania połączenia z maszynami wirtualnymi platformy Azure po migracji.
  • Krok 3. Replikowanie maszyn wirtualnych. Skonfiguruj replikację i rozpocznij replikowanie maszyn wirtualnych do usługi Azure Storage.
  • Krok 4. Migrowanie maszyn wirtualnych za pomocą usługi Azure Migrate: migracja serwera. Uruchom migrację testową, aby upewnić się, że wszystko działa, a następnie uruchom migrację, aby przenieść maszyny wirtualne na platformę Azure.

Krok 1. Przygotowanie platformy Azure do usługi Azure Migrate: narzędzie do migracji serwera

Oto składniki platformy Azure, których firma Contoso potrzebuje do zmigrowania maszyn wirtualnych na platformę Azure:

  • Sieć wirtualna, w której będą znajdować się maszyny wirtualne platformy Azure podczas migracji.
  • Zainicjowano aprowizację narzędzia Azure Migrate: Server Migration.

Konfigurują te składniki w następujący sposób:

  1. Konfigurowanie sieci. Firma Contoso już skonfigurowała sieć, która może być używana na potrzeby usługi Azure Migrate: Migracja serwera po wdrożeniu infrastruktury platformy Azure przez firmę

    • Aplikacja SmartHotel360 jest aplikacją produkcyjną. Maszyny wirtualne zostaną zmigrowane do sieci produkcyjnej platformy Azure (VNET-PROD-EUS2) w regionie podstawowym (East US 2).
    • Obie maszyny wirtualne zostaną umieszczone w ContosoRG grupie zasobów, która jest używana dla zasobów produkcyjnych.
    • Maszyna wirtualna frontonu aplikacji (OSTICKETWEB) przeprowadzi migrację do podsieci frontonu (PROD-FE-EUS2) w sieci produkcyjnej.
    • Maszyna wirtualna bazy danych aplikacji (OSTICKETMYSQL) zostanie zmigrowana do podsieci bazy danych (PROD-DB-EUS2) w sieci produkcyjnej.
  2. Aprowizuj narzędzie Azure Migrate: Server Migration. Po utworzeniu konta sieciowego i magazynu firma Contoso tworzy teraz magazyn usługi Recovery Services (ContosoMigrationVault) i umieszcza go w ContosoFailoverRG grupie zasobów w regionie podstawowym (East US 2).

    Zrzut ekranu przedstawiający narzędzie Azure Migrate: Server Migration

Potrzebujesz dodatkowej pomocy?

Dowiedz się, jak skonfigurować narzędzie Azure Migrate: Server Migration.

Krok 2. Przygotowanie lokalnego oprogramowania VMware do usługi Azure Migrate: migracja serwera

Po migracji na platformę Azure firma Contoso chce mieć możliwość nawiązania połączenia z replikowanymi maszynami wirtualnymi na platformie Azure. Istnieje kilka rzeczy, które muszą wykonać administratorzy firmy Contoso:

  • Aby mieć dostęp do maszyn wirtualnych platformy Azure za pośrednictwem Internetu, muszą włączyć protokół SSH na lokalnych maszynach wirtualnych systemu Linux przed migracją. W przypadku systemu Ubuntu ten krok można wykonać przy użyciu następującego polecenia: sudo apt-get ssh install -y.
  • Instalowanie agenta platformy Azure z systemem Linux
  • Po uruchomieniu migracji mogą sprawdzić diagnostykę rozruchu , aby wyświetlić zrzut ekranu maszyny wirtualnej.
  • Jeśli to nie zadziała, należy sprawdzić, czy maszyna wirtualna jest uruchomiona i zapoznaj się z tymi wskazówkami dotyczącymi rozwiązywania problemów.

Potrzebujesz dodatkowej pomocy?

Dowiedz się, jak przygotować maszyny wirtualne do migracji.

Krok 3. Replikowanie lokalnych maszyn wirtualnych

Przed uruchomieniem migracji na platformę Azure administratorzy firmy Contoso muszą skonfigurować i włączyć replikację.

Po zakończeniu odnajdywania rozpocznij replikację maszyn wirtualnych VMware na platformę Azure.

  1. W projekcie usługi Azure Migrate przejdź do pozycji Serwery>Azure Migrate: Migracja serwera i wybierz pozycję Replikuj.

    Zrzut ekranu przedstawiający opcję Replikuj.

  2. W obszarze Replikuj>ustawienia> źródłaCzy maszyny są zwirtualizowane?, wybierz pozycję Tak, z programem VMware vSphere.

  3. W urządzeniu lokalnym wybierz nazwę skonfigurowanego urządzenia usługi Azure Migrate, a następnie wybierz przycisk OK.

    Zrzut ekranu przedstawiający kartę Ustawienia źródła.

  4. W obszarze Maszyny wirtualne wybierz maszyny wirtualne, które mają być replikowane.

    • Jeśli przeprowadzasz ocenę dla maszyn wirtualnych, możesz zastosować rekomendacje dotyczące rozmiarów maszyn wirtualnych i typów dysków (Premium/standardowy) w wynikach oceny. W obszarze Importowanie ustawień migracji z oceny usługi Azure Migrate? wybierz opcję Tak .
    • Jeśli nie uruchomiono oceny lub nie chcesz używać ustawień oceny, wybierz opcję Nie .
    • Jeśli wybrano opcję korzystania z oceny, wybierz grupę maszyn wirtualnych i nazwę oceny.

    Zrzut ekranu przedstawiający wybieranie ocen.

  5. W obszarze Maszyny wirtualne wyszukaj maszyny wirtualne zgodnie z potrzebami i wybierz każdą maszynę wirtualną, którą chcesz przeprowadzić migrację. Następnie wybierz pozycję Dalej: Ustawienia docelowe.

  6. W obszarze Ustawienia docelowe wybierz subskrypcję i region docelowy, do którego nastąpi migracja. Określ grupę zasobów, w której będą znajdować się maszyny wirtualne platformy Azure po migracji. W Virtual Network wybierz sieć wirtualną/podsieć platformy Azure, do której maszyny wirtualne platformy Azure zostaną dołączone po migracji.

  7. W obszarze Korzyść użycia hybrydowego platformy Azure:

    • Wybierz pozycję Nie, jeśli nie chcesz stosować korzyści użycia hybrydowego platformy Azure. Następnie wybierz przycisk Dalej.
    • Wybierz pozycję Tak , jeśli masz maszyny z systemem Windows Server objęte aktywnym pakietem Software Assurance lub subskrypcjami systemu Windows Server i chcesz zastosować korzyść dla migrujących maszyn. Następnie wybierz przycisk Dalej.
  8. W obszarze Obliczenia sprawdź nazwę, rozmiar, typ dysku systemu operacyjnego i zestaw dostępności maszyny wirtualnej. Maszyny wirtualne muszą być zgodne z wymaganiami platformy Azure.

    • Rozmiar maszyny wirtualnej: Jeśli używasz zaleceń dotyczących oceny, lista rozwijana rozmiaru maszyny wirtualnej będzie zawierać zalecany rozmiar. W przeciwnym razie usługa Azure Migrate wybiera rozmiar na podstawie najbliższego dopasowania w subskrypcji platformy Azure. Alternatywnie możesz wybrać rozmiar ręczny w obszarze rozmiaru maszyny wirtualnej platformy Azure.
    • Dysk systemu operacyjnego: Określ dysk systemu operacyjnego (rozruch) dla maszyny wirtualnej. Dysk systemu operacyjnego to dysk, na którym jest zainstalowany program ładujący i instalator systemu operacyjnego.
    • Zestaw dostępności: Jeśli maszyna wirtualna powinna znajdować się w zestawie dostępności platformy Azure po migracji, określ zestaw. Zestaw musi znajdować się w docelowej grupie zasobów określonej dla migracji.
  9. W obszarze Dyski określ, czy dyski maszyn wirtualnych powinny być replikowane na platformę Azure. Wybierz typ dysku (SSD/HDD w warstwie Standardowa lub SSD w warstwie Premium) na platformie Azure. Następnie wybierz przycisk Dalej.

    • Dyski można wykluczyć z replikacji.
    • Jeśli wykluczysz dyski, nie będą one obecne na maszynie wirtualnej platformy Azure po migracji.
  10. W obszarze Przeglądanie i uruchamianie replikacji przejrzyj ustawienia. Następnie wybierz pozycję Replikuj , aby rozpocząć replikację początkową dla serwerów.

Uwaga

Ustawienia replikacji można zaktualizować w dowolnym momencie przed rozpoczęciem replikacji w obszarze Zarządzanie maszynami>replikowania. Ustawień nie można zmienić po rozpoczęciu replikacji.

Krok 4. Migrowanie maszyn wirtualnych

Administratorzy firmy Contoso uruchamiają szybką migrację testową, a następnie migrację w celu przeniesienia maszyn wirtualnych.

Uruchamianie migracji testowej

  1. Wobszarze Cele>migracjiSerwery >usługi Azure Migrate: Migracja serwera wybierz pozycję Testuj zmigrowane serwery.

    Zrzut ekranu przedstawiający opcję Test zmigrowanych serwerów.

  2. Wybierz i przytrzymaj (lub kliknij prawym przyciskiem myszy) maszynę wirtualną do przetestowania. Następnie wybierz pozycję Testuj migrację.

    Zrzut ekranu przedstawiający element Migracja testowa.

  3. W obszarze Migracja testowa wybierz sieć wirtualną platformy Azure, w której maszyna wirtualna platformy Azure zostanie zlokalizowana po migracji. Zalecamy użycie sieci wirtualnej nieprodukcyjnej.

  4. Zostanie uruchomione zadanie Testowanie migracji. Monitoruj zadanie w powiadomieniach portalu.

  5. Po zakończeniu migracji sprawdź zmigrowane maszyny wirtualne platformy Azure w obszarze Maszyny wirtualne w witrynie Azure Portal. Nazwa maszyny ma sufiks -Test.

  6. Po zakończeniu testu wybierz i przytrzymaj (lub kliknij prawym przyciskiem myszy) maszynę wirtualną platformy Azure na maszynach replikujących. Następnie wybierz pozycję Wyczyść migrację testu.

    Zrzut ekranu przedstawiający element migracji testu czyszczenia.

Migrowanie maszyn wirtualnych

Teraz administratorzy firmy Contoso uruchamiają pełną migrację, aby ukończyć przenoszenie.

  1. W projekcie usługi Azure Migrate przejdź do pozycji Serwery>Azure Migrate: Migracja serwera i wybierz pozycję Serwery replikujące.

    Zrzut ekranu przedstawiający opcję Serwery replikowania.

  2. W obszarze Replikowanie maszyn wybierz i przytrzymaj (lub kliknij prawym przyciskiem myszy) maszynę wirtualną i wybierz pozycję Migruj.

  3. W obszarze Migrowanie>zamknij maszyny wirtualne i przeprowadź planowaną migrację bez utraty danych, wybierz przycisk Tak>OK.

    • Domyślnie usługa Azure Migrate zamyka lokalną maszynę wirtualną i uruchamia replikację na żądanie, aby zsynchronizować wszelkie zmiany maszyn wirtualnych, które wystąpiły od czasu ostatniej replikacji. Ta akcja gwarantuje brak utraty danych.
    • Jeśli nie chcesz zamknąć maszyny wirtualnej, wybierz pozycję Nie.
  4. Zostanie uruchomione zadanie migracji maszyny wirtualnej. Śledź zadanie w powiadomieniach platformy Azure.

  5. Po zakończeniu zadania możesz wyświetlić maszynę wirtualną i zarządzać nią na stronie Maszyny wirtualne.

Łączenie maszyny wirtualnej z bazą danych

W ostatnim kroku procesu migracji administratorzy firmy Contoso aktualizują parametry połączenia aplikacji, aby wskazywały bazę danych aplikacji uruchomioną na maszynie OSTICKETMYSQL wirtualnej.

  1. Nawiązywanie połączenia SSH z maszyną wirtualną OSTICKETWEB przy użyciu programu PuTTY lub innego klienta SSH. Maszyna wirtualna jest prywatna, więc nawiąż połączenie przy użyciu prywatnego adresu IP.

    Zrzut ekranu przedstawiający okienko Łączenie z maszyną wirtualną.

    Zrzut ekranu przedstawiający połączenie z bazą danych.

  2. Upewnij się, że maszyna wirtualna OSTICKETWEB może komunikować się z maszyną wirtualną OSTICKETMYSQL . Obecnie konfiguracja jest zakodowana na stałe przy użyciu lokalnego adresu 172.16.0.43IP .

    Przed aktualizacją:

    Zrzut ekranu przedstawiający adres IP przed aktualizacją.

    Po aktualizacji:

    Zrzut ekranu przedstawiający adres IP po aktualizacji.

  3. Uruchom ponownie usługę za pomocą polecenia systemctl restart apache2.

    Zrzut ekranu przedstawiający ponowne uruchomienie usługi.

  4. Na koniec zaktualizuj rekordy DNS dla OSTICKETWEB i OSTICKETMYSQL na jednym z kontrolerów domeny Contoso.

    Zrzut ekranu przedstawiający aktualizowanie rekordu DNS.

    Zrzut ekranu przedstawiający aktualizowanie rekordu DNS.

Potrzebujesz dodatkowej pomocy?

Czyszczenie zasobów po migracji

Po zakończeniu migracji warstwy aplikacji osTicket są teraz uruchomione na maszynach wirtualnych platformy Azure.

Teraz firma Contoso musi wykonać następujące zadania:

  • Usunięcie lokalnych maszyn wirtualnych ze spisu serwera vCenter.
  • Usunięcie lokalnych maszyn wirtualnych z lokalnych zadań kopii zapasowej.
  • Zaktualizuj wewnętrzną dokumentację, aby wyświetlić nową lokalizację i adresy IP dla OSTICKETWEB i OSTICKETMYSQL.
  • Przejrzyj wszystkie zasoby, które wchodzą w interakcje z maszynami wirtualnymi. Zaktualizować odpowiednie ustawienia lub dokumentację, aby odzwierciedlić nową konfigurację.
  • Firma Contoso użyła usługi Azure Migrate z maszyną wirtualną zarządzania do oceny maszyn wirtualnych na potrzeby migracji. Administratorzy powinni usunąć maszynę wirtualną migracji i maszyny wirtualne internetowe z serwera VMware ESXi.

Przegląd wdrożenia

Po uruchomieniu aplikacji firma Contoso musi w pełni zoperacjonalizować i zabezpieczyć nową infrastrukturę.

Zabezpieczenia

Zespół ds. zabezpieczeń firmy Contoso przegląda maszyny OSTICKETWEB wirtualne i OSTICKETMYSQL w celu określenia wszelkich problemów z zabezpieczeniami.

  • Zespół przegląda sieciowe grupy zabezpieczeń używane do kontroli dostępu do maszyn wirtualnych. Sieciowe grupy zabezpieczeń zapewniają, że do aplikacji będzie przekazywany tylko dozwolony ruch.
  • Zespół rozważa również zabezpieczenie danych na dyskach maszyn wirtualnych przy użyciu usługi Azure Disk Encryption i usługi Azure Key Vault.

Aby uzyskać więcej informacji, zobacz Security best practices for IaaS workloads in Azure (Najlepsze rozwiązania dotyczące zabezpieczeń obciążeń IaaS na platformie Azure).

Ciągłość działania i odzyskiwanie po awarii

W celu zapewnienia ciągłości działania i odzyskiwania po awarii firma Contoso podejmuje następujące działania:

Licencjonowanie i optymalizacja kosztów