Migracja lokalnego systemu AIX z systemem UNIX na platformę Azure z systemem Linux
W tym rozwiązaniu opisano migrację z platformy IBM AIX Unix do systemu Red Hat Enterprise Linux (RHEL) na platformie Azure. Rzeczywistym przykładem była aplikacja Health and Human Services dla dużego klienta. Niski czas transakcji i opóźnienie były ważnymi wymaganiami zarówno dla starszych, jak i systemów platformy Azure. Kluczową funkcją jest przechowywanie informacji o klientach w bazie danych, która łączy się z sieciowym magazynem plików zawierającym powiązane obrazy graficzne. Platforma Azure rozwiązuje tę potrzebę w usłudze Azure NetApp Files.
Architektura
Na poniższym diagramie przedstawiono wstępnie migrację lokalnej architektury systemu AIX w starszej wersji:
Pobierz plik programu Visio z tą architekturą.
Urządzenia sieciowe zapewniają rozbudowany routing sieciowy i warstwę równoważenia obciążenia (A).
Warstwa prezentacji (B) używa trzech maszyn frontonu internetowego Java we własnej podsieci, która segmentuje ruch sieciowy przez zapory.
Zapory (C) zapewniają granice sieci między wszystkimi uczestniczącymi warstwami i podsystemami. Chociaż zapory są skuteczne, stanowią one również obciążenie administracyjne.
System udostępnia żądania użytkowników do warstwy aplikacji (D), która ma trzy serwery aplikacji internetowych.
Warstwa aplikacji wywołuje bazę danych DB2 i magazyn dołączony do sieci (NAS):
Baza danych (E) to DB2 w systemie AIX. Trzy serwery DB2 są skonfigurowane w klastrze wysokiej dostępności/odzyskiwania po awarii (HA/DR).
Aplikacja przechowuje obiekty binarne, takie jak obrazy i pliki PDF dla klientów i użytkowników w podsystemie NAS (F).
Serwery zarządzania i administracji oraz serwery MQ (G) znajdują się we własnej podsieci podzielonej przez zapory.
Usługi zarządzania tożsamościami (H) lightweight Directory Access Protocol (LDAP) znajdują się we własnej podsieci podzielonej na segmenty przez zapory.
Na poniższym diagramie przedstawiono architekturę systemu po migracji systemu Azure RHEL:
Pobierz plik programu Visio z tą architekturą.
Przepływ danych
Ruch do tras systemowych platformy Azure za pośrednictwem usług Azure ExpressRoute i Azure Traffic Manager:
- Usługa ExpressRoute zapewnia bezpieczne, niezawodne prywatne połączenie z sieciami wirtualnymi platformy Azure. Usługa ExpressRoute łączy się z platformą Azure z małymi opóźnieniami, wysoką niezawodnością i szybkością oraz przepustowością do 100 Gb/s.
- Usługa Traffic Manager dystrybuuje publiczny ruch aplikacji w różnych regionach świadczenia usługi Azure.
Warstwa zarządzania siecią zapewnia zabezpieczenia punktu końcowego, routing i usługi równoważenia obciążenia. Ta warstwa korzysta z usługi Azure Load Balancer i usługi Azure Web Application Firewall.
usługa aplikacja systemu Azure służy jako warstwa prezentacji. App Service to warstwa typu "platforma jako usługa" (PaaS) dla aplikacji .NET lub Java. Usługę App Service można skonfigurować pod kątem dostępności i skalowalności w obrębie i w różnych regionach świadczenia usługi Azure.
Rozwiązanie hermetyzuje każdą warstwę aplikacji we własnej sieci wirtualnej, podzielone na segmenty z sieciowymi grupami zabezpieczeń.
Zestawy dostępności i współużytkowana usługa Azure Storage zapewniają wysoką dostępność i skalowalność dla maszyn wirtualnych na poziomie warstwy aplikacji. Serwery klastra aplikacji współużytkuje stan transakcji i w razie potrzeby skaluj maszyny wirtualne w górę.
Aplikacja używa prywatnego połączenia punktu końcowego do przechowywania danych i uzyskiwania dostępu do danych w usłudze Azure SQL Database. Usługa SQL Database działa w konfiguracji ciągłości działania, która zapewnia replikację geograficzną i grupy automatycznego trybu failover na potrzeby automatycznej i między geograficznej trasy BCDR.
Usługa Azure NetApp Files zapewnia udostępniony serwer NAS z szybkim dostępem do danych binarnych i replikacji do regionu pomocniczego.
Region pomocniczy udostępnia trasę BCDR z następującymi składnikami:
- Usługa Azure Site Recovery tworzy kopie zapasowe obrazów maszyn wirtualnych na potrzeby trybu failover odzyskiwania po awarii w konfiguracji aktywne-pasywne. Usługa Site Recovery tworzy spójne repliki obrazów maszyn wirtualnych w regionie pomocniczym i przechowuje obrazy maszyn wirtualnych w synchronizacji.
- Konfiguracja ciągłości działania usługi SQL Database zapewnia spójność transakcji bazy danych. Usługa SQL Database aprowizuje bazy danych repliki i przechowuje je w synchronizacji z replikacją danych synchronicznych lub asynchronicznych.
System zawiera również następujące składniki:
Co najmniej jedna maszyna wirtualna w sieci wirtualnej Zarządzanie zapewnia funkcje zarządzania i administracji.
Usługa Azure Service Bus implementuje infrastrukturę serii MQ i udostępnia usługi kolejek komunikatów dla aplikacji. Aby uzyskać więcej informacji na temat migrowania z serii MQ do usługi Azure Service Bus, zobacz Migrowanie z usługi ActiveMQ do usługi Azure Service Bus.
Identyfikator Entra firmy Microsoft zapewnia zarządzanie tożsamościami i dostępem dla wszystkich jednostek i tożsamości platformy Azure migrowanych ze starszych usług LDAP.
Składniki
Azure ExpressRoute to usługa, która rozszerza sieć lokalną na usługi w chmurze firmy Microsoft za pośrednictwem połączenia prywatnego, które ułatwia dostawca łączności. W tej architekturze usługa ExpressRoute zapewnia bezpieczne, niezawodne prywatne połączenie z systemem Azure z małym opóźnieniem i dużą szybkością i przepustowością.
Usługa Azure Traffic Manager to oparty na systemie nazw domen (DNS) moduł równoważenia obciążenia ruchu, który dystrybuuje ruch między regionami świadczenia usługi Azure. W tej architekturze usługa Traffic Manager dystrybuuje publiczny ruch aplikacji w regionach świadczenia usługi Azure z wysoką dostępnością i szybkim czasem reakcji.
Usługa Azure Load Balancer obsługuje wysoką dostępność, dystrybuując przychodzący ruch sieciowy między maszyny wirtualne zaplecza zgodnie ze skonfigurowanymi regułami równoważenia obciążenia i sondami kondycji. Moduł równoważenia obciążenia działa w warstwie 4 modelu Open SystemsConnect (OSI). W tej architekturze usługa Load Balancer współpracuje z usługą Azure Web Application Firewall w celu zapewnienia warstwy zarządzania siecią, która zastępuje starsze urządzenia sieciowe.
Usługa Azure Web Application Firewall to natywna dla chmury usługa, która chroni aplikacje internetowe przed złośliwymi atakami i lukami w zabezpieczeniach. W tej architekturze zapewnia zabezpieczenia i ochronę punktu końcowego oraz zastępuje wiele zapór segmentujących ruch sieciowy w starszym systemie AIX.
Azure App Service to w pełni zarządzana usługa hostingu internetowego służąca do wdrażania aplikacji internetowych dla przedsiębiorstw dla dowolnej platformy w skalowalnej i niezawodnej infrastrukturze w chmurze. W tej architekturze usługa App Service działa jako warstwa prezentacji. Zastępuje ona maszyny frontonu internetowego Java i udostępnia funkcje PAAS dla aplikacji platformy .NET lub Java.
Azure Virtual Machines to usługa, która zapewnia skalowalne zasoby obliczeniowe na żądanie. Maszyny wirtualne zapewniają elastyczność wirtualizacji bez konieczności kupowania i konserwacji sprzętu fizycznego. W tej architekturze usługa hostuje serwery warstwy aplikacji w zestawach dostępności, które mają udostępniony magazyn.
- Dyski zarządzane dysków półprzewodnikowych platformy Azure (SSD) to woluminy magazynu na poziomie bloku dla maszyn wirtualnych platformy Azure.
- Karty interfejsu sieciowego platformy Azure umożliwiają maszynom wirtualnym platformy Azure komunikację z Internetem, platformą Azure i zasobami lokalnymi. Do maszyny wirtualnej platformy Azure można dodać kilka wirtualnych kart sieciowych, aby podrzędne maszyny wirtualne mogły mieć własne dedykowane urządzenia i adresy IP interfejsu sieciowego.
Usługa Azure Virtual Network jest podstawą sieci prywatnych platformy Azure. Usługa Virtual Network zapewnia korzyści z infrastruktury platformy Azure, takie jak skalowalność, dostępność i izolacja. W tej architekturze usługa Virtual Network umożliwia zasobom platformy Azure, takim jak maszyny wirtualne, bezpieczne komunikowanie się ze sobą, Internetem i sieciami lokalnymi.
Usługa Azure Files udostępnia w pełni zarządzane udziały plików w chmurze, do których można uzyskać dostęp za pośrednictwem standardowego protokołu SMB (Server Message Block). Wdrożenia w chmurze i lokalnych systemach Windows, Linux i macOS mogą instalować współbieżnie udziały plików platformy Azure. W tej architekturze usługa Azure Files zapewnia funkcje magazynu plików udostępnionych w ramach ogólnej strategii magazynowania dla migrowanej aplikacji.
Usługa Azure SQL Database to w pełni zarządzana baza danych PaaS, która zawsze działa w najnowszym systemie operacyjnym i najbardziej stabilnej wersji aparatu bazy danych programu SQL Server w celu zapewnienia najwyższej dostępności. W tej architekturze usługa SQL Database obsługuje funkcje zarządzania bazami danych, takie jak uaktualnienia, poprawki, kopie zapasowe i monitorowanie, bez udziału użytkownika.
Usługa Azure NetApp Files udostępnia udziały plików klasy korporacyjnej platformy Azure obsługiwane przez usługę NetApp. Ta architektura korzysta z usługi Azure NetApp Files, aby ułatwić przedsiębiorstwom łatwe migrowanie i uruchamianie złożonych aplikacji opartych na plikach bez wprowadzania zmian w kodzie.
Azure Site Recovery to natywna usługa odzyskiwania po awarii platformy Azure. W tej architekturze usługa Site Recovery wdraża procesy replikacji, trybu failover i odzyskiwania, aby ułatwić działanie aplikacji podczas planowanych i nieplanowanych awarii.
Usługa Azure Service Bus to niezawodna usługa obsługi komunikatów w chmurze z prostą integracją hybrydową. W tej architekturze usługa Service Bus udostępnia usługi kolejki komunikatów dla aplikacji.
Microsoft Entra ID to oparta na chmurze usługa zarządzania tożsamościami i dostępem przedsiębiorstwa firmy Microsoft. W tej architekturze firma Microsoft Entra z logowaniem jednokrotnym i uwierzytelnianiem wieloskładnikowym pomaga użytkownikom logować się i uzyskiwać dostęp do zasobów, zapewniając jednocześnie ochronę przed atakami cyberbezpieczeństwa.
Alternatywy
aplikacja systemu Azure środowiska usługi są odpowiednie dla obciążeń aplikacji, które wymagają wysokiej skali, izolacji i bezpiecznego dostępu do sieci. Ta funkcja oferuje w pełni izolowane i dedykowane środowiska do bezpiecznego uruchamiania aplikacji usługi App Service na dużą skalę. Środowiska usługi App Service mogą hostować następujące typy aplikacji:
- Aplikacje internetowe systemu Linux, jak w bieżącym przykładzie
- Aplikacji internetowych systemu Windows
- Kontenery platformy Docker
- Aplikacje mobilne
- Functions
Szczegóły scenariusza
Jedną odrębną różnicą między starszym systemem a implementacją chmury jest obsługa segmentacji sieci. Starsze sieci podzielone na segmenty systemu z zaporami. Platforma w chmurze, taka jak sieci platformy Azure z sieciami wirtualnymi i sieciowymi grupami zabezpieczeń, która filtruje ruch na podstawie kilku kryteriów.
Kolejną różnicą między systemami jest ich wysoka dostępność (HA) i modele odzyskiwania po awarii (DR). W starszym systemie funkcja wysokiej dostępności/odzyskiwania po awarii używała głównie kopii zapasowych i w pewnym stopniu używanych nadmiarowych serwerów w tym samym centrum danych. Ta konfiguracja zapewniała skromne odzyskiwanie po awarii, ale prawie nie ma możliwości wysokiej dostępności. Poprawa wysokiej dostępności/odzyskiwania po awarii była kluczowym czynnikiem umożliwiającym przejście na platformę Azure. Platforma Azure używa klastrowania, magazynu udostępnionego i usługi Azure Site Recovery w celu zapewnienia wysokiego poziomu wysokiej dostępności/odzyskiwania po awarii.
Potencjalne przypadki użycia
Kluczowe czynniki związane z przejściem z lokalnego systemu IBM AIX do systemu RHEL na platformie Azure mogą obejmować następujące czynniki:
Zaktualizowano sprzęt i obniżono koszty. W środowisku lokalnym starsze składniki sprzętowe są stale nieaktualne i nieaktualne. Składniki chmury są zawsze aktualne. Koszty od miesiąca do miesiąca mogą być mniejsze w chmurze.
Środowisko Agile DevOps. Wdrażanie zmian zgodności w lokalnym środowisku AIX może potrwać kilka tygodni. Może być konieczne wiele razy skonfigurowanie podobnych środowisk inżynierii wydajności w celu przetestowania zmian. W środowisku chmury platformy Azure możesz skonfigurować testowanie akceptacyjne użytkowników i środowiska programistyczne w godzinach. Zmiany można implementować za pomocą nowoczesnego, dobrze zdefiniowanego potoku ciągłej integracji i ciągłego dostarczania (CI/CD).
Ulepszona ciągłość działania i odzyskiwanie po awarii (BCDR). W środowiskach lokalnych cele czasu odzyskiwania (RTO) mogą być długie. W przykładowym lokalnym środowisku AIX cel czasu odzyskiwania za pośrednictwem tradycyjnych kopii zapasowych i przywracania wynosił dwa dni. Migracja na platformę Azure zmniejszyła cel czasu odzyskiwania do dwóch godzin.
Kwestie wymagające rozważenia
Te zagadnienia obejmują implementację filarów platformy Azure Well-Architected Framework, która jest zestawem wytycznych, które mogą służyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Microsoft Azure Well-Architected Framework.
Niezawodność
Niezawodność zapewnia, że aplikacja może spełnić zobowiązania podjęte przez klientów. Aby uzyskać więcej informacji, zobacz
Usługa Azure NetApp Files może przechowywać magazyn plików w regionie pomocniczym zaktualizowany przy użyciu replikacji między regionami woluminów usługi Azure NetApp Files. Ta funkcja platformy Azure zapewnia ochronę danych za pośrednictwem replikacji woluminów między regionami. W przypadku awarii w całym regionie można przejąć krytyczne aplikacje w trybie failover. Replikacja woluminów między regionami jest obecnie dostępna w wersji zapoznawczej.
Serwery klastra aplikacji skaluj w górę maszyny wirtualne w razie potrzeby, co zwiększa dostępność w regionach świadczenia usługi Azure.
Zabezpieczenia
Zabezpieczenia zapewniają ochronę przed celowymi atakami i nadużyciami cennych danych i systemów. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotyczącazabezpieczeń.
To rozwiązanie używa sieciowych grup zabezpieczeń platformy Azure do zarządzania ruchem między zasobami platformy Azure. Aby uzyskać więcej informacji, zobacz Sieciowe grupy zabezpieczeń.
Postępuj zgodnie z najlepszymi rozwiązaniami dotyczącymi zabezpieczeń sieci, jak to możliwe.
W przypadku zabezpieczeń maszyn wirtualnych lub infrastruktury jako usługi (IaaS) postępuj zgodnie z najlepszymi rozwiązaniami dotyczącymi zabezpieczeń obciążeń IaaS na platformie Azure.
Optymalizacja kosztów
Optymalizacja kosztów dotyczy sposobów zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dlaoptymalizacji kosztów.
Migrowanie obciążeń AIX do systemu Linux na platformie Azure może przynieść znaczne oszczędności kosztów. Można wyeliminować konserwację sprzętu, zmniejszyć koszty instalacji i zwykle zmniejszyć koszty operacyjne o współczynnik od ośmiu do 10. Platforma Azure może pomieścić dodatkową pojemność dla obciążeń sezonowych lub okresowych w razie potrzeby, co zmniejsza całkowity koszt.
Migrowanie obciążeń AIX na platformę Azure może również obniżyć koszty przy użyciu usług natywnych dla chmury. Oto kilka przykładów:
- Używanie usługi aplikacja systemu Azure dla warstwy prezentacji zamiast konfigurowania wielu maszyn wirtualnych.
- Segmentowanie obciążeń za pomocą sieci wirtualnych platformy Azure zamiast używania zapór opartych na sprzęcie.
Doskonałość operacyjna
Doskonałość operacyjna obejmuje procesy operacyjne, które wdrażają aplikację i działają w środowisku produkcyjnym. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca doskonałości operacyjnej.
W celu proaktywnego monitorowania i zarządzania rozważ użycie usługi Azure Monitor do monitorowania zmigrowanych obciążeń AIX.
Wydajność
Wydajność to możliwość skalowania obciążenia w celu spełnienia wymagań, które są na nim nakładane przez użytkowników w wydajny sposób. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu pod kątem wydajności.
Usługa Azure ExpressRoute obsługuje wysoką skalę w przypadku implementacji korzystających ze znacznej przepustowości na potrzeby replikacji początkowej lub trwającej zmienionej replikacji danych.
Zarządzanie infrastrukturą, w tym skalowalność, jest zautomatyzowane w bazach danych platformy Azure.
Warstwę aplikacji można skalować w poziomie, dodając więcej wystąpień maszyn wirtualnych serwera aplikacji.
Potencjalne wąskie gardła w tej architekturze to podsystemy magazynowania i obliczeń. Pamiętaj, aby odpowiednio wybrać jednostki SKU magazynu i maszyny wirtualnej.
Dostępne typy dysków maszyn wirtualnych to dyski w warstwie Ultra, dyski SSD w warstwie Premium, dyski SSD w warstwie Standardowa i standardowe dyski twarde (HDD). W tym rozwiązaniu najlepiej używać dysków SSD w warstwie Premium lub dysków w warstwie Ultra.
Aby oszacować rozmiar maszyn wirtualnych pochodzących z systemu AIX, należy pamiętać, że procesory AIX są około 1,4 razy szybsze niż większość procesorów wirtualnych x86. Te wytyczne mogą się różnić w zależności od obciążenia.
Umieść wiele maszyn wirtualnych, które muszą komunikować się ze sobą w grupie umieszczania w pobliżu. Lokalizowanie maszyn wirtualnych blisko siebie zapewnia najmniejsze opóźnienie komunikacji.
Współautorzy
Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.
Główny autor:
- Jonathon Frost | Główny menedżer programu
Następne kroki
- Migrowanie obciążeń AIX na platformę Azure: podejścia i najlepsze rozwiązania.
- AIX to Red Hat Enterprise Linux Strategic Migration Planning Guide (Przewodnik planowania strategicznej migracji w systemie AIX do systemu Red Hat Enterprise Linux).
- Aby uzyskać więcej informacji, skontaktuj się z nami pod adresem legacy2azure@microsoft.com.