Den här arkitekturen visar hur Raincode COBOL-kompilatorn moderniserar äldre stordatorprogram genom att smidigt migrera och integrera dem med en modern, Azure-baserad teknikstack utan att ändra en enda kodrad. Med Raincodes kompilatorteknik kan du behålla aktuella optimerade stordatorprogram och distribuera dem i molnet, så att du kan bevara årtionden av utveckling samtidigt som prestanda och flexibilitet förbättras avsevärt. Raincodes lösning syftar till att omvandla stordatorn till en Azure-inbyggd arkitektur genom att bevara affärslogik samtidigt som hela arkitekturen transformeras. Raincode har stöd för programflexitet i Linux och Windows med distributioner av containerbaserade eller virtuella datorer (VM) i Azure.
Arkitektur
Äldre IBM z/OS-arkitektur
Följande diagram visar ett exempel på en äldre COBOL-baserad stordatorarkitektur före migreringen till Azure.
Ladda ned en Visio-fil med den här arkitekturen.
Arbetsflöde
Följande anteckningar mappar från källan IBM z/OS till Azure:
A. IBM 3270-terminalemulering för efterfrågan och onlineanvändare ersätts av en webbläsare för att få åtkomst till systemresurser i Azure.
B. COBOL och annan äldre programkod konverteras till C#/.NET. Raincode genererar 100 procent trådsäker och hanterad kod för .NET och .NET Core.
C. Raincode COBOL-kompilatorn moderniserar äldre stordatorprogram genom att smidigt migrera och integrera dem med en modern, molnbaserad teknikstack utan att ändra en enda kodrad.
D. Funktioner för arbetsbelastningsautomatisering, schemaläggning, rapportering och systemövervakning kan behålla aktuella plattformar, eftersom de är Azure-kompatibla idag.
E. Äldre databasstrukturer som Db2 och IDMS kan migreras till Azure SQL Database med alla DR/HA-funktioner som Azure tillhandahåller. Raincode stöder även statiska eller dynamiska SQL-frågor via SQL Server eller i Azure SQL DB.
F. Filstrukturer (VSAM, flata filer, virtuellt band och liknande) mappar enkelt till Azure-datakonstruktioner i strukturerade filer och/eller bloblagring. Funktioner som redundant geografisk replikering och Replikering av automatiska redundansgrupper i Azure är tillgängliga för dataskydd.
G. Ett valfritt undersystem för skrivare hanterar lokala skrivare.
H. z/OS som körs på logiska partitioner (LPAR).
I. LPAR:er representerar en delmängd av en dators maskinvaruresurser. Varje LPAR kan vara värd för ett separat operativsystem. I det här exemplet visas bara Z/OS-instanser, men andra LPAR:er som körs på samma maskinvara kan vara värdar för andra driftsmiljöer, till exempel z/VM eller andra motorer, till exempel zIIP eller IFL.
Eftermigrering, Azure-baserad arkitektur
Det här diagrammet visar hur den äldre arkitekturen kan migreras till Azure och dra nytta av Raincode-kompilatorn och många andra moderna Azure-tjänster.
Ladda ned en Visio-fil med den här arkitekturen.
Arbetsflöde
Användaråtkomst som tillhandahålls via TLS-port 443 för åtkomst till webbaserade program. Presentationsskiktet för webbaserade program kan hållas praktiskt taget oförändrat för att minimera slutanvändares omträning. Du kan också uppdatera presentationsskiktet för webbprogram med moderna UX-ramverk eftersom det krävs krav.
I Azure är åtkomsten till programberäkningskluster via Azure Load Balancer, vilket gör det möjligt för skalbara beräkningsresurser att bearbeta indataarbetet.
Programvara för raincode-systememulering kan också stödja distribution i containrar. Med Raincodes senaste kompilatorteknik kan du behålla aktuella optimerade stordatorprogram och distribuera dem på .NET Core.
Molnbaserade program är en samling oberoende och autonoma tjänster som paketeras som lätta containrar.
Till skillnad från virtuella datorer kan containrar skalas ut och skalas in snabbt. Eftersom skalningsenheten flyttas till containrar optimeras infrastrukturanvändningen.
Datatjänster använder en kombination av högpresterande lagring på Ultra- eller Premium SSD-diskar (Solid State Disks), fillagring på Azure NetApp Files eller Azure Files samt standardblob-, arkiv- och säkerhetskopieringslagring som kan vara lokalt redundant eller geo-redundant.
Azure SQL Database använder antingen Hyperskala- eller Affärskritisk-nivåer för både hög IOPS och serviceavtal med hög drifttid. Dessutom används Private Link för Azure SQL Database för att tillhandahålla en privat, direkt anslutning isolerad till Azure Networking Backbone från den virtuella Azure-datorn till Azure SQL Database. Raincode-datamigreringsverktyg kan konvertera DMS/RDMS-scheman till SQL.
Azure Blob Storage är en vanlig landningszon för externa datakällor.
En implementering av Active Directory måste skapas eller redan vara på plats. Raincode tillhandahåller RACF- och Top Secret-identitetsintegrering med hjälp av Active Directory-tillägg.
Komponenter
Azure Kubernetes Service (AKS) är en fullständigt hanterad Kubernetes-tjänst för att distribuera och hantera containerbaserade program i containerbaserade beräkningskluster.
Azure Virtual Network (VNet) är den grundläggande byggstenen för ditt privata nätverk i Azure. Med VNet kan många typer av Azure-resurser, till exempel Virtuella Azure-datorer (VM), kommunicera säkert med varandra, Internet och lokala nätverk. VNet liknar ett traditionellt nätverk som du skulle använda i ditt eget datacenter, men det ger fler fördelar med Azures infrastruktur, till exempel skalning, tillgänglighet och isolering.
Azure Files erbjuder fullständigt hanterade filresurser i molnet som är tillgängliga via SMB-protokollet (Branschstandard Server Message Block). Azure-filresurser kan monteras samtidigt av molndistributioner eller lokala distributioner av Windows, Linux och macOS.
Med Azure ExpressRoute kan du utöka ditt lokala nätverk till Microsoft-molnet över en privat anslutning som tillhandahålls av en anslutningsprovider. Med ExpressRoute kan du upprätta anslutningar till Microsofts molntjänster, till exempel Microsoft Azure och Office 365.
Azure Load Balancer fungerar på nivå fyra i OSI-modellen (Open Systems Interconnection). Det är den enda kontaktpunkten för klienter. Load Balancer distribuerar inkommande flöden som kommer till lastbalanserarens klientdel till serverdelspoolinstanser. Dessa flöden är enligt konfigurerade belastningsutjämningsregler och hälsoavsökningar. Serverdelspoolinstanserna kan vara Azure Virtual Machines eller instanser i en VM-skalningsuppsättning.
Azure SQL Database är en fullständigt hanterad paaS-databasmotor (plattform som en tjänst) som alltid kör den senaste stabila versionen av SQL Server och det korrigerade operativsystemet med 99,99 procents tillgänglighet. SQL Database hanterar uppgradering, korrigering, säkerhetskopior, övervakning och de flesta andra databashanteringsfunktioner utan användarengagemang. Med de här PaaS-funktionerna kan du fokusera på verksamhetskritisk, domänspecifik databasadministration och optimering.
Azure Cosmos DB är en Azure PaaS-tjänst för NoSQL-databaser.
Azure Database for PostgreSQL är en Azure PaaS-tjänst för PostgreSQL-databaser.
Information om scenario
Den här arkitekturen visar hur Raincode-lösningen körs i Azure. Raincode på Azure Support har följande funktioner:
100 procent trådsäker och hanterad kod för .NET och .NET Core.
En lösning som främst syftar till att omvandla stordatorer till en molnbaserad arkitektur.
Internt stöd för statiska eller dynamiska SQL-frågor via SQL Server antingen lokalt eller i Azure SQL DB.
Stöd för Db2 (via Microsofts HIS) och SQL Server.
Visual Studio-integrering med ett felsökningsprogram, kompilator, konfigurationer, # IntelliSense, kodfärgning och projekthantering.
Stöd för alla COBOL-datatyper med minnesrepresentation för stordatorer.
Sömlös integrering med PL/I- och ASM370-kompilatorer.
En lagringsplats med anropsdiagram, statistik och annan kompileringstidsinformation.
Inbyggt EBCDIC-stöd vid kompileringstid och körning.
Om du migrerar till en modern, distribuerad molninfrastruktur med Raincode kan du:
Underlätta ny utveckling och underhåll i C#.
Frigör dig från den ekonomiska bördan av COBOL-licensieringskostnader.
Anta en flexibel och skalbar plattform med hjälp av de senaste teknikerna via .NET Core.
Integrera med moderna program som webb och mobil för att förbättra kundupplevelsen.
Omvandla dina monolitiska äldre program till mikro- eller tjänstorienterad arkitektur (SOA).
Kontrollera din totala ägandekostnad (TCO) med hjälp av Azures skalbarhets- och tillgänglighetsfunktioner.
Potentiella användningsfall
Många användningsfall kan dra nytta av Raincode-kompilatorn. möjligheter är bland annat:
Företag som vill modernisera infrastrukturen och undvika de höga kostnader, begränsningar och stelbenthet som är kopplade till stordatorer.
Minska teknisk skuld genom att gå molnbaserat och DevOps.
Minskade driftskostnader och kapitalutgifter.
Organisationer som väljer att flytta IBM zSeries stordatorarbetsbelastningar till molnet utan sidoeffekter av en fullständig ombyggnad.
IBM zSeries stordatorkunder som behöver migrera verksamhetskritiska program och samtidigt upprätthålla kontinuitet med andra lokala program.
Team som letar efter den horisontella och vertikala skalbarhet som Azure erbjuder.
Företag som föredrar lösningar som erbjuder alternativ för haveriberedskap.
Dra nytta av de senaste innovationerna inom programvaruutveckling: verktyg, ramverk, språk och metoder.
Att tänka på
Dessa överväganden implementerar grundpelarna i Azure Well-Architected Framework, som är en uppsättning vägledande grundsatser som kan användas för att förbättra kvaliteten på en arbetsbelastning. Mer information finns i Microsoft Azure Well-Architected Framework.
Tillförlitlighet
Tillförlitlighet säkerställer att ditt program kan uppfylla de åtaganden du gör gentemot dina kunder. Mer information finns i checklistan för Designgranskning för tillförlitlighet.
- Raincode-arkitekturen använder Azure Site Recovery för att spegla virtuella Azure-datorer till en sekundär Azure-region för snabb redundans och haveriberedskap (DR) om ett Azure-datacenter misslyckas.
Säkerhet
Säkerhet ger garantier mot avsiktliga attacker och missbruk av dina värdefulla data och system. Mer information finns i checklistan för Designgranskning för Security.
Den här lösningen använder en Nätverkssäkerhetsgrupp (NSG) i Azure för att hantera trafik mellan Azure-resurser.
Private Link för Azure SQL Database tillhandahåller en privat, direkt anslutning som är isolerad till Azure-nätverkets stamnät, från de virtuella Azure-datorerna till Azure SQL Database.
Kostnadsoptimering
Kostnadsoptimering handlar om att titta på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Mer information finns i checklistan Designgranskning för kostnadsoptimering.
Raincode COBOL-kompilatorn underlättar ny utveckling i C# och eliminerar den ekonomiska bördan av COBOL-licensieringskostnader.
Internt stöd för SQL och CICS. Källkoden som debugged är samma som källan som underhålls, snarare än utdata från en förbehandlare.
Operational Excellence
Operational Excellence omfattar de driftsprocesser som distribuerar ett program och håller det igång i produktion. Mer information finns i checklistan för Designgranskning för Operational Excellence.
Varje tjänst i ett molnbaserat program genomgår en oberoende livscykel som hanteras genom en flexibel DevOps-process.
Flera CI/CD-pipelines (continuous integration/continuous delivery) kan fungera tillsammans för att distribuera och hantera ett molnbaserat program.
Prestandaeffektivitet
Prestandaeffektivitet är arbetsbelastningens förmåga att skala för att uppfylla användarnas krav på ett effektivt sätt. Mer information finns i checklistan för Designgranskning för prestandaeffektivitet.
Molnbaserade program är en samling oberoende och autonoma tjänster som paketeras som lätta containrar.
Till skillnad från virtuella datorer kan containrar snabbt skalas ut och skalas in.
Eftersom skalningsenheten övergår till containrar optimeras infrastrukturanvändningen.
Deltagare
Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.
Huvudförfattare:
- Jonathon Frost | Huvudprogramtekniker
Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.
Nästa steg
Mer information finns i kontakta legacy2azure@microsoft.com eller kolla in följande resurser:
Läs det tekniska landskapet Raincode.