Sdílet prostřednictvím


Refaktoring mainframových aplikací pomocí Advanced

Soubory Azure
Azure Load Balancer
Azure SQL Database
Azure Storage
Azure Virtual Machines

Advanced's Automated COBOL Refactoring solution refactoring applications COBOL, stejně jako ty napsané v CA-Gen, CA-Telon, Natural, ADSO a dalších starších jazycích, aby poskytovaly aplikace a databáze s podporou cloudu, které jsou funkčně ekvivalentní jejich starším protějškům. To snižuje náklady, umožňuje hlubší integraci a umožňuje přizpůsobení tak, aby splňovalo obchodní požadavky. Kromě toho přináší zcela nový svět kvality a škálovatelnosti, od automatizovaného testování až po kontrolu kvality a schopnost využívat kontejnerizovaná nasazení a orchestraci pomocí Dockeru a Kubernetes.

Architektura sálových počítačů

Tady je ukázkový systém, ve kterém je možné použít automatizované faktoring:

Diagram architektury znázorňující systém mainframů, který obsahuje aplikace starší verze jazyka

Workflow

A. Uživatelé poskytují vstup přes protokol TCP/IP pomocí protokolů, jako jsou TN3270, HTTP a HTTPS.

B. Vstup se dorazí pomocí standardních sálových protokolů.

C. Dávkové a online aplikace zpracovávají vstup.

D. COBOL, PL/I, Assembler a kompatibilní jazyky běží v povoleném prostředí.

E. Soubory a databáze poskytují úložiště dat. Mezi typy databází patří hierarchické, síťové a relační.

F. Služby provádějí úlohy pro aplikace. Mezi běžně povolené služby patří spouštění programů, vstupně-výstupní operace, detekce chyb a ochrana.

G. Middleware a utility služby spravují úlohy, jako je páskové úložiště, zařadí se do fronty, výstup a podpora webu.

H. Operační systémy poskytují rozhraní mezi modulem a softwarem, na kterém běží.

Já. Oddíly spouštějí samostatné úlohy nebo oddělují pracovní typy v rámci prostředí.

Architektura Azure

Toto je architektura ukázkového systému, který je uvedený výše při refaktoringu pro Azure. Písmenové značky v diagramech ukazují, kde refaktorované řešení zpracovává odpovídající mainframové funkce.

Diagram architektury znázorňující systém v Azure po refaktoringu

Stáhněte si soubor aplikace Visio s touto architekturou.

Workflow

  1. Vstup obvykle přichází prostřednictvím Azure ExpressRoute ze vzdálených klientů nebo z jiných aplikací Azure. V obou případech jsou připojení TCP/IP primárním prostředkem připojení k systému. Uživatelský přístup k webovým aplikacím je přes port TLS 443. Uživatelské rozhraní webových aplikací můžete zachovat stejně, abyste minimalizovali přetrénování koncových uživatelů, nebo ho můžete aktualizovat pomocí moderních architektur uživatelského rozhraní. Azure Bastion poskytuje přístup správce k virtuálním počítačům a maximalizuje zabezpečení minimalizací otevřených portů.

  2. Přístup k výpočetním clusterům aplikací je jednou v Azure prostřednictvím nástroje pro vyrovnávání zatížení Azure. Tento přístup umožňuje škálovat výpočetní prostředky na více instancí ke zpracování vstupní práce. V závislosti na vstupu můžete vyrovnávat zatížení na úrovni aplikace nebo na úrovni síťového protokolu.

  3. Advanced podporuje nasazení v kontejnerech, virtuálních počítačích nebo škálovacích sadách virtuálních počítačů. Kontejnery a škálovací sady virtuálních počítačů na rozdíl od virtuálních počítačů se můžou škálovat a rychle navyšovat. Přesun jednotky škálování na kontejnery optimalizuje využití infrastruktury.

  4. Aplikační servery přijímají vstup do výpočetních clusterů a sdílejí stav a data aplikace pomocí služby Azure Cache for Redis nebo vzdáleného přímého přístupu do paměti (RDMA).

  5. Datové služby v aplikačních clusterech umožňují více připojení k trvalým zdrojům dat. Mezi možné zdroje dat patří:

    • Azure SQL Database
    • Azure Cosmos DB.
    • Databáze na virtuálních počítačích, jako je Oracle a Db2.
    • Úložiště pro velké objemy dat, jako jsou Azure Databricks a Azure Data Lake.
    • Streamované datové služby, jako je Kafka a Azure Stream Analytics.
  6. Aplikační servery hostují různé aplikační programy na základě schopností jazyka, jako jsou třídy Java nebo programy COBOL.

  7. Datové služby používají kombinaci:

    1. Vysoce výkonné úložiště: Azure Premium SSD a Azure Ultra Disk Storage.

    2. Úložiště souborů: Azure NetApp Files a Soubory Azure.

    3. Úložiště úrovně Standard: Azure Blob Storage, archivace a zálohování. Zálohování může být následující:

      1. Místně redundantní úložiště (LRS).
      2. Zónově redundantní úložiště (ZRS):
      3. Geograficky redundantní úložiště (GRS):
      4. Geograficky zónově redundantní úložiště (GZRS).

      Další informace o redundanci najdete v tématu Redundance služby Azure Storage.

  8. Datové služby Azure jako služba (PaaS) poskytují škálovatelné a vysoce dostupné úložiště dat pro sdílení napříč několika výpočetními prostředky v clusteru. Můžou být také geograficky redundantní.

  9. Azure Data Factory může ingestovat data a synchronizovat s několika zdroji dat v rámci Azure i z externích zdrojů. Azure Blob Storage je společná cílová zóna pro externí zdroje dat.

  10. Azure Site Recovery poskytuje zotavení po havárii součástí virtuálního počítače a clusteru kontejnerů.

  11. Aplikace se připojují k privátním koncovým bodům různých služeb PaaS.

Komponenty

Tento příklad obsahuje následující komponenty Azure. Některé z těchto komponent a pracovních postupů jsou v závislosti na vašem scénáři zaměnitelné nebo volitelné.

  • Azure Bastion je plně spravovaná služba, která poskytuje zabezpečené připojení protokolu RDP (Remote Desktop Protocol) nebo SSH (Secure Shell) k virtuálním síťovým virtuálním počítačům přímo z webu Azure Portal přes protokol TLS (Transport Layer Security). V této architektuře Azure Bastion maximalizuje zabezpečení přístupu správce tím, že minimalizuje otevřené porty virtuálním počítačům, které hostují refaktorované aplikace COBOL.

  • Azure Cache for Redis je plně spravovaná služba ukládání do mezipaměti v paměti, která přidává rychlou vrstvu ukládání do mezipaměti do aplikační architektury pro zpracování velkých svazků s vysokou rychlostí. Azure Cache for Redis škáluje výkon jednoduše a nákladově efektivně s výhodami plně spravované služby. V této architektuře azure Cache for Redis umožňuje aplikačním serverům sdílet stav aplikace a data napříč výpočetními clustery pro refaktorované sálové aplikace.

  • Azure Data Factory je služba extrakce, transformace a načítání (ETL) pro škálování na více instancí, integraci bezserverových dat a transformaci dat. Poskytuje uživatelské rozhraní bez kódu pro intuitivní vytváření a monitorování a správu s jedním podoknem skla. V této architektuře azure Data Factory poskytuje možnosti integrace a transformace dat pro migraci a zpracování dat sálového počítače v refaktorovém řešení.

  • Databáze Azure jsou kolekce cloudových databázových služeb, které poskytují plně spravované relační databáze a databáze NoSQL tak, aby vyhovovaly potřebám moderních aplikací. Automatizovaná správa infrastruktury poskytuje škálovatelnost, dostupnost a zabezpečení. V této architektuře databáze Azure poskytují trvalá řešení úložiště dat, která nahrazují databázové systémy mainframů.

    • Azure Cosmos DB je plně spravovaná a rychlá databáze NoSQL s otevřenými rozhraními API pro jakékoli škálování. V této architektuře poskytuje Azure Cosmos DB globálně distribuované databázové služby NoSQL pro refaktorované aplikace, které vyžadují flexibilní škálovatelné úložiště dat.

    • Azure Database for PostgreSQL je plně spravovaná databáze založená na opensourcovém relačním databázovém stroji PostgreSQL. Možnost nasazení Hyperscale (Citus) škáluje dotazy napříč několika počítači pomocí horizontálního dělení pro aplikace, které vyžadují větší škálování a výkon. V této architektuře poskytuje Azure Database for PostgreSQL opensourcové relační databázové služby pro refaktorované aplikace, které vyžadují funkce PostgreSQL.

    • SQL Database je plně spravovaný databázový stroj PaaS, který vždy běží na nejnovější stabilní verzi SQL Serveru a opravený operační systém s vysokou dostupností. Integrované možnosti správy databází PaaS zahrnují upgrade, opravy, zálohování a monitorování. V této architektuře sql Database poskytuje spravované služby relačních databází pro refaktorované aplikace, které vyžadují kompatibilitu SQL Serveru.

  • Azure Kubernetes Service (AKS) je plně spravovaná služba Kubernetes pro nasazení a správu kontejnerizovaných aplikací. AKS poskytuje bezserverové prostředí Kubernetes, integrované prostředí kontinuální integrace a průběžného doručování (CI/CD) a zabezpečení a zásady správného řízení na podnikové úrovni. V této architektuře poskytuje AKS orchestraci kontejnerů pro nasazení a škálování refaktorovaných aplikací COBOL s rychlým škálováním na více instancí.

  • Azure Load Balancer je nástroj pro vyrovnávání zatížení sítě, který distribuuje příchozí provoz napříč několika cíli, aby se zajistila vysoká dostupnost a spolehlivost. Můžete definovat pravidla a další kritéria pro distribuci provozu. V této architektuře poskytuje Load Balancer přístup k výpočetním clusterům aplikací a umožňuje škálovat výpočetní prostředky na více instancí ke zpracování vstupní práce z refaktorovaných sálových aplikací.

  • Azure Private Link je síťová služba, která poskytuje privátní připojení z virtuální sítě ke službám Azure. Private Link eliminuje vystavení veřejného internetu za účelem zjednodušení síťové architektury a zabezpečení připojení mezi koncovými body Azure. V této architektuře služba Private Link umožňuje refaktorovaným aplikacím zabezpečené připojení k privátním koncovým bodům různých služeb PaaS.

  • Azure Storage je škálovatelné a zabezpečené cloudové úložiště pro všechna vaše data, aplikace a úlohy. V této architektuře poskytuje Azure Storage různé možnosti úložiště, které podporují požadavky na data refaktorovaných aplikací mainframů.

    • Azure Disk Storage je vysoce výkonné odolné blokové úložiště pro důležité obchodní aplikace. Spravované disky Azure jsou svazky úložiště na úrovni bloků, které Azure spravuje na svých virtuálních počítačích Azure. Dostupné typy diskového úložiště jsou Disk Storage úrovně Ultra, SSD úrovně Premium a Ssd úrovně Azure Standard. V této architektuře poskytuje Azure Disk Storage vysoce výkonné úložiště pro refaktorované aplikace pomocí ssd úrovně Premium nebo Disk Storage úrovně Ultra.

    • Azure Files je plně spravovaná služba sdílené složky, která poskytuje plně spravované sdílené složky v cloudu, ke kterým je možné přistupovat prostřednictvím standardního protokolu SMB (Server Message Block). Cloudová a místní nasazení windows, Linuxu a macOS můžou připojit sdílené složky současně. V této architektuře poskytuje Azure Files sdílené úložiště souborů, ke kterému má přístup více instancí refaktorovaných aplikací.

  • Virtuální počítače Azure jsou služba cloud computingu, která poskytuje mnoho velikostí a typů škálovatelných výpočetních prostředků na vyžádání. Díky používání virtuálních počítačů získáte flexibilitu virtualizace, aniž byste museli kupovat a udržovat fyzický hardware. V této architektuře hostují virtuální počítače refaktorované sálové aplikace a poskytují škálovatelné výpočetní prostředky jako alternativu ke kontejnerizovaným nasazením.

  • Azure Virtual Network je základní stavební blok privátních sítí Azure. Virtuální počítače v rámci virtuálních sítí můžou bezpečně komunikovat mezi sebou, internetem a místními sítěmi. Virtuální síť je jako tradiční místní síť, ale s infrastrukturou Azure přináší výhody, jako je škálovatelnost, vysoká dostupnost a izolace. V této architektuře poskytuje služba Virtual Network zabezpečený základ sítě pro všechny komponenty refaktorovaného systému sálových počítačů.

  • Blob Storage je škálovatelné a zabezpečené úložiště objektů pro archivy, datová jezera, vysokovýkonné výpočetní prostředí, strojové učení a úlohy nativní pro cloud. V této architektuře poskytuje Blob Storage úložiště objektů pro nestrukturovaná data a požadavky na archivaci refaktorovaných aplikací sálových počítačů.

  • ExpressRoute je služba připojení, která rozšiřuje vaše místní sítě do Azure přes privátní vyhrazené optické připojení od poskytovatele připojení. ExpressRoute vytváří připojení ke cloudovým službám Microsoftu, jako je Azure a Microsoft 365. V této architektuře expressRoute poskytuje zabezpečené připojení s velkou šířkou pásma mezi místními sálovými prostředími a refaktorovanými aplikacemi, které běží v Azure.

  • NetApp Files je plně spravovaná služba úložiště souborů, která poskytuje sdílené složky Azure na podnikové úrovni, které využívají NetApp, což podnikům usnadňuje migraci a spouštění složitých aplikací založených na souborech beze změn kódu. V této architektuře poskytuje NetApp Files vysoce výkonné úložiště souborů pro refaktorované aplikace na podnikové úrovni, které vyžadují pokročilé funkce systému souborů.

  • Site Recovery je služba zotavení po havárii, která zrcadlí virtuální počítače Azure do sekundární oblasti Azure pro rychlé převzetí služeb při selhání a obnovení dat v případě selhání datacentra Azure. V této architektuře poskytuje Site Recovery možnosti provozní kontinuity a zotavení po havárii pro refaktorované aplikace mainframů.

Podrobnosti scénáře

Existuje mnoho důvodů, proč hledat alternativy k mainframovým aplikacím založeným na COBOL, které jsou stále běžné:

  • Vývojáři COBOL a CA-Gen/Natural/Telon/ASDO se vyřazuje a nikdo je nenatrénuje, aby je nahradil, což vede k neustálému snížení fondu talentů. S rostoucím nedostatkem talentů se zvyšují náklady a rizika spoléhat se na COBOL a další starší jazyky.
  • Aplikace nebyly navrženy pro moderní IT, což vedlo k obtížné integraci a omezené flexibilitě.
  • Hardware a software IBM jsou nákladné a poplatky za licencování a údržbu pomocných sálových aplikací a databází se zvyšují.

Advanced's Automated COBOL Refactoring solution refaktoring aplikace COBOL, stejně jako ty napsané v jiných starších jazycích, aby doručovaly aplikace a databáze s podporou cloudu, které jsou funkčně ekvivalentní jejich starším protějškům. To snižuje náklady, umožňuje hlubší integraci a umožňuje přizpůsobení tak, aby splňovalo obchodní požadavky. Kromě toho přináší zcela nový svět kvality a škálovatelnosti, od automatizovaného testování až po kontrolu kvality a schopnost využívat kontejnerizovaná nasazení a orchestraci pomocí Dockeru a Kubernetes.

Refaktorované aplikace:

  • Jsou funkčně ekvivalentní originálům.
  • Jsou snadno udržovatelné – získávají hodnocení SonarQube A a sledují objektově orientované koncepty a paradigmata.
  • Vylepšujte nebo lépe než originály.
  • Jsou připravené pro cloud a doručují se pomocí standardní sady nástrojů DevOps a osvědčených postupů.

Proces refaktoringu zahrnuje normalizaci toků, restrukturalizaci kódu, extrakci vrstvy dat, úpravu dat a balení pro rekonstrukci. Proces identifikuje klonovaný kód a vytvoří sdílené náhradní objekty, zjednoduší údržbu a správu. Komplexní analýza závislostí dat a řízení vyhledá a odebere mrtvý kód.

Jakmile pokročilé řešení refaktoruje aplikace COBOL a přidružené databáze, mohou vývojáři v Javě a C# používat standardní nástroje DevOps a koncepty CI/CD k rozšíření funkcí aplikace. Proces refaktoringu zachovává obchodní logiku a optimalizuje výkon. Mezi další výhody patří elasticita, podrobná definice služby a snadná integrace se službami nativními pro cloud.

Automatizované refaktoring COBOL je k dispozici pro většinu dialektů a platforem COBOL, včetně z/OS, OpenVMS a VME.

Potenciální případy použití

Pokročilé refaktoring výhody mnoha scénářů, mezi které patří:

  • Podniky, které se snaží:
    • Modernizace infrastruktury a únik nákladů, omezení a ztuhlosti spojené s sálovými modely.
    • Vyhněte se riziku spojenému s nedostatkem dovedností v souvislosti se staršími systémy a aplikacemi tím, že přejdete na nativní cloud a DevOps.
    • Snižte provozní a kapitálové náklady.
  • Organizace, které chtějí migrovat úlohy sálového počítače do cloudu bez nákladných ručních přepisů náchylných k chybám.
  • Organizace, které potřebují migrovat důležité obchodní aplikace a současně udržovat kontinuitu s jinými místními aplikacemi
  • Týmy hledají horizontální a vertikální škálovatelnost, kterou Azure nabízí.
  • Firmy, které upřednostňují řešení s možnostmi zotavení po havárii.

Důležité informace

Tyto aspekty implementují pilíře architektury Azure Well-Architected Framework, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace najdete v tématu rozhraní Microsoft Azure Well-Architected Framework.

Spolehlivost

Spolehlivost zajišťuje, že vaše aplikace může splňovat závazky, které uděláte pro vaše zákazníky. Další informace naleznete v tématu Kontrolní seznam pro kontrolu spolehlivosti.

Odolnost je součástí tohoto řešení nástroji pro vyrovnávání zatížení. Pokud selže jedna prezentace nebo transakční server, můžou ostatní servery za nástroji pro vyrovnávání zatížení spouštět úlohy podle pravidel a sond stavu. Skupiny dostupnosti a geograficky redundantní úložiště se důrazně doporučují.

Zabezpečení

Zabezpečení poskytuje záruky proti záměrným útokům a zneužití cenných dat a systémů. Další informace naleznete v tématu Kontrolní seznam pro kontrolu návrhu prozabezpečení .

Toto řešení používá skupinu zabezpečení sítě Azure ke správě provozu mezi prostředky Azure. Další informace najdete v tématu Skupiny zabezpečení sítě.

Private Link pro Azure SQL Database poskytuje privátní přímé připojení, které je izolované s páteřní sítí Azure od virtuálních počítačů Azure do Azure SQL Database.

Azure Bastion maximalizuje zabezpečení přístupu správce minimalizací otevřených portů. Bastion poskytuje zabezpečené a bezproblémové připojení RDP/SSH k virtuálním síťovým virtuálním počítačům přímo z webu Azure Portal přes protokol TLS.

Optimalizace nákladů

Optimalizacenákladůch Další informace naleznete v tématu Kontrolní seznam pro kontrolu návrhu proOptimalizace nákladů .

Azure se vyhne zbytečným nákladům tím, že identifikuje správný počet typů prostředků, analyzuje výdaje v průběhu času a škáluje se tak, aby vyhovovaly obchodním potřebám bez nadměrného využití.

  • Azure poskytuje optimalizaci nákladů spuštěním na virtuálních počítačích. Virtuální počítače můžete vypnout, když se nepoužívají, a skriptovat plán pro známé vzory použití. Další informace o optimalizaci nákladů pro instance virtuálních počítačů najdete v tématu Azure Well-Architected Framework.
  • Virtuální počítače v této architektuře používají diskové úložiště úrovně Premium nebo Disk Storage úrovně Ultra. Další informace o možnostech disků a cenách najdete v tématu Spravované disky cenách.
  • SQL Database optimalizuje náklady s využitím bezserverových výpočetních prostředků a prostředků úložiště Hyperscale, které se automaticky škálují. Další informace o možnostech a cenách služby SQL Database najdete v tématu Ceny služby Azure SQL Database.
  • Pomocí cenové kalkulačky můžete odhadnout náklady na implementaci tohoto řešení.

Efektivita provozu

Efektivita provozu se zabývá provozními procesy, které nasazují aplikaci a udržují ji spuštěnou v produkčním prostředí. Další informace naleznete v tématu kontrolní seznam pro kontrolu efektivity provozu.

Refaktoring podporuje nejen rychlejší přechod na cloud, ale také podporuje přechod na DevOps a agilní pracovní principy. Máte plnou flexibilitu v možnostech vývoje a produkčního nasazení.

Efektivita výkonu

Efektivita výkonu je schopnost vaší úlohy škálovat tak, aby splňovala požadavky, které na ni mají uživatelé efektivním způsobem. Další informace naleznete v tématu Kontrola návrhu kontrolní seznam pro zvýšení efektivity výkonu.

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autor:

Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.

Další kroky