Ponowne hostowanie aplikacji mainframe na platformie Azure za pomocą kompilatorów raincode

Azure Virtual Machines
Azure Kubernetes Service (AKS)
Azure Files
Azure ExpressRoute
Azure Load Balancer

Ta architektura pokazuje, jak kompilator Raincode COBOL modernizuje starsze aplikacje mainframe przez bezproblemowe migrowanie i integrowanie ich z nowoczesnym stosem technologii opartym na platformie Azure bez zmieniania pojedynczego wiersza kodu. Dzięki technologii kompilatora raincode można zachować bieżące zoptymalizowane aplikacje mainframe i wdrożyć je w chmurze, co pozwala zachować dziesięciolecia programowania, jednocześnie zwiększając wydajność i elastyczność. Rozwiązanie raincode ma na celu przekształcenie komputera mainframe w architekturę natywną platformy Azure przez zachowanie logiki biznesowej podczas przekształcania całej architektury. Rozwiązanie Raincode obsługuje elastyczność aplikacji w systemach Linux i Windows przy użyciu wdrożeń konteneryzowanych lub maszyn wirtualnych na platformie Azure.

Architektura

Starsza architektura ibm z/OS

Na poniższym diagramie przedstawiono przykład starszej architektury mainframe opartej na architekturze COBOL przed migracją na platformę Azure.

Diagram przedstawiający starszą architekturę mainframe opartą na architekturze COBOL.

Pobierz plik programu Visio z tą architekturą.

Przepływ pracy

Następujące adnotacje mapuje się ze źródłowego systemu IBM z/OS na platformę Azure:

Odp. Emulacja terminalu IBM 3270 na żądanie i użytkowników online jest zastępowana przez przeglądarkę internetową w celu uzyskania dostępu do zasobów systemowych na platformie Azure.

B. Kod COBOL i inny starszy kod aplikacji są konwertowane na C#/.NET. Kod deszczowy generuje 100-procentowy kod bezpieczny wątkowo i zarządzany dla platform .NET i .NET Core.

C. Kompilator COBOL programu Raincode modernizuje starsze aplikacje mainframe przez bezproblemowe migrowanie i integrowanie ich z nowoczesnym stosem technologii opartym na chmurze bez konieczności zmieniania pojedynczego wiersza kodu.

D. Funkcje automatyzacji obciążeń, planowania, raportowania i monitorowania systemu mogą zachować bieżące platformy, ponieważ są one obecnie obsługiwane przez platformę Azure.

E. Starsze struktury baz danych, takie jak Db2 i IDMS, można migrować do usługi Azure SQL Database ze wszystkimi funkcjami odzyskiwania po awarii/wysokiej dostępności zapewnianymi przez platformę Azure. Kod deszczowy obsługuje również statyczne lub dynamiczne zapytania SQL za pośrednictwem programu SQL Server lub usługi Azure SQL DB.

F. Struktury plików (VSAM, pliki proste, taśmy wirtualne i podobne) łatwo mapować na konstrukcje danych platformy Azure w plikach strukturalnych i/lub magazynie obiektów blob. Funkcje, takie jak nadmiarowa replikacja geograficzna i replikacja grupy automatycznego trybu failover platformy Azure, są dostępne w celu zapewnienia ochrony danych.

G. Opcjonalny podsystem drukarki zarządza drukarkami lokalnymi.

H. system z/OS uruchomiony na partycjach logicznych (LPARs).

I. LPARs reprezentują podzbiór zasobów sprzętowych komputera. Każdy LPAR może hostować oddzielny system operacyjny. Chociaż w tym przykładzie pokazano tylko wystąpienia Z/OS, inne LPAR działające na tym samym sprzęcie mogą hostować inne środowiska operacyjne, takie jak z/VM lub inne aparaty, takie jak zIIP lub IFL.

Postmigration, architektura oparta na platformie Azure

Na tym diagramie pokazano, jak można migrować starszą architekturę na platformę Azure, korzystając z kompilatora Raincode i wielu innych nowoczesnych usług platformy Azure.

Migracja starszej architektury do przepływu pracy platformy Azure.

Pobierz plik programu Visio z tą architekturą.

Przepływ pracy

  1. Dostęp użytkowników zapewniany za pośrednictwem portu TLS 443 na potrzeby uzyskiwania dostępu do aplikacji internetowych. Warstwa prezentacji aplikacji internetowych może być praktycznie niezmieniona, aby zminimalizować ponowne trenowanie użytkowników końcowych. Alternatywnie warstwę prezentacji aplikacji internetowej można zaktualizować przy użyciu nowoczesnych struktur środowiska użytkownika, ponieważ wymagania wymagają.

  2. Na platformie Azure dostęp do klastrów obliczeniowych aplikacji odbywa się za pośrednictwem usługi Azure Load Balancer, co umożliwia skalowanie zasobów obliczeniowych w poziomie w celu przetworzenia pracy wejściowej.

  3. Oprogramowanie emulacji systemu Raincode może również obsługiwać wdrażanie w kontenerach. Dzięki najnowocześniejszej technologii kompilatora raincode można zachować bieżące zoptymalizowane aplikacje mainframe i wdrożyć je na platformie .NET Core.

  4. Aplikacje natywne dla chmury to kolekcja niezależnych i autonomicznych usług spakowanych jako uproszczone kontenery.

    W przeciwieństwie do maszyn wirtualnych kontenery mogą szybko skalować i skalować w poziomie. Ponieważ jednostka skalowania zmienia się na kontenery, zoptymalizowane jest wykorzystanie infrastruktury.

  5. Usługi danych korzystają z kombinacji magazynu o wysokiej wydajności na dyskach półprzewodnikowych Ultra lub Premium (SSD), magazynie plików w usłudze Azure NetApp Files lub Azure Files oraz w standardowym magazynie obiektów blob, archiwum i magazynu kopii zapasowych, który może być lokalnie nadmiarowy lub geograficznie nadmiarowy.

  6. Usługa Azure SQL Database korzystająca z warstw Hiperskala lub Krytyczne dla działania firmy w przypadku wysokiej liczby operacji we/wy na sekundę i wysokiej dostępności umowy SLA. Ponadto usługa Private Link dla usługi Azure SQL Database służy do zapewnienia prywatnego, bezpośredniego połączenia odizolowanego od sieci szkieletowej sieci platformy Azure z maszyny wirtualnej platformy Azure do usługi Azure SQL Database. Narzędzia do migracji danych kodu deszczowego mogą konwertować schematy DMS/RDMS na język SQL.

  7. Azure Blob Storage to wspólna strefa docelowa dla zewnętrznych źródeł danych.

  8. Należy utworzyć lub już utworzyć implementację usługi Active Directory. Program Raincode zapewnia integrację tożsamości RACF i top secret przy użyciu rozszerzeń usługi Active Directory.

Składniki

  • Usługa Azure Kubernetes Service (AKS) to w pełni zarządzana usługa Kubernetes służąca do wdrażania konteneryzowanych aplikacji w klastrach obliczeniowych opartych na kontenerach i zarządzaniu nimi.

  • Azure Virtual Network (VNet) to podstawowy blok konstrukcyjny dla sieci prywatnej na platformie Azure. Sieć wirtualna umożliwia korzystanie z wielu typów zasobów platformy Azure, takich jak maszyny wirtualne platformy Azure, bezpieczne komunikowanie się ze sobą, internetem i sieciami lokalnymi. Sieć wirtualna jest podobna do tradycyjnej sieci, która będzie działać we własnym centrum danych, ale przynosi więcej korzyści z infrastruktury platformy Azure, takich jak skalowanie, dostępność i izolacja.

  • Usługa Azure Files oferuje w pełni zarządzane udziały plików w chmurze, które są dostępne za pośrednictwem standardowego protokołu SMB (Server Message Block). Udziały plików platformy Azure można instalować współbieżnie za pośrednictwem chmurowych lub lokalnych wdrożeń systemów Windows, Linux i macOS.

  • Usługa Azure ExpressRoute umożliwia przeniesienie sieci lokalnych do chmury firmy Microsoft za pośrednictwem połączenia prywatnego obsługiwanego przez dostawcę połączenia. Za pomocą usługi ExpressRoute można nawiązywać połączenia z usługami w chmurze firmy Microsoft, takimi jak Microsoft Azure i Office 365.

  • Usługa Azure Load Balancer działa w warstwie 4 modelu Open SystemsConnect (OSI). Jest to pojedynczy punkt kontaktu dla klientów. Usługa Load Balancer dystrybuuje przepływy przychodzące, które docierają do frontonu modułu równoważenia obciążenia do wystąpień puli zaplecza. Te przepływy są zgodne ze skonfigurowanymi regułami równoważenia obciążenia i sondami kondycji. Wystąpienia puli zaplecza mogą być maszynami wirtualnymi platformy Azure lub wystąpieniami w zestawie skalowania maszyn wirtualnych.

  • Usługa Azure SQL Database to w pełni zarządzany aparat bazy danych platformy jako usługi (PaaS), który zawsze uruchamia najnowszą stabilną wersję programu SQL Server i poprawiony system operacyjny z dostępnością na poziomie 99,99%. Usługa SQL Database obsługuje uaktualnianie, stosowanie poprawek, tworzenie kopii zapasowych, monitorowanie i większość innych funkcji zarządzania bazami danych bez udziału użytkownika. Te funkcje PaaS umożliwiają skoncentrowanie się na administrowaniu i optymalizacji bazy danych o znaczeniu krytycznym dla działania firmy.

  • Azure Cosmos DB to usługa PaaS platformy Azure dla baz danych NoSQL.

  • Azure Database for PostgreSQL to usługa PaaS platformy Azure dla baz danych PostgreSQL.

Szczegóły scenariusza

Ta architektura ilustruje sposób działania rozwiązania Raincode na platformie Azure. Kod deszczowy na pomoc techniczna platformy Azure następujące funkcje:

  • 100-procentowy kod bezpieczny wątkowo i zarządzany dla platform .NET i .NET Core.

  • Rozwiązanie mające na celu przede wszystkim przekształcenie komputerów mainframe w architekturę natywną dla chmury.

  • Natywna obsługa statycznych lub dynamicznych zapytań SQL za pośrednictwem programu SQL Server lokalnie lub w usłudze Azure SQL DB.

  • Obsługa bazy danych Db2 (za pośrednictwem his firmy Microsoft) i programu SQL Server.

  • Integracja programu Visual Studio z debugerem, kompilatorem, konfiguracjami,# IntelliSense, colorizerem kodu i zarządzaniem projektami.

  • Obsługa wszystkich typów danych COBOL z reprezentacją pamięci mainframe.

  • Bezproblemowa integracja z kompilatorami PL/I i ASM370.

  • Repozytorium z wykresami wywołań, statystykami i innymi informacjami o czasie kompilacji.

  • Natywna obsługa EBCDIC w czasie kompilacji i czasie wykonywania.

Migracja do nowoczesnej, rozproszonej infrastruktury chmury przy użyciu rozwiązania Raincode umożliwia:

  • Ułatwianie tworzenia i konserwacji w języku C#.

  • Uwolnij się od obciążenia finansowego kosztów licencjonowania COBOL.

  • Wdrażanie elastycznej i skalowalnej platformy przy użyciu najnowszych technologii za pośrednictwem platformy .NET Core.

  • Integracja z nowoczesnymi aplikacjami, takimi jak internet i aplikacje mobilne, aby poprawić jakość obsługi klienta.

  • Przekształć starsze aplikacje monolityczne w architekturę zorientowaną na mikro- lub usługę (SOA).

  • Kontrolowanie całkowitego kosztu posiadania (TCO) przy użyciu funkcji skalowalności i dostępności platformy Azure.

Potencjalne przypadki użycia

Wiele przypadków użycia może korzystać z kompilatora raincode; możliwości obejmują:

  • Firmy chcące zmodernizować infrastrukturę i uniknąć wysokich kosztów, ograniczeń i sztywności związanych z komputerami mainframe.

  • Zmniejszenie długu technicznego dzięki przejściu do chmury natywnej i metodyki DevOps.

  • Zmniejszenie kosztów wydatków operacyjnych i kapitałowych.

  • Organizacje decydujące się przenieść obciążenia mainframe IBM zSeries do chmury bez skutków ubocznych kompletnego przebudowy.

  • Klienci mainframe ibm zSeries, którzy muszą migrować aplikacje o krytycznym znaczeniu przy zachowaniu ciągłości pracy z innymi aplikacjami lokalnymi.

  • Zespoły szukają skalowalności poziomej i pionowej, którą oferuje platforma Azure.

  • Firmy, które faworyzują rozwiązania oferujące opcje odzyskiwania po awarii.

  • Korzystanie z najnowszych innowacji w zakresie tworzenia oprogramowania: narzędzi, struktur, języków i praktyk.

Kwestie wymagające rozważenia

Poniższe zagadnienia dotyczą tego rozwiązania.

Dostępność

  • Architektura kodu deszczowego używa usługi Azure Site Recovery do dublowania maszyn wirtualnych platformy Azure w regionie pomocniczym platformy Azure w celu szybkiego przejścia w tryb failover i odzyskiwania po awarii (DR), jeśli centrum danych platformy Azure zakończy się niepowodzeniem.

Operacje

  • Każda usługa aplikacji natywnej dla chmury przechodzi przez niezależny cykl życia, który jest zarządzany za pomocą elastycznego procesu DevOps.

  • Wiele potoków ciągłej integracji/ciągłego dostarczania (CI/CD) może współpracować w celu wdrożenia aplikacji natywnej dla chmury i zarządzania nią.

Efektywność wydajności

  • Aplikacje natywne dla chmury to kolekcja niezależnych i autonomicznych usług, które są pakowane jako lekkie kontenery.

  • W przeciwieństwie do maszyn wirtualnych kontenery mogą szybko skalować i skalować w poziomie.

  • Ponieważ jednostka skalowania przenosi się do kontenerów, użycie infrastruktury jest zoptymalizowane.

Zabezpieczenia

Optymalizacja kosztów

  • Kompilator COBOL programu Raincode ułatwia tworzenie nowych rozwiązań w języku C# i eliminuje obciążenie finansowe kosztów licencjonowania COBOL.

  • Natywna obsługa usług SQL i CICS. Debugowany kod źródłowy jest taki sam jak utrzymywane źródło, a nie dane wyjściowe wstępnego procesora.

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

Aby uzyskać więcej informacji, skontaktuj się z następującymi legacy2azure@microsoft.com zasobami lub zapoznaj się z następującymi zasobami: