Bewerken

Delen via


Een algemeen mainframe opnieuw hosten in Azure

Azure Virtual Machines
Azure Virtual Network
Azure Container Registry
Azure Kubernetes Service (AKS)
Azure Site Recovery

Opnieuw hosten is een manier om verouderde mainframe-toepassingen, intact, uit te voeren op een open systeem. Dit pad is de snelste manier om toepassingen uit uw mainframehardware te halen en uit te voeren op een Windows- of Linux-platform in een cloudeigen omgeving. Toepassingscode die is geschreven in verouderde talen, zoals COBOL of PL/1, worden naar behoren gemigreerd en opnieuw gecompileerd in de nieuwe omgeving zonder wijzigingen in de bedrijfslogica. Opnieuw hosten helpt om de logica van de toepassing te behouden. Tegelijkertijd minimaliseert het opnieuw hosten het risico en de kosten die gepaard gaan met het recoderen van de toepassing voor de nieuwe omgeving.

Opnieuw hosten is een rendabele methode om de uitdagingen van het onderhouden van oude mainframehardware aan te pakken. Meestal wordt 'lift and shift' genoemd, verplaatst het opnieuw hosten bedrijfskritieke en kerntoepassingen van het mainframe en worden ze gemigreerd naar de cloud. Met deze benadering verandert de onderliggende hardware, bijvoorbeeld van een IBM-mainframe naar x86. De functionele en bedrijfslogica zijn echter ongewijzigd. Deze migratie is het snelste en minst impactvol vanuit het perspectief van de eindgebruiker. De toepassing behoudt dezelfde interfaces en het uiterlijk waarmee de gebruikers vertrouwd zijn.

Voor teams die cloudfuncties verkennen, is het opnieuw hosten van toepassingen een uitstekende manier om cloudmogelijkheden te gebruiken, zoals automatisch schalen, beheerde opslag en containers. Deze architectuur toont een algemeen voorbeeld van opnieuw hosten waarin twee methodologieën voor het implementeren van workloads zijn gemarkeerd. U kunt Azure Kubernetes Service (AKS) of Azure Virtual Machines gebruiken. Welke methode u gebruikt, is afhankelijk van de draagbaarheid van de toepassing en van uw voorkeur.

Potentiële gebruikscases

Veel scenario's kunnen profiteren van opnieuw hosten in Azure. Hier volgen enkele mogelijke gebruiksvoorbeelden:

  • Kostenoptimalisatie: U wilt de hoge operationele en onderhoudskosten van mainframes-hardware en de bijbehorende licenties of software aanzienlijk verlagen.
  • Locatieneutraal: u bent van plan om een datacenter af te sluiten en wilt een maximaal beschikbaar, veilig en betrouwbaar alternatief platform voor het hosten van uw verouderde toepassingen.
  • Minimale onderbreking: u moet bedrijfskritieke mainframe-toepassingen migreren terwijl u de continuïteit van dagelijkse bedrijfsactiviteiten behoudt.
  • Minimale gevolgen voor de gebruiker: verplaats uw toepassingen van oude hardware, maar blijven uw gebruikers dezelfde of betere interfaces bieden.
  • Verwaarloosbare upskilling: toepassingen worden opnieuw gehost in de cloud zonder belangrijke codewijzigingen. Ze blijven uw ontwikkelteam voorzien van de vertrouwde codebasis en tegelijkertijd elimineren ze kostbare ontwikkeling, testen en opnieuw trainen op een nieuwere taal.

Mainframe-architectuur

Dit is de architectuur vóór de migratie.

Diagram met de mainframe-toepassingen vóór de migratie naar Azure.

Een Visio-bestand van deze architectuur downloaden.

Mainframe-gegevensstroom

  1. Invoer vindt plaats via TCP/IP, waaronder TN3270, HTTP en HTTPS.

  2. Invoer in het mainframe maakt gebruik van standaard mainframe-communicatieprotocollen.

  3. Ontvangende toepassingen kunnen batch- of onlinesystemen zijn.

  4. COBOL, PL/I, Assemblyer en andere compatibele talen worden uitgevoerd in een ingeschakelde omgeving.

  5. Gegevens- en databaseservices die worden gebruikt, zijn hiërarchische, netwerk- en relationele databases.

  6. Veelvoorkomende services zijn uitvoering van programma's, I/O-bewerkingen, foutdetectie en beveiliging binnen de omgeving.

  7. Middleware en hulpprogramma's beheren services zoals tapeopslag, wachtrijen, uitvoer en webservices binnen de omgeving.

  8. Besturingssystemen bieden de interface tussen de engine en de software die wordt uitgevoerd.

  9. Partities zijn nodig om afzonderlijke werkbelastingen uit te voeren en werktypen binnen de omgeving te scheiden.

Architectuur

Deze architectuur toont een oplossing die opnieuw wordt gehost in Microsoft Azure.

Diagram met de mainframe-toepassingen na migratie naar Azure.

Een Visio-bestand van deze architectuur downloaden.

Gegevensstroom

  1. Invoer komt meestal via ExpressRoute van externe clients of door andere toepassingen die momenteel worden uitgevoerd in Azure. In beide gevallen zijn TCP/IP-verbindingen de primaire methode voor verbinding met het systeem. Gebruikerstoegang wordt geboden via TLS-poort 443 voor toegang tot webtoepassingen. De presentatielaag van de webtoepassing kan ongewijzigd blijven om het opnieuw trainen van eindgebruikers te minimaliseren. Voor beheerderstoegang tot de VM's kunt u Azure Bastion-hosts gebruiken om de beveiliging te maximaliseren door open poorten te minimaliseren.

  2. Toegang tot de rekenclusters van de toepassing wordt uitgevoerd met behulp van een Azure Load Balancer. Met deze aanpak kunt u rekenresources uitschalen om het invoerwerk te verwerken. Zowel de load balancers op toepassingsniveau niveau 7 als niveau 4 van het netwerkprotocol zijn beschikbaar. Het type dat u gebruikt, is afhankelijk van de manier waarop de invoer van de toepassing het toegangspunt van het computercluster bereikt.

  3. Het gebruik van toepassings-rekenclusters is afhankelijk van of de toepassing ondersteuning biedt voor virtuele machines (VM's) in een rekencluster of dat de toepassing wordt uitgevoerd in een container die u implementeert in een container-rekencluster, zoals Kubernetes. De meeste mainframe-partnersoftware voor toepassingen die zijn geschreven in verouderde talen, geven de voorkeur aan het gebruik van VM's. Sommige mainframe systems partner software kan ook ondersteuning bieden voor implementatie in containers.

  4. Toepassingsservers ontvangen de invoer in de rekenclusters en delen toepassingsstatus en -gegevens met behulp van Azure Redis Cache of RDMA (Remote Direct Memory Access). De toepassingsservers hosten verschillende COBOL- of PL/1-toepassingsprogramma's. Een transactiesysteembeheerder is een emulator in Azure die CICS-workloads (Customer Information Control Systems) en IMS-workloads (Information Management Systems) kan verwerken. Een batchsysteememulator in Azure voert de rol van JCL (Job Control Language) uit.

  5. U kunt Azure-services of andere partnersoftware gebruiken die wordt gehost op VM's voor systeem-, hulpprogramma's en gegevensbeheer.

  6. Mainframe-gegevens worden gemigreerd naar Azure-databases. Azure biedt verschillende efficiënte gegevensopslagservices, zoals Azure SQL Database, SQL Server op Azure Virtual Machines en Azure SQL Managed Instance. Er zijn veel factoren waarmee u rekening moet houden bij het maken van een keuze, zoals het type workload, query's voor meerdere databases en vereisten voor doorvoeren in twee fasen. Azure-gegevensservices bieden schaalbare en maximaal beschikbare gegevensopslag die u kunt delen over meerdere rekenresources in een cluster. U kunt deze services geografisch redundant maken en deze vervolgens zo configureren dat als de failover plaatsvindt, het database-exemplaar voor herstel na noodgeval actief wordt.

  7. Met AKS kunt u uw mainframe-moderniseringsworkloads in Azure uitschalen en omlaag schalen om te profiteren van het cloudplatform. Wanneer u meerdere AKS-clusters implementeert, kiest u regio's waar AKS beschikbaar is. Vervolgens kunt u gekoppelde regio's gebruiken voor een zeer flexibele architectuur. Het is belangrijk om meerdere exemplaren van een AKS-cluster uit te voeren in meerdere regio's en in maximaal beschikbare configuraties.

  8. Azure Data Factory biedt gegevensopname en synchronisatie met meerdere gegevensbronnen, zowel binnen Azure als vanuit externe bronnen. Azure Blob Storage is een algemene landingszone voor externe gegevensbronnen.

  9. Gebruik Azure Site Recovery voor herstel na noodgevallen van de onderdelen van de VM en het containercluster. Azure Site Recovery repliceert en synchroniseert de productieomgeving naar de failoverregio.

Onderdelen

  • Virtuele machines: Virtuele machines is een on-demand, schaalbare computingresource. Een VM in Azure biedt u de flexibiliteit van virtualisatie zonder dat u de fysieke hardware hoeft te kopen en te beheren waarop de VM wordt uitgevoerd.

  • Azure Virtual Network: Virtual Network is de fundamentele bouwsteen voor uw privénetwerk in Azure. Met Virtual Network kunnen veel soorten Azure-resources, zoals virtuele machines, veilig met elkaar, internet en on-premises netwerken communiceren. Virtual Network is net als een traditioneel netwerk dat u in uw eigen datacenter gebruikt. Het biedt echter de voordelen van de infrastructuur van Azure, zoals schaal, beschikbaarheid en isolatie.

  • Azure Virtual Network Interface Cards: Met een netwerkinterface kan een Virtuele Azure-machine communiceren met internet-, Azure- en on-premises resources. Zoals in deze architectuur wordt weergegeven, kunt u meer netwerkinterfacekaarten toevoegen aan dezelfde Virtuele Azure-machine. Op deze manier hebben de solaris onderliggende VM's hun eigen toegewezen netwerkinterfaceapparaat en IP-adres.

  • Azure Disk Storage: Beheerde schijven zijn opslagvolumes op blokniveau die worden beheerd door Azure en worden gebruikt met Azure-VM's. De beschikbare typen schijven zijn Azure Ultra Disk Storage, Azure Premium SSD, Azure Standard SSD en Azure Standard HDD. Voor deze architectuur raden we Premium SSD of Ultra Disk Storage aan.

  • Azure Files: Azure Files biedt volledig beheerde bestandsshares in de cloud die toegankelijk zijn via het SMB-protocol (Server Message Block) van de industriestandaard. U kunt Azure-bestandsshares gelijktijdig koppelen door cloud- of on-premises implementaties van Windows, Linux en macOS.

  • Azure ExpressRoute: Met ExpressRoute kunt u uw on-premises netwerken uitbreiden naar de Microsoft-cloud via een privéverbinding die wordt gefaciliteerd door een connectiviteitsprovider. U kunt ook verbindingen tot stand brengen met Microsoft-cloudservices, zoals Microsoft Azure en Microsoft 365.

  • AKS: Implementeer en beheer containertoepassingen eenvoudiger met een volledig beheerde Kubernetes-service. Azure Kubernetes Service (AKS) biedt serverloze Kubernetes, een geïntegreerde ervaring voor continue integratie en continue levering (CI/CD), en beveiliging en governance op bedrijfsniveau. Verenig uw ontwikkelingsteam en operationele team op één platform om snel en met vertrouwen apps te bouwen, te leveren en te schalen.

  • Azure Container Registry: containerinstallatiekopieën en artefacten bouwen, opslaan, beveiligen, scannen, repliceren en beheren met een volledig beheerd, geografisch gerepliceerd exemplaar van OCI-distributie. Verbinding maken tussen omgevingen zoals AKS en Azure Red Hat OpenShift, en tussen Azure-services zoals App Service, Machine Learning en Batch.

  • Site Recovery: Site Recovery biedt een gemakkelijke implementatie, kosteneffectiviteit en betrouwbaarheid. Implementeer processen voor replicatie, failover en herstel via Azure Site Recovery, zodat uw toepassingen tijdens geplande en niet-geplande onderbrekingen nog steeds worden uitgevoerd.

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 Controlelijst ontwerpbeoordeling voor betrouwbaarheidvoor meer informatie.

  • Gebruik een op containers gebaseerde benadering voor implementatie om optimaal gebruik te maken van de mogelijkheden van Azure. Deze aanpak helpt als de toepassing op aanvraag moet schalen en elastische inrichting van capaciteit moet bereiken zonder dat de infrastructuur hoeft te worden beheerd. Hiermee kunt u ook gebeurtenisgestuurde automatische schaalaanpassing en triggers toevoegen. Een container bundelt alle software die nodig is voor uitvoering in één uitvoerbaar pakket. Het bevat de code van een toepassing samen met de gerelateerde configuratiebestanden, bibliotheken en afhankelijkheden die nodig zijn om de app uit te voeren.
  • U moet containerservices en de bijbehorende netwerk- en opslagonderdelen indelen en beheren. AKS is een uitstekende optie omdat het cluster- en resourcebeheer wordt geautomatiseerd. U wijst het aantal benodigde knooppunten aan en AKS past uw containers aan op de juiste knooppunten om optimaal gebruik te maken van resources. AKS biedt ook ondersteuning voor geautomatiseerde implementaties en terugdraaiacties, servicedetectie, taakverdeling en opslagindeling. En AKS ondersteunt zelfherstel. Als een container mislukt, start AKS een nieuwe. U kunt geheimen en configuratie-instellingen ook veilig opslaan buiten de containers.
  • De architectuur maakt gebruik van Site Recovery om Virtuele Azure-machines te spiegelen naar een secundaire Azure-regio voor snelle failover en herstel na noodgevallen als een Azure-datacenter uitvalt.
  • Om de uptime van de workloads op de AKS-implementatiebenadering te maximaliseren, is het een best practice voor bedrijfscontinuïteit om de toepassing in meerdere AKS-clusters in verschillende regio's te implementeren. Uw toepassingsstatus kan beschikbaar zijn voor meerdere clusters, omdat AKS opslagreplicatie toestaat in meerdere regio's.
  • Als u de uptime van de workloads op een implementatiebenadering op basis van een VM wilt maximaliseren, kunt u overwegen om virtuele-machineschaalsets van Azure te gebruiken. Met Virtuele-machineschaalsets kunt u een groep vm's met gelijke taakverdeling maken en beheren. Het aantal VM-exemplaren kan automatisch toenemen of afnemen in reactie op vraag of een ingesteld schema. Schaalsets bieden hoge beschikbaarheid voor uw toepassingen en bieden u de mogelijkheid om veel VM's centraal te beheren, te configureren en bij te werken.

Beveiliging

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie voor meer informatie controlelijst ontwerpbeoordeling voor Security.

  • Deze oplossing maakt gebruik van een Azure-netwerkbeveiligingsgroep om verkeer tussen Azure-resources te beheren. Zie Netwerkbeveiligingsgroepen voor meer informatie.
  • Azure Bastion maximaliseert de beveiliging van beheerderstoegang door open poorten te minimaliseren. Bastion biedt veilige en naadloze RDP-/SSH-connectiviteit met virtuele netwerk-VM's rechtstreeks vanuit Azure Portal via TLS.

Kostenoptimalisatie

Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie controlelijst ontwerpbeoordeling voor kostenoptimalisatievoor meer informatie.

Azure biedt kostenoptimalisatie door te worden uitgevoerd op Windows-VM's. Met Windows-VM's kunt u de VM's uitschakelen wanneer deze niet in gebruik zijn en een schema uitvoeren voor bekende gebruikspatronen. Azure identificeert het juiste aantal of de juiste resourcetypen, analyseert uitgaven in de loop van de tijd en schaalt om te voldoen aan zakelijke behoeften zonder te veel te besteden.

Gebruik de Azure-prijscalculator om de kosten van de services in deze architectuur te schatten.

Operationele uitmuntendheid

Operational Excellence behandelt de operationele processen die een toepassing implementeren en deze in productie houden. Zie controlelijst ontwerpbeoordeling voor Operational Excellencevoor meer informatie.

  • De doelarchitectuur is functioneel met Azure Cloud Services.
  • De implementatie op basis van containers bevordert de acceptatie van DevOps- en Agile-werkprincipes.
  • U beschikt over volledige flexibiliteit van ontwikkelings- en productie-implementatieopties.

Prestatie-efficiëntie

Prestatie-efficiëntie is de mogelijkheid van uw workload om te schalen om te voldoen aan de eisen die gebruikers op een efficiënte manier stellen. Zie controlelijst ontwerpbeoordeling voor prestatie-efficiëntievoor meer informatie.

  • Prestatie-efficiëntie is ingebouwd in deze oplossing vanwege de load balancers. Als één presentatie of transactieserver mislukt, moet de server achter de load balancer de workload dragen.
  • Kubernetes biedt een automatische schaalaanpassing van clusters. Met de automatische schaalaanpassing wordt het aantal knooppunten aangepast op basis van de aangevraagde rekenresources in de knooppuntgroep.

Medewerkers

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

Hoofdauteur:

Andere inzender:

Volgende stappen

Neem contact op met legacy2azure@microsoft.com voor meer informatie.