Przetwarzanie transakcji online ibm z/OS na platformie Azure

Azure Front Door
Azure Traffic Manager
Azure Kubernetes Service (AKS)
Azure Spring Apps
Azure Cache for Redis

Systemy przetwarzania transakcji online (OLTP) współdziałają bezpośrednio z użytkownikami i są twarzą firmy. Dzięki dynamicznie dostosowywanej infrastrukturze firmy mogą szybko realizować i uruchamiać swoje produkty, aby cieszyć się swoimi użytkownikami.

Architektura

Na poniższym diagramie przedstawiono architekturę obciążenia, który ma zostać zmigrowany, system OLTP uruchomiony na komputerze mainframe z/OS:

Architektura OLTP w systemie z/OS

Pobierz plik programu Visio z tą architekturą.

Przepływ pracy

Poniższy przepływ pracy odpowiada powyższemu diagramowi:

  1. Użytkownicy łączą się z komputerem mainframe za pośrednictwem protokołu TCP/IP przy użyciu standardowych protokołów mainframe, takich jak TN3270 i HTTPS.
  2. Menedżerowie transakcji wchodzą w interakcje z użytkownikami i wywołują aplikację w celu spełnienia żądań użytkowników.
  3. Na frontonie warstwy aplikacji użytkownicy wchodzą w interakcje z ekranami CICS/IMS lub ze stronami internetowymi.
  4. Menedżerowie transakcji używają logiki biznesowej napisanej w COBOL lub PL/1 do implementowania transakcji.
  5. Kod aplikacji korzysta z możliwości magazynowania warstwy danych, zazwyczaj DB2, IMS DB lub VSAM.
  6. Oprócz przetwarzania transakcji inne usługi zapewniają uwierzytelnianie, zabezpieczenia, zarządzanie, monitorowanie i raportowanie. Te usługi współdziałają ze wszystkimi innymi usługami w systemie.

W tym miejscu zobaczymy, jak przeprowadzić migrację tej architektury na platformę Azure.

Diagram przedstawiający architekturę migrowania obciążenia OLTP z/OS.

Pobierz plik programu Visio z tą architekturą.

  1. Użytkownicy komputera Mainframe znają terminale 3270 i łączność lokalną. W zmigrowanym systemie wchodzą w interakcje z aplikacjami platformy Azure za pośrednictwem publicznego Internetu lub za pośrednictwem połączenia prywatnego zaimplementowanego za pomocą usługi Azure ExpressRoute. Identyfikator Entra firmy Microsoft zapewnia uwierzytelnianie.

  2. Żądania wejściowe są kierowane do globalnej usługi równoważenia obciążenia, takiej jak Azure Front Door lub Azure Traffic Manager. Moduł równoważenia obciążenia może obsługiwać geograficznie rozłożoną bazę użytkowników. Kieruje żądania zgodnie z regułami zdefiniowanymi dla obsługiwanych obciążeń. Te moduły równoważenia obciążenia mogą koordynować aplikacja systemu Azure Gateway lub Azure Load Balancer w celu równoważenia obciążenia warstwy aplikacji. Usługa Azure Content Delivery Network buforuje zawartość statyczną na serwerach brzegowych w celu uzyskania szybkiej odpowiedzi zabezpieczonej przy użyciu usługi zapory aplikacji internetowej (WAF).

  3. Fronton warstwy aplikacji używa usług platformy Azure, takich jak aplikacja systemu Azure Service, do implementowania ekranów aplikacji i interakcji z użytkownikami. Ekrany są migrowane wersje ekranów mainframe.

  4. Kod COBOL i PL/1 w zapleczu warstwy aplikacji implementuje logikę biznesową. Kod może używać usług, takich jak Azure Functions, WebJobs i Azure Spring Apps mikrousługi. Aplikacje mogą być uruchamiane w kontenerze usługi Azure Kubernetes Service (AKS).

  5. Magazyn danych w pamięci przyspiesza aplikacje OLTP o wysokiej przepływności. Jednym z takich magazynów jest OLTP w pamięci, funkcja usługi Azure SQL Database i usługi Azure SQL Managed Instance. Innym jest usługa Azure Cache for Redis.

  6. Warstwa danych może obejmować na przykład:

    1. Pliki, tabele i obiekty blob zaimplementowane przy użyciu usług Azure Storage.
    2. Relacyjne bazy danych z rodziny azure SQL.
    3. Implementacje platformy Azure baz danych PostgreSQL i MySQL typu open source.
    4. Azure Cosmos DB — baza danych NoSQL.

    Te magazyny przechowują dane migrowane z komputera mainframe do użycia przez warstwę aplikacji.

  7. Usługi natywne platformy Azure, takie jak Application Szczegółowe informacje i Azure Monitor, aktywnie monitorują kondycję systemu. Dzienniki monitora można zintegrować przy użyciu pulpitu nawigacyjnego platformy Azure.

Składniki

Ta architektura składa się z kilku usług w chmurze platformy Azure i jest podzielona na cztery kategorie zasobów: sieć i tożsamość, aplikacja, magazyn i monitorowanie. Usługi dla każdej i ich ról opisano w poniższych sekcjach.

Sieć i tożsamość

  • Usługa Azure ExpressRoute łączy prywatne połączenia między infrastrukturą lokalną a centrami danych platformy Azure.
  • Microsoft Entra ID to usługa zarządzania tożsamościami i dostępem, która może synchronizować się z katalogiem lokalnym.
  • Usługa Azure Front Door zapewnia globalne równoważenie obciążenia HTTP z natychmiastowym trybem failover. Jego opcja buforowania może przyspieszyć dostarczanie zawartości statycznej.
  • Usługa Azure Traffic Manager kieruje przychodzące żądania DNS na podstawie wyboru metod routingu ruchu.
  • Usługa Azure Web Application Firewall pomaga chronić aplikacje internetowe przed złośliwymi atakami i typowymi lukami w zabezpieczeniach internetowych, takimi jak wstrzyknięcie kodu SQL i wykonywanie skryptów między witrynami.
  • Usługa Azure Content Delivery Network (CDN) buforuje zawartość statyczną na serwerach brzegowych w celu szybkiego reagowania i używa optymalizacji sieci w celu poprawy odpowiedzi na zawartość dynamiczną. Sieć CDN jest szczególnie przydatna, gdy baza użytkowników jest globalna.
  • aplikacja systemu Azure Gateway to usługa kontrolera dostarczania aplikacji. Działa w warstwie 7, warstwie aplikacji i ma różne możliwości równoważenia obciążenia.
  • Azure Load Balancer to moduł równoważenia obciążenia warstwy 4 (TCP, UDP). W tej architekturze zapewnia opcje równoważenia obciążenia dla aplikacji Spring Apps i AKS.

Aplikacja

  • Usługa Azure API Management obsługuje publikowanie, routing, zabezpieczanie, rejestrowanie i analizę interfejsów API. Możesz kontrolować sposób prezentowania i rozszerzania danych oraz do których aplikacji można uzyskiwać dostęp. Możesz ograniczyć dostęp do aplikacji lub zezwolić na dostęp innych firm.
  • aplikacja systemu Azure Service to w pełni zarządzana usługa do tworzenia, wdrażania i skalowania aplikacji internetowych. Aplikacje można tworzyć przy użyciu platform .NET, .NET Core, Node.js, Java, Python lub PHP. Aplikacje mogą działać w kontenerach lub w systemie Windows lub Linux. W ramach migracji komputera mainframe ekrany frontonu lub interfejs internetowy mogą być kodowane jako interfejsy API REST oparte na protokole HTTP. Mogą być segregowane zgodnie z aplikacją mainframe i mogą być bezstanowe do organizowania systemu opartego na mikrousługach.
  • Zadania WebJob to funkcja usługi aplikacja systemu Azure, która uruchamia program lub skrypt w tym samym wystąpieniu co aplikacja internetowa, aplikacja interfejsu API lub aplikacja mobilna. Zadanie internetowe może być dobrym wyborem do implementowania logiki programu do udostępniania i wielokrotnego użytku. Aby uzyskać informacje techniczne, zobacz Run background tasks with WebJobs in aplikacja systemu Azure Service (Uruchamianie zadań w tle za pomocą zadań WebJob w usłudze aplikacja systemu Azure Service).
  • Usługa Azure Kubernetes Service (AKS) to w pełni zarządzana usługa Kubernetes służąca do wdrażania konteneryzowanych aplikacji i zarządzania nimi. Usługa AKS upraszcza wdrażanie zarządzanego klastra usługi AKS na platformie Azure, odciążając obciążenie operacyjne na platformę Azure.
  • Azure Spring Apps to w pełni zarządzana usługa Spring, wspólnie utworzona i obsługiwana przez firmy Microsoft i VMware. Dzięki niej można łatwo wdrażać i uruchamiać mikrousługi Spring oraz zarządzać nimi oraz pisać aplikacje Spring przy użyciu języka Java lub .NET.
  • Usługa Azure Service Bus to niezawodna usługa obsługi komunikatów w chmurze na potrzeby prostej integracji hybrydowej. Kolejki usług Service Bus i Storage mogą łączyć fronton z logiką biznesową w zmigrowanym systemie.
  • Usługa Azure Functions udostępnia środowisko do uruchamiania małych fragmentów kodu nazywanych funkcjami bez konieczności ustanawiania infrastruktury aplikacji. Służy do przetwarzania zbiorczych danych, integrowania systemów, pracy z IoT oraz tworzenia prostych interfejsów API i mikrousług. Dzięki mikrousługom można tworzyć serwery, które łączą się z usługami platformy Azure i są zawsze aktualne.
  • Azure Cache for Redis to w pełni zarządzana usługa buforowania w pamięci do udostępniania danych i stanu między zasobami obliczeniowymi. Obejmuje ona zarówno usługę Redis (OSS Redis) typu open source, jak i produkt komercyjny z usługi Redis Labs (Redis Enterprise) jako usługę zarządzaną. Możesz zwiększyć wydajność aplikacji OLTP o wysokiej przepływności, projektując je pod kątem skalowania i używania magazynu danych w pamięci, takiego jak usługa Azure Cache for Redis.

Storage

Monitorowanie

  • Usługa Azure Monitor zbiera, analizuje i działa na danych osobowych z platformy Azure i środowisk lokalnych.
  • Log Analytics to narzędzie w witrynie Azure Portal służące do wykonywania zapytań dotyczących dzienników monitora przy użyciu zaawansowanego języka zapytań. Możesz pracować z wynikami zapytań interaktywnie lub używać ich z innymi funkcjami usługi Azure Monitor, takimi jak alerty zapytań dzienników lub skoroszyty. Aby uzyskać więcej informacji, zobacz Omówienie usługi Log Analytics w usłudze Azure Monitor.
  • Szczegółowe informacje aplikacji to funkcja Monitor, która zapewnia monitorowanie na poziomie kodu użycia, dostępności i wydajności aplikacji. Monitoruje aplikację, wykrywa anomalie aplikacji, takie jak przeciętna wydajność i błędy, i wysyła dane osobowe do witryny Azure Portal. Można również użyć Szczegółowe informacje aplikacji do rejestrowania, śledzenia rozproszonego i niestandardowych metryk aplikacji.
  • Alerty usługi Azure Monitor to funkcja monitora. Aby uzyskać więcej informacji, zobacz Tworzenie, wyświetlanie alertów metryk i zarządzanie nimi przy użyciu usługi Azure Monitor.

Szczegóły scenariusza

Dzięki stale zmieniającym się potrzebom biznesowym i danym aplikacje muszą tworzyć i skalować bez tworzenia problemów z infrastrukturą. W tym przykładowym obciążeniu pokazano, jak można migrować aplikację OLTP z/OS do bezpiecznego, skalowalnego i wysoce dostępnego systemu w chmurze przy użyciu usług PaaS (Platform as a Service). Taka migracja pomaga firmom w finansach, zdrowiu, ubezpieczeniach i sprzedaży detalicznej w celu zminimalizowania osi czasu dostarczania aplikacji i pomaga zmniejszyć koszty uruchamiania aplikacji.

Potencjalne przypadki użycia

Ta architektura jest idealna w przypadku obciążeń OLTP, które mają następujące cechy:

  • Obsługują one międzynarodową bazę użytkowników.
  • Ich użycie różni się znacznie w czasie, więc korzystają z elastycznego skalowania i cen opartych na użyciu.

Kwestie wymagające rozważenia

Te zagadnienia implementują filary struktury 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 Omówienie filaru niezawodności.

  • Tę architekturę OLTP można wdrożyć w wielu regionach i mieć warstwę danych replikowaną geograficznie.
  • Usługi bazy danych platformy Azure obsługują nadmiarowość strefy i mogą przejść w tryb failover do węzła pomocniczego, jeśli wystąpi awaria lub umożliwić wykonywanie działań konserwacyjnych.

Zabezpieczenia

Zabezpieczenia zapewniają ochronę przed celowymi atakami i nadużyciami cennych danych i systemów. Aby uzyskać więcej informacji, zobacz Omówienie filaru zabezpieczeń.

  • Usługa ExpressRoute tworzy prywatne połączenie z platformą Azure ze środowiska lokalnego. Można również użyć sieci VPN typu lokacja-lokacja.
  • Microsoft Entra ID może uwierzytelniać zasoby i kontrolować dostęp przy użyciu kontroli dostępu opartej na rolach platformy Azure.
  • Usługi baz danych w pomoc techniczna platformy Azure różnych opcji zabezpieczeń, takich jak szyfrowanie danych magazynowanych.
  • Aby uzyskać ogólne wskazówki dotyczące projektowania bezpiecznych rozwiązań, zobacz Omówienie filaru zabezpieczeń.

Optymalizacja kosztów

Optymalizacja kosztów dotyczy sposobów zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Aby uzyskać więcej informacji, zobacz Omówienie filaru optymalizacji kosztów.

Skorzystaj z kalkulatora cen platformy Azure, aby oszacować koszty implementacji.

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 Omówienie filaru doskonałości operacyjnej.

  • W tym scenariuszu do monitorowania kondycji zasobów platformy Azure są używane usługi Azure Monitor i application Szczegółowe informacje. Alerty można ustawić na potrzeby proaktywnego zarządzania.
  • Aby uzyskać wskazówki dotyczące odporności na platformie Azure, zobacz Projektowanie niezawodnych aplikacji platformy Azure.

Efektywność wydajności

Efektywność wydajności to możliwość skalowania obciążenia w celu zaspokojenia zapotrzebowania użytkowników w wydajny sposób. Aby uzyskać więcej informacji, zobacz Omówienie filaru wydajności.

  • Ta architektura korzysta z usług PaaS platformy Azure, takich jak App Service, które mają możliwości skalowania automatycznego.
  • Aby uzyskać wskazówki dotyczące skalowania automatycznego na platformie Azure, zobacz Autoskalowanie.

Współautorzy

Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.

Główny autor:

Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.

Następne kroki

Zapoznaj się z następującymi powiązanymi architekturami i powiązanymi informacjami technicznymi: