Mainframe en midrange modernisering met Azure Logic Apps
In deze handleiding wordt beschreven hoe uw organisatie de bedrijfswaarde en flexibiliteit kan verhogen door uw mainframe en middelgrote omgevingen te moderniseren met behulp van Azure Logic Apps. De huidige bedrijfswereld ondervindt een tijdperk van hyperinnovatie en is op een permanente zoektocht naar bedrijfsefficiëntie, kostenreductie, groei en bedrijfsuitlijning. Organisaties zijn op zoek naar manieren om te moderniseren en een effectieve strategie is het verbeteren van de bedrijfswaarde terwijl bestaande verouderde assets worden gebruikt.
Voor organisaties met investeringen in mainframe- en midrangesystemen betekent dit dat het beste gebruik wordt gemaakt van platforms die mensen naar de maan hebben gestuurd of geholpen bij het bouwen van huidige financiële markten en het uitbreiden van hun waarde met behulp van de cloud en kunstmatige intelligentie (AI). In dit scenario komen Azure Logic Apps en de systeemeigen mogelijkheden voor integratie met mainframe- en midrangesystemen in het spel door de deur naar de AI-wereld te openen voor verouderde investeringen. Azure Logic Apps bevat onder andere de kernmogelijkheden van Host Integration Server (HIS), die gedurende meer dan 20 jaar is gebruikt voor mainframe- en midrange-integratie. Als gevolg hiervan is Azure Logic Apps een Integration Platform-as-a-Service (iPaaS) geworden voor mainframe- en midrange-systemen.
Wanneer bedrijfsontwikkelaars integratiewerkstromen bouwen met Azure Logic Apps, kunnen ze sneller nieuwe toepassingen leveren met weinig tot geen code of minder aangepaste code. Ontwikkelaars die Visual Studio gebruiken, kunnen productiever zijn dan ontwikkelaars die ibm mainframe-ontwikkelhulpprogramma's en -technologieën gebruiken, omdat ze geen kennis nodig hebben over mainframe-systemen en -infrastructuur. Met Azure Logic Apps kunnen bedrijfsanalisten en besluitvormers sneller belangrijke verouderde informatie analyseren en rapporteren. Ze hebben rechtstreeks toegang tot gegevens in mainframe-gegevensbronnen, waardoor mainframeontwikkelaars programma's moeten maken waarmee complexe mainframestructuren worden geëxtraheerd en geconverteerd.
Systeemeigen cloudmogelijkheden voor mainframe- en midrangesysteemintegratie
Sinds 1990 biedt Microsoft integratie met mainframe- en midrangesystemen via Microsoft Communications Server. In 2000 is de verdere evolutie van Microsoft Communications Server Host Integration Server (HIS) gemaakt. Terwijl HIS is gestart als een SNA-gateway (System Network Architecture), is HIS uitgebreid met IBM-gegevensarchieven (DB2, VSAM en Informix), IBM-transactiesystemen (CICS, IMS en IBM i) en IBM Messaging (MQ Series). De strategische klanten van Microsoft hebben deze technologieën al meer dan 20 jaar gebruikt.
Om klanten in staat te stellen toepassingen en gegevens in Azure uit te voeren om deze technologieën te blijven gebruiken, heeft Azure Logic Apps en Visual Studio deze mogelijkheden geleidelijk opgenomen. De HIS Designer voor Logic Apps die wordt uitgevoerd in Visual Studio en het 3270-ontwerpprogramma, helpt u bijvoorbeeld bij het maken van metagegevensartefacten die vereist zijn voor de ingebouwde connectors die u gebruikt voor mainframe- en midrange-integratie in Azure Logic Apps. Deze ingebouwde connectors worden uitgevoerd met dezelfde rekenresources als standaardwerkstromen voor logische apps. Met dit ontwerp kunt u niet alleen scenario's met lage latentie bereiken, maar ook uw bereik uitbreiden om meer noodherstel en hoge beschikbaarheidsbehoeften van klanten aan te pakken.
Ga verder met de volgende secties voor meer informatie over de mogelijkheden van Microsoft voor mainframe- en midrange-integratie.
Microsoft HIS Designer voor Logic Apps
Met dit hulpprogramma maakt u mainframe- en midrange systeemmetagegevensartefacten voor Azure Logic Apps en werkt u met Microsoft Visual Studio door een grafische ontwerper te bieden, zodat u metagegevensobjecten kunt maken, weergeven, bewerken en toewijzen aan mainframe-artefacten. Azure Logic Apps gebruikt deze kaarten om de programma's en gegevens in mainframe- en midrangesystemen te spiegelen. Zie HIS Designer voor Logic Apps voor meer informatie.
Microsoft 3270-ontwerpprogramma
Dit hulpprogramma registreert schermen, navigatiepaden, methoden en parameters voor de taken in uw toepassing, zodat u deze taken kunt toevoegen en uitvoeren als 3270 connectoracties. Hoewel de HIS Designer voor Logic Apps is gericht op transactionele systemen en gegevens, is het ontwerpprogramma 3270 gericht op 3270 toepassingen. Zie 3270 Design Tool voor meer informatie.
Azure Logic Apps-connectors voor IBM-mainframe- en midrangesystemen
In de volgende secties worden de ingebouwde, op serviceproviders gebaseerde connectors beschreven die u kunt gebruiken om toegang te krijgen tot IBM mainframe- en midrangesystemen wanneer u Standard-werkstromen maakt in Azure Logic Apps.
Notitie
Hoewel sommige van de volgende connectors beschikbaar zijn als 'gedeelde' connectors die worden uitgevoerd in globale Azure, is deze handleiding gericht op de ingebouwde, op serviceproviders gebaseerde connectors, die alleen beschikbaar zijn wanneer u Standard-werkstromen maakt in Azure Logic Apps.
IBM 3270
Met deze Azure Logic Apps-connector voor 3270 kunnen Standard-werkstromen toegang krijgen tot IBM mainframe-toepassingen die u meestal aangeeft door 3270 emulatorschermen te navigeren. De connector maakt gebruik van de TN3270-stream. Zie 3270 schermgestuurde apps integreren in IBM mainframes met Azure met behulp van Azure Logic Apps en IBM 3270 Connector voor meer informatie.
IBM Customer Information Control System (CICS)
Deze Azure Logic Apps-connector voor CICS biedt standaardwerkstromen met de mogelijkheid om te communiceren en te integreren met CICS-programma's met behulp van meerdere protocollen, zoals TCP/IP en HTTP. Als u toegang nodig hebt tot CICS-omgevingen met BEHULP van LU6.2, moet u Host Integration Server (HIS) gebruiken. Zie CICS-programma's integreren in IBM mainframes met Standard-werkstromen in Azure Logic Apps met behulp van de IBM CICS-connector voor meer informatie.
IBM DB2
Deze Azure Logic Apps-connector voor DB2 maakt verbindingen mogelijk tussen Standard-werkstromen en DB2-databases die on-premises of in Azure zijn. De connector biedt IT-professionals en ontwikkelaars van ondernemingen directe toegang tot essentiële informatie die is opgeslagen in DB2-databasebeheersystemen. Zie Ibm DB2-resources openen en beheren met behulp van Azure Logic Apps voor meer informatie.
IBM Host Files
Deze Azure Logic Apps-connector voor Host Files biedt een thin wrapper rond de functie Flat File Parser in Host Integration Server. Deze offline connector biedt bewerkingen waarmee binaire gegevens van en naar hostbestanden worden geparseerd of gegenereerd. Voor deze bewerkingen moeten deze gegevens afkomstig zijn van een trigger of een andere actie die binaire gegevens produceert. Zie Parseer en genereer IBM-hostbestanden met behulp van Azure Logic Apps voor meer informatie.
IBM i
Met deze Azure Logic Apps-connector voor IBM i kunnen Standard-werkstromen communiceren en integreren met COBOL- en RPG-programma's die worden uitgevoerd op IBM i-systemen met behulp van TCP/IP. Als u toegang nodig hebt tot IBM i-omgevingen met behulp van LU6.2, moet u Host Integration Server (HIS) gebruiken. Zie COBOL- en RPG-programma's integreren in IBM midranges met Standard-werkstromen in Azure Logic Apps met behulp van de IBM i-connector voor meer informatie.
IBM Information Management System (IMS)
Deze Azure Logic Apps-connector voor IMS maakt gebruik van het IBM IMS Connect-onderdeel, dat krachtige toegang biedt van Standard-werkstromen tot IMS-transacties via TCP/IP. Dit model maakt gebruik van de IMS-berichtenwachtrij voor het verwerken van gegevens. Zie IMS-programma's integreren in IBM mainframes met Standard-werkstromen in Azure Logic Apps met behulp van de IBM IMS-connector voor meer informatie.
IBM MQ
Deze Azure Logic Apps-connector voor MQ maakt verbindingen mogelijk tussen Standard-werkstromen en IBM MQ-servers on-premises of in Azure. Microsoft biedt ook IBM MQ-integratiemogelijkheden met Host Integration Server en BizTalk Server. Zie Verbinding maken met een IBM MQ-server vanuit een werkstroom in Azure Logic Apps voor meer informatie.
Uitdagingen voor de modernisering van mainframe- en midrangesystemen
Mainframe- en midrangesystemen kunnen meerdere omgevingen hosten die programma's, gegevens, bestanden en hulpprogramma's bevatten. In de loop der jaren zijn deze omgevingen mogelijk niet geherstructureerd of zijn ze overgelaten om te groeien en hun limieten te bereiken, ondanks hardware-upgrades. Deze omgevingen zijn mogelijk ook onderhouden door meerdere ontwikkelaars en IT-beheerders, die verschillende programmeerpatronen en -technieken volgen, of andere partijen hebben gerekruteerd om te helpen bij taken die schaarse expertise in de markt vereisen. Samen met een afnemende pool van ervaren professionals creëren al deze factoren een complexe en uitdagende taak voor het moderniseren van mainframes en midrange-omgevingen.
Hoewel de volgende lijst niet volledig is, bevat het definiëren van een geslaagde moderniseringsstrategie minimaal manieren om de volgende taken af te handelen:
- Behoud de huidige serviceniveauindicatoren en -doelstellingen voor uw omgevingen.
- Beheer co-existentie tussen verouderde gegevens en gemigreerde gegevens.
- DevOps uitvoeren in omgevingen tijdens co-existentie.
- Toepassingsafhankelijkheden beheren.
- Definieer de toekomst van de mainframeplanner en -taken.
- Definieer een strategie voor het vervangen van commerciële off-the-shelf producten (COTS).
- Voer hybride functionele en niet-functionele testactiviteiten uit.
- Externe afhankelijkheden of interfaces onderhouden.
Met deze taken in gedachten kiezen klanten doorgaans een van de volgende paden om mainframe- en midrangesystemen modernisatie uit te voeren:
Oerknal
Deze benadering is grotendeels gebaseerd op het watervalmodel voor softwarelevering, maar met iteraties in fasen. De big bang-benadering wordt meer gebruikt door klanten met kleine mainframe- of midrangesystemen en omgevingen met lage complexiteit vanwege een laag aantal regels code, lage toepassingsdichtheid en bekende verouderde systemen of programmeertalen.
Flexibele golven
Deze benadering volgt de Agile-principes van software-engineering. De Benadering van Agile-golven wordt meer gebruikt door klanten met grotere mainframe- of midrangesystemen en omgevingen met hoge complexiteit vanwege een groot aantal regels code, hoge toepassingsdichtheid, minder bekende systemen of programmeertalen, en een groot aantal afhankelijkheden en interfaces.
De keuze tussen deze paden is afhankelijk van de behoeften en scenario's van uw organisatie. Elk pad heeft voordelen en nadelen die u moet overwegen. In de volgende secties vindt u meer informatie over deze moderniseringsmethoden.
Big bang of waterval
Een big bang-migratie heeft doorgaans de volgende fasen:
Envisioning: Kickoff
Planning: Planningsartikelen identificeren en voorbereiden, zoals bereik, tijd en resources.
Gebouw: Begint na het plannen van producten worden goedgekeurd
In deze fase wordt ook verwacht dat al het werk voor afhankelijkheden is geïdentificeerd en dat vervolgens migratieactiviteiten kunnen beginnen. Er worden meerdere iteraties uitgevoerd om het migratiewerk te voltooien.
Stabiliseren of testen: begint wanneer de gemigreerde omgeving, afhankelijkheden en toepassingen worden getest op basis van de testregio's in de mainframe-omgeving.
Implementeren: Nadat alles is goedgekeurd, wordt de migratie live in productie genomen.
Organisaties die deze benadering doorgaans kiezen, richten zich op het vergrendelen van tijd, migratiebereik en resources. Dit pad klinkt als een positieve keuze, maar omvat de volgende risico's:
Migraties kunnen maanden of zelfs jaren duren.
Implementaties voor productie zijn riskanter.
De analyse die u aan het begin van het migratietraject uitvoert of tijdens de planning is niet meer nauwkeurig omdat deze informatie meestal verouderd is.
Organisaties richten zich doorgaans op uitgebreide documentatie om leveringsrisico's voor levering te verminderen.
De tijd die is besteed aan het verstrekken van planningartefacten veroorzaakt echter precies het tegenovergestelde effect. Als u zich richt op het plannen van meer dan het uitvoeren, ontstaan uitvoeringsvertragingen, waardoor de kosten in de lange termijn toenemen.
Flexibele golven
Een Agile-benadering is resultatengericht en gericht op het bouwen van software en niet op het plannen van producten. De eerste fasen van een Agile-levering kunnen chaos en complex zijn voor de organisatiebarrières die moeten worden opgesplitst en om het migratieteam uit te lijnen. Nadat het migratieteam zich echter verder heeft ontwikkeld na verschillende sprints van uitvoering, wordt het traject soepeler. Het doel van deze aanpak is om regelmatig functies uit te brengen voor productie en om eerder bedrijfswaarde te bieden dan met een big bang-benadering.
Een Agile-golvenmigratie heeft doorgaans de volgende sprints:
Sprint nul (0)
- Definieer het team, een eerste werkachterstand en de belangrijkste afhankelijkheden.
- Identificeer de functies en een MVP (Minimum Viable Product) die u wilt leveren.
- Start de gereedheid van mainframe met een geselecteerde set werkitems of gebruikersverhalen om het werk te starten.
Sprint 1, 2, ..., N
Elke sprint heeft een doel waarbij het team een verzendmentaliteit behoudt, wat betekent dat ze zich richten op het voltooien van migratiedoelen en het vrijgeven van producten voor productie. Het team kan een groep sprints gebruiken om een specifieke functie of een golf van functies te leveren. Elke functie bevat segmenten van integratieworkloads.
Gedeelde elementen, zoals taken en afhankelijkheden, bestaan en hebben invloed op de hele omgeving. Een succesvolle strategie is gericht op het gedeeltelijk inschakelen van taken, het opnieuw ontwerpen van toepassingen voor modernisering en het verlaten van de systemen met de meeste afhankelijkheden tot het einde om eerst de hoeveelheid migratiewerk te verminderen en vervolgens het bereik van de modernisering te voltooien.
Microsoft raadt aan om mainframe- en midrange systeemworkloads te moderniseren door een iteratief agile-model op basis van golven te volgen door te focussen op investeringen in het nieuwe platform, terwijl de groei van verouderde systemen wordt beperkt. Deze aanpak vermindert de implementatierisico's aanzienlijk door de bestaande bedrijfswaarde te behouden, terwijl de gemoderniseerde omgeving wordt ingevoerd. Op die manier kan uw team ook gebruikmaken van technologievaardigheden die uw bedrijf helpen concurrerender te zijn. In dit scenario kan Azure Logic Apps u helpen bij uw moderniseringstraject.
Moderniseringspatronen
Een goed ontwerp omvat factoren zoals consistentie en samenhang in het ontwerp en de implementatie van onderdelen, onderhoudbaarheid om het beheer en de ontwikkeling te vereenvoudigen, en herbruikbaarheid waarmee andere toepassingen en scenario's onderdelen en subsystemen opnieuw kunnen gebruiken. Voor toepassingen en services die in de cloud worden gehost, hebben beslissingen die tijdens de ontwerp- en implementatiefase zijn genomen een enorme impact op kwaliteit en de totale eigendomskosten.
Het Azure Architecture Center biedt geteste ontwerp- en implementatiepatronen waarmee het probleem wordt beschreven dat ze aanpakken, overwegingen voor het toepassen van het patroon en een voorbeeld op basis van Microsoft Azure. Hoewel er meerdere ontwerp- en implementatiepatronen bestaan, zijn enkele van de meest relevante patronen voor de modernisering van mainframes de patronen 'Anti-corruptielaag', 'Strangler Fig', 'Saga' en 'Choreograaf'.
Patroon Anti-corruptielaag
Ongeacht welke moderniseringsbenadering u selecteert, moet u een 'anti-corruptielaag' implementeren met behulp van Azure Logic Apps. Deze service wordt de gevel- of adapterlaag tussen het verouderde mainframe-systeem en Azure. Voor een effectieve aanpak identificeert u de mainframeworkloads om te integreren of naast elkaar te bestaan als mainframe-integratieworkloads. Maak een strategie voor elke integratieworkload. Dit is de set interfaces die u moet inschakelen voor het migreren van een mainframe-toepassing.
Zie Anti-corruptielaag voor meer informatie.
Strangler Fig-patroon
Nadat u de anti-corruptielaag hebt geïmplementeerd, vindt modernisering geleidelijk plaats. Voor deze fase moet u het patroon Strangler Fig gebruiken waarin u mainframeworkloads of -functies identificeert die u incrementeel kunt moderniseren. Als u bijvoorbeeld ervoor kiest om een CICS-toepassing te moderniseren, moet u niet alleen de CICS-programma's moderniseren, maar waarschijnlijk ook de 3270-toepassingen, samen met de bijbehorende externe afhankelijkheden, gegevens en taken.
Nadat u uiteindelijk alle workloads of functies in het mainframesysteem hebt vervangen door uw nieuwe systeem, voltooit u het migratieproces, wat betekent dat u uw verouderde systeem buiten gebruik kunt stellen.
Zie Strangler Fig-patroon voor meer informatie.
Saga- en Choreograafpatronen
Voor gedistribueerde transacties, zoals het protocol voor twee fasen doorvoeren (2PC), moeten alle deelnemers aan een transactie doorvoeren of terugdraaien voordat de transactie kan worden voortgezet. Hybride architecturen in de cloud werken beter na een uiteindelijke consistentieparadigma in plaats van een gedistribueerd transactiemodel.
Het ontwerppatroon 'Saga' is een manier om consistentie tussen services in gedistribueerde transactiescenario's te beheren. Een saga is een reeks transacties waarmee elke service wordt bijgewerkt en een bericht of gebeurtenis wordt gepubliceerd om de volgende transactiestap te activeren. Als een stap mislukt, voert de saga compenserende transacties uit die de voorgaande transacties bestrijden. Zie het patroon gedistribueerde transacties van Saga voor meer informatie.
In Azure Logic Apps kunnen werkstromen fungeren als choreografen om saga's te coördineren. Werkstroomacties zijn atomisch, zodat u ze afzonderlijk opnieuw kunt uitvoeren. Het actietype Bereik biedt de mogelijkheid om een groep acties alleen uit te voeren nadat een andere groep acties is geslaagd of mislukt. Azure Logic Apps voert compenserende transacties uit op bereikniveau, terwijl Azure Event Grid en Azure Service Bus het gebeurtenisbeheer bieden dat vereist is voor specifieke domeinen. Al deze services, waaruit Azure Integration Services bestaat, bieden de ondersteuning die klanten nodig hebben wanneer ze een betrouwbaar integratieplatform nodig hebben voor bedrijfskritieke scenario's. Zie Choreograafpatroon voor meer informatie.
Hoewel dit artikel betrekking heeft op verschillende moderniseringspatronen, vereisen complexe oplossingen veel meer patronen en dat u de moderniseringsdoelen van uw organisatie duidelijk begrijpt. Hoewel de taak om de waarde van verouderde activa uit te breiden lastig is, is deze optie de beste manier om investeringen in deze activa te behouden en hun bedrijfswaarde te verlengen.