Online transactieverwerking van IBM z/OS in Azure

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

OLTP-systemen (Online Transaction Processing) communiceren rechtstreeks met gebruikers en zijn het gezicht van het bedrijf. Met een dynamisch aanpasbare infrastructuur kunnen bedrijven hun producten snel realiseren en lanceren om hun gebruikers te verrukken.

Architectuur

In het volgende diagram ziet u de architectuur van de workload die moet worden gemigreerd, een OLTP-systeem dat wordt uitgevoerd op een z/OS-mainframe:

OLTP-architectuur op z/OS

Een Visio-bestand van deze architectuur downloaden.

Workflow

De volgende werkstroom komt overeen met het voorgaande diagram:

  1. Gebruikers maken verbinding met het mainframe via TCP/IP met behulp van standaard-mainframeprotocollen zoals TN3270 en HTTPS.
  2. De transactiebeheerders communiceren met de gebruikers en roepen de toepassing aan om te voldoen aan gebruikersaanvragen.
  3. In de front-end van de toepassingslaag communiceren gebruikers met de CICS/IMS-schermen of met webpagina's.
  4. De transactiebeheerders gebruiken de bedrijfslogica die is geschreven in COBOL of PL/1 om de transacties te implementeren.
  5. Toepassingscode maakt gebruik van opslagmogelijkheden van de gegevenslaag, meestal DB2, IMS DB of VSAM.
  6. Naast transactieverwerking bieden andere services verificatie, beveiliging, beheer, bewaking en rapportage. Deze services communiceren met alle andere services in het systeem.

Hier ziet u hoe u deze architectuur naar Azure migreert.

Diagram met een architectuur voor het migreren van een Z/OS OLTP-workload.

Een Visio-bestand van deze architectuur downloaden.

  1. Mainframe-gebruikers zijn bekend met 3270 terminals en on-premises connectiviteit. In het gemigreerde systeem communiceren ze met Azure-toepassingen via openbaar internet of via een privéverbinding die is geïmplementeerd met Azure ExpressRoute. Microsoft Entra-id biedt verificatie.

  2. Invoeraanvragen gaan naar een globale load balancer-service, zoals Azure Front Door of Azure Traffic Manager. De load balancer kan een geografisch verspreide gebruikersbasis leveren. Hiermee worden de aanvragen gerouteerd volgens regels die zijn gedefinieerd voor de ondersteunde workloads. Deze load balancers kunnen worden gecoördineerd met Azure-toepassing Gateway of Azure Load Balancer voor taakverdeling van de toepassingslaag. De Azure Content Delivery Network-service slaat statische inhoud op in de edge-servers voor snelle reactie, beveiligd met behulp van de WAF-service (Web Application Firewall).

  3. De front-end van de toepassingslaag maakt gebruik van Azure-services zoals Azure-app Service om toepassingsschermen te implementeren en om met gebruikers te communiceren. De schermen zijn gemigreerde versies van de mainframe-schermen.

  4. COBOL- en PL/1-code in de back-end van de toepassingslaag implementeert de bedrijfslogica. De code kan gebruikmaken van services zoals Azure Functions, WebJobs en Azure Spring Apps-microservices. Toepassingen kunnen worden uitgevoerd in een AKS-container (Azure Kubernetes Service).

  5. Een in-memory gegevensarchief versnelt OLTP-toepassingen met hoge doorvoer. Een dergelijk archief is IN-Memory OLTP, een functie van Azure SQL Database en Azure SQL Managed Instance. Een andere is Azure Cache voor Redis.

  6. De gegevenslaag kan bijvoorbeeld het volgende omvatten:

    1. Bestanden, tabellen en blobs die zijn geïmplementeerd met behulp van Azure Storage-services.
    2. Relationele databases uit de Azure SQL-serie.
    3. Azure-implementaties van de opensourcedatabases PostgreSQL en MySQL.
    4. Azure Cosmos DB, een NoSQL-database.

    Deze slaat gegevens op die zijn gemigreerd vanuit het mainframe voor gebruik door de toepassingslaag.

  7. Systeemeigen Azure-services, zoals Application Insights en Azure Monitor, bewaken proactief de status van het systeem. U kunt de Monitor-logboeken integreren met behulp van een Azure-dashboard.

Onderdelen

Deze architectuur bestaat uit verschillende Azure-cloudservices en is onderverdeeld in vier categorieën resources: netwerken en identiteit, toepassing, opslag en bewaking. De services voor elk en hun rollen worden beschreven in de volgende secties.

Netwerken en identiteit

  • Azure ExpressRoute heeft privéverbindingen tussen on-premises infrastructuur en Azure-datacenters.
  • Microsoft Entra ID is een service voor identiteits- en toegangsbeheer die kan worden gesynchroniseerd met een on-premises adreslijst.
  • Azure Front Door biedt wereldwijde HTTP-taakverdeling met directe failover. De cacheoptie kan de levering van statische inhoud verkorten.
  • Azure Traffic Manager stuurt binnenkomende DNS-aanvragen door op basis van uw keuze aan verkeersrouteringsmethoden.
  • Azure Web Application Firewall helpt web-apps te beschermen tegen schadelijke aanvallen en veelvoorkomende webproblemen, zoals SQL-injectie en scripts op meerdere sites.
  • Azure Content Delivery Network (CDN) slaat statische inhoud in de cache op in edge-servers voor snelle reactie en maakt gebruik van netwerkoptimalisaties om de reactie op dynamische inhoud te verbeteren. CDN is vooral handig wanneer de gebruikersbasis wereldwijd is.
  • Azure-toepassing Gateway is een toepassingsleveringscontrollerservice. Het werkt op laag 7, de toepassingslaag en heeft verschillende mogelijkheden voor taakverdeling.
  • Azure Load Balancer is een load balancer van laag 4 (TCP, UDP). In deze architectuur biedt het taakverdelingsopties voor Spring Apps en AKS.

Toepassing

  • Azure API Management ondersteunt het publiceren, routeren, beveiligen, vastleggen en analyseren van API's. U kunt bepalen hoe de gegevens worden gepresenteerd en uitgebreid en welke apps er toegang toe hebben. U kunt de toegang tot uw apps beperken of derden toestaan.
  • Azure-app Service is een volledig beheerde service voor het bouwen, implementeren en schalen van web-apps. U kunt apps bouwen met behulp van .NET, .NET Core, Node.js, Java, Python of PHP. De apps kunnen worden uitgevoerd in containers of in Windows of Linux. In een mainframemigratie kunnen de front-endschermen of webinterface worden gecodeerd als OP HTTP gebaseerde REST API's. Ze kunnen worden gescheiden volgens de mainframe-toepassing en kunnen staatloos zijn om een microservicesgebaseerd systeem te organiseren.
  • WebJobs is een functie van Azure-app Service waarmee een programma of script wordt uitgevoerd in hetzelfde exemplaar als een web-app, API-app of mobiele app. Een webtaak kan een goede keuze zijn voor het implementeren van deelbare en herbruikbare programmalogica. Zie Achtergrondtaken uitvoeren met WebJobs in Azure-app Service voor technische informatie.
  • Azure Kubernetes Service (AKS) is een volledig beheerde Kubernetes-service voor het implementeren en beheren van toepassingen in containers. AKS vereenvoudigt de implementatie van een beheerd AKS-cluster in Azure door de operationele overhead naar Azure te offloaden.
  • Azure Spring Apps is een volledig beheerde Spring-service, die gezamenlijk wordt gebouwd en beheerd door Microsoft en VMware. Hiermee kunt u eenvoudig Spring-microservices implementeren, beheren en uitvoeren en Spring-toepassingen schrijven met java of .NET.
  • Azure Service Bus is een betrouwbare cloudberichtenservice voor eenvoudige hybride integratie. Service Bus- en Storage-wachtrijen kunnen de front-end verbinden met de bedrijfslogica in het gemigreerde systeem.
  • Azure Functions biedt een omgeving voor het uitvoeren van kleine stukjes code, ook wel functies genoemd, zonder dat er een toepassingsinfrastructuur hoeft te worden gemaakt. U kunt het gebruiken om bulkgegevens te verwerken, systemen te integreren, met IoT te werken en eenvoudige API's en microservices te bouwen. Met microservices kunt u servers maken die verbinding maken met Azure-services en altijd up-to-date zijn.
  • Azure Cache voor Redis is een volledig beheerde cacheservice in het geheugen voor het delen van gegevens en status tussen rekenresources. Het omvat zowel de opensource Redis (OSS Redis) als een commercieel product van Redis Labs (Redis Enterprise) als een beheerde service. U kunt de prestaties van OLTP-toepassingen met hoge doorvoer verbeteren door ze te ontwerpen om te schalen en om gebruik te maken van een gegevensarchief in het geheugen, zoals Azure Cache voor Redis.

Storage

Controleren

  • Azure Monitor verzamelt, analyseert en handelt op persoonlijke gegevens uit uw Azure- en on-premises omgevingen.
  • Log Analytics is een hulpprogramma in De Azure-portal dat wordt gebruikt om query's uit te voeren op Logboeken met behulp van een krachtige querytaal. U kunt interactief met de resultaten van uw query's werken of deze gebruiken met andere Azure Monitor-functies, zoals waarschuwingen voor logboekquery's of werkmappen. Zie Overzicht van Log Analytics in Azure Monitor voor meer informatie.
  • Application Insights is een functie van Monitor die bewaking op codeniveau biedt van toepassingsgebruik, beschikbaarheid en prestaties. Het bewaakt de toepassing, detecteert toepassingsafwijkingen, zoals middelmatige prestaties en fouten, en verzendt persoonlijke gegevens naar Azure Portal. U kunt Application Insights ook gebruiken voor logboekregistratie, gedistribueerde tracering en aangepaste metrische toepassingsgegevens.
  • Azure Monitor-waarschuwingen zijn een functie van Monitor. Zie Waarschuwingen voor metrische gegevens maken, weergeven en beheren met behulp van Azure Monitor voor meer informatie.

Scenariodetails

Met steeds veranderende bedrijfsbehoeften en -gegevens moeten toepassingen worden geproduceerd en geschaald zonder dat er infrastructuurproblemen ontstaan. Deze voorbeeldworkload laat zien hoe u een z/OS mainframe OLTP-toepassing kunt migreren naar een veilig, schaalbaar en maximaal beschikbaar systeem in de cloud, met behulp van PaaS-services (Platform as a Service). Een dergelijke migratie helpt bedrijven in financiën, gezondheid, verzekeringen en detailhandel om tijdlijnen voor toepassingslevering te minimaliseren en helpt de kosten van het uitvoeren van de toepassingen te verlagen.

Potentiële gebruikscases

Deze architectuur is ideaal voor OLTP-workloads met deze kenmerken:

  • Ze dienen een internationale gebruikersbasis.
  • Hun gebruik varieert in de loop van de tijd aanzienlijk, zodat ze profiteren van flexibele schaling en op gebruik gebaseerde prijzen.

Overwegingen

Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die kunnen worden gebruikt om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie.

Betrouwbaarheid

Betrouwbaarheid zorgt ervoor dat uw toepassing kan voldoen aan de toezeggingen die u aan uw klanten hebt gedaan. Zie Overzicht van de betrouwbaarheidspijler voor meer informatie.

  • Deze OLTP-architectuur kan in meerdere regio's worden geïmplementeerd en kan een geo-gerepliceerde gegevenslaag hebben.
  • De Azure Database Services ondersteunen zoneredundantie en kunnen een failover naar een secundair knooppunt uitvoeren als er een storing optreedt of om onderhoudsactiviteiten toe te staan.

Beveiliging

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie Overzicht van de beveiligingspijler voor meer informatie.

  • ExpressRoute maakt een privéverbinding met Azure vanuit een on-premises omgeving. U kunt ook site-naar-site-VPN gebruiken.
  • Microsoft Entra ID kan resources verifiëren en de toegang beheren met behulp van op rollen gebaseerd toegangsbeheer van Azure.
  • Databaseservices in ondersteuning voor Azure verschillende beveiligingsopties, zoals data encryption at rest.
  • Zie Overzicht van de beveiligingspijler voor algemene richtlijnen voor het ontwerpen van veilige oplossingen.

Kostenoptimalisatie

Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.

Gebruik de Azure-prijscalculator om de kosten voor uw implementatie te schatten.

Operationele uitmuntendheid

Operationele uitmuntendheid omvat de operationele processen die een toepassing implementeren en deze in productie houden. Zie Overzicht van de operationele uitmuntendheidpijler voor meer informatie.

  • In dit scenario worden Azure Monitor en Application Insights gebruikt om de status van de Azure-resources te bewaken. U kunt waarschuwingen instellen voor proactief beheer.
  • Zie Betrouwbare Azure-toepassingen ontwerpen voor hulp bij tolerantie in Azure.

Prestatie-efficiëntie

Prestatie-efficiëntie is de mogelijkheid om op efficiënte wijze uw werkbelasting te schalen om te voldoen aan de vereisten die gebruikers eraan stellen. Zie overzicht van de pijler Prestatie-efficiëntie voor meer informatie.

  • Deze architectuur maakt gebruik van Azure PaaS-services zoals App Service, met mogelijkheden voor automatisch schalen.
  • Zie Automatisch schalen voor hulp bij automatisch schalen in Azure.

Medewerkers

Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.

Hoofdauteur:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen

Zie de volgende gerelateerde architecturen en verwante technische informatie: