Umgestalten von Mainframeanwendungen mit Astadia
Die automatisierte COBOL-Refactoringlösung von Astadia stellt cloudfähige Anwendungen und Datenbanken bereit, die funktionell ihren älteren Pendants entsprechen. Die umgestalteten Anwendungen werden als Azure-Anwendungen auf VMs ausgeführt, die von Microsoft Azure Virtual Machines bereitgestellt werden. Azure ExpressRoute macht sie für Benutzer verfügbar, und Azure Load Balancer verteilt die Last.
Mainframearchitektur
Die folgende Mainframearchitektur stellt die Art von System dar, die für die Astadia-Refactoringlösung geeignet ist.
Laden Sie eine Visio-Datei dieser Architektur herunter.
Datenfluss
- TN3270- und HTTP(S)-Benutzereingaben erfolgen über TCP/IP.
- Bei Eingaben für den Mainframe werden standardmäßige Mainframeprotokolle verwendet.
- Die Eingabe wird von Batch- und Onlineanwendungen verarbeitet.
- Anwendungen in COBOL, PL/I, Assembler und anderen Programmiersprachen werden in einer geeigneten Umgebung ausgeführt.
- Daten werden in Dateien sowie in hierarchischen, Netzwerk- und relationalen Datenbanken gespeichert.
- Zu den häufig verwendeten Diensten zählen Programmausführung, E/A-Vorgänge, Fehlererkennung und Schutz innerhalb der Umgebung.
- Middleware und Hilfsdienste verwalten Bandspeicher, Warteschlangen, Ausgaben und Webaktivitäten.
- Jedes Betriebssystem wird in einer eigenen Partition ausgeführt.
- Partitionen trennen verschiedene Workloads oder Arbeitstypen.
Azure-Architektur
Hier sehen Sie eine Azure-Architektur, mit der die Mainframefunktionen durch umgestaltete Anwendungen ersetzt werden können.
Laden Sie eine Visio-Datei dieser Architektur herunter.
Datenfluss
- Eingaben werden von Remoteclients und anderen Benutzern über ExpressRoute gesendet. TCP/IP ist die primäre Methode zum Herstellen einer Verbindung mit dem System.
- Lokale Benutzer greifen über den Transport Layer Security (TLS)-Port 443 auf webbasierte Anwendungen zu. Die Benutzeroberflächen bleiben unverändert, um den Schulungsaufwand für Endbenutzer zu minimieren.
- Für den lokalen Administratorzugriff werden Azure Bastion-Hosts verwendet.
- Azure-Benutzer stellen mittels Peering virtueller Netzwerke eine Verbindung mit dem System her.
- Der Zugriff auf die Anwendungscomputecluster wird von Azure Load Balancer verwaltet. Load Balancer unterstützt Computeressourcen mit horizontaler Skalierung für die Verarbeitung von Eingaben. Der Dienst wird je nach Anwendungseingabe auf Ebene 7 (Anwendungsebene) oder Ebene 4 (Netzwerkebene) ausgeführt.
- Astadia-Laufzeitbibliotheken führen umgestaltete Anwendungen unter Azure Virtual Machines aus. Computeressourcen verwenden verwaltete Azure SSD Premium- oder Azure Disk Storage Ultra-Datenträger mit beschleunigtem Netzwerkbetrieb.
- Datendienste in den Anwendungsclustern unterstützen mehrere Verbindungen mit persistenten Datenquellen. Azure Private Link stellt innerhalb des virtuellen Netzwerks private Konnektivität mit Azure-Diensten bereit. Zu den Datenquellen zählen Datendienste wie Azure SQL-Datenbank und Azure Database for PostgreSQL.
- Der Datenspeicher ist je nach Nutzung lokal redundant oder georedundant. Es handelt sich dabei um eine Mischung aus folgenden Speicheroptionen:
- Hochleistungsspeicher:
- SSD Premium
- Disk Storage Ultra
- Azure SSD Standard, einschließlich Blob-, Archiv- und Sicherungsspeicher
- Hochleistungsspeicher:
- Azure-Datendienste bieten skalierbaren und hoch verfügbaren Datenspeicher, der von Computeclustern gemeinsam genutzt wird. Der Speicher kann georedundant sein.
- Azure Blob Storage dient als Zielzone für Daten aus externen Datenquellen.
- Azure Data Factory erfasst und synchronisiert Daten aus mehreren Azure-Datenquellen und externen Datenquellen.
- Azure Site Recovery ermöglicht die Notfallwiederherstellung von VMs und Containerclusterkomponenten.
- Dienste wie Microsoft Entra ID, Azure-Netzwerk, Azure DevOps, Azure Stream Analytics, Azure Databricks, GitHub und Power BI können problemlos mit dem modernisierten System integriert werden.
Komponenten
Azure Bastion ist ein vollständig verwalteter Dienst, der Remotedesktopprotokoll (RDP) oder SECURE Shell (SSH)-Konnektivität mit virtuellen Netzwerk-VMs aus dem Azure-Portal über TLS bereitstellt. Azure Bastion maximiert die Zugriffssicherheit für Administratoren, indem die Anzahl offener Ports minimiert wird. In dieser Architektur bietet Azure Bastion sicheren administrativen Zugriff auf die virtuellen Computer, die die umgestalteten COBOL-Anwendungen hosten.
Azure Data Factory ist ein Extrakt-, Übertragungs- und Lastdienst (ETL)-Dienst für die serverlose Skalierung von Datenintegration und Datentransformation. Es bietet eine codefreie Benutzeroberfläche für intuitive Dokumenterstellung und einseitige Glasüberwachung und -verwaltung. In dieser Architektur bietet Data Factory Datenintegrations- und Transformationsfunktionen zum Migrieren und Verarbeiten von Mainframedaten in der umgestalteten Lösung.
Azure Storage ist skalierbarer, sicherer Cloudspeicher für alle Ihre Daten, Anwendungen und Workloads. In dieser Architektur bietet Azure Storage verschiedene Speicheroptionen zur Unterstützung der Datenanforderungen der umgestalteten Großrechneranwendungen.
Azure Disk Storage ist ein hochleistungsfähiger, permanenter Blockspeicher für unternehmenskritische Anwendungen. Verwaltete Azure-Datenträger sind Speichervolumes auf Blockebene, die von Azure auf VMs verwaltet werden. Die verfügbaren Datenträgertypen sind Azure Disk Storage Ultra, SSD Premium, SSD Standard und HDD Standard. In dieser Architektur bietet Azure Disk Storage leistungsstarken Speicher für die umgestalteten Anwendungen mithilfe von Premium SSD oder Ultra Disk Storage.
Azure Files ist ein vollständig verwalteter Dateifreigabedienst, der vollständig verwaltete Dateifreigaben in der Cloud bereitstellt, auf die über das Branchenstandardprotokoll Server Message Block (SMB) zugegriffen wird. Cloudbasierte und lokale Windows-, Linux- und macOS-Bereitstellungen haben Zugriff auf Freigaben, indem sie Dateifreigaben gleichzeitig einbinden. In dieser Architektur bietet Azure Files freigegebenen Dateispeicher, auf den von mehreren Instanzen der umgestalteten Anwendungen zugegriffen werden kann.
Azure NetApp Files ist ein Dateifreigabedienst auf Unternehmensniveau, der Azure-Dateifreigaben auf Unternehmensniveau bereitstellt, die von NetApp unterstützt werden. Azure NetApp Files erleichtert Es Unternehmen, komplexe, dateibasierte Anwendungen zu migrieren und auszuführen, ohne Code zu ändern. In dieser Architektur bietet Azure NetApp Files leistungsstarken Dateispeicher für umgestaltete Großrechneranwendungen auf Unternehmensniveau, die erweiterte Dateisystemfunktionen erfordern.
Azure Blob Storage ist ein skalierbarer und sicherer Objektspeicher für Archive, Data Lakes, Hochleistungscomputing, maschinelles Lernen und cloudnative Workloads. In dieser Architektur bietet Blob Storage Objektspeicher für unstrukturierte Daten und Archivierungsanforderungen der umgestalteten Großrechneranwendungen.
Azure Virtual Network ist der Grundbaustein für private Azure-Netzwerke. VMs in virtuellen Netzwerken kommunizieren sicher miteinander sowie mit dem Internet und lokalen Netzwerken. Ein virtuelles Netzwerk ähnelt einem herkömmlichen lokalen Netzwerk, bietet aber die Vorteile der Azure-Infrastruktur wie Skalierbarkeit, Hochverfügbarkeit und Isolation. In dieser Architektur bietet Virtual Network die sichere Netzwerkgrundlegung und Konnektivität für alle Komponenten des umgestalteten Mainframesystems.
ExpressRoute ist ein Konnektivitätsdienst, der lokale Netzwerke über eine private, dedizierte Glasfaserverbindung von einem Konnektivitätsanbieter in Azure erweitert. ExpressRoute stellt Verbindungen mit Microsoft-Clouddiensten wie Azure und Microsoft 365 her. In dieser Architektur bietet ExpressRoute sichere Verbindungen mit hoher Bandbreite zwischen lokalen Mainframeumgebungen und den umgestalteten Anwendungen, die auf Azure ausgeführt werden.
Lastenausgleich ist ein Netzwerklastenausgleichsmodul, das eingehenden Datenverkehr an die Computeressourcencluster verteilt. Der Dienst verteilt Datenverkehr mithilfe konfigurierbarer Regeln und anderer Kriterien. In dieser Architektur bietet Load Balancer hohe Verfügbarkeit und Skalierbarkeit für die umgestalteten Großrechneranwendungen, indem der Benutzerdatenverkehr über mehrere VM-Instanzen verteilt wird.
Private Verknüpfung ist ein Dienst, der private Verbindungen zwischen virtuellen Netzwerken und Azure-Diensten bereitstellt. Private Link vereinfacht die Netzwerkarchitektur und schützt die Verbindung zwischen Azure-Endpunkten, indem der Zugriff über das öffentliche Internet verhindert wird. In dieser Architektur ermöglicht Private Link sichere, private Verbindungen zwischen den umgestalteten Anwendungen und der Azure-Plattform als Dienstdienste (PaaS).
Azure bietet eine Auswahl von vollständig verwalteten relationalen, NoSQL- und In-Memory-Datenbanken, die den Anforderungen moderner Anwendungen entsprechen. Die automatisierte Infrastrukturverwaltung bietet Skalierbarkeit, Verfügbarkeit und Sicherheit. Eine Übersicht über die Datenbanktypen finden Sie unter Datenbankoptionen in Azure. In dieser Architektur bieten Azure-Datenbanken dauerhafte Datenspeicherlösungen zum Ersetzen von Mainframedatenbanksystemen.
Azure Cosmos DB ist eine vollständig verwaltete schnelle NoSQL-Datenbank mit offenen APIs für jeden Maßstab. In dieser Architektur bietet Azure Cosmos DB global verteilte NoSQL-Datenbankdienste für umgestaltete Anwendungen, die flexible, skalierbare Datenspeicher erfordern.
Azure Database for PostgreSQL ist ein vollständig verwalteter Datenbankdienst, der auf der relationalen Open-Source-Postgres-Datenbank-Engine basiert. Für Anwendungen, die eine höhere Skalierbarkeit und Leistung erfordern, eignet sich die Option für die Hyperscale (Citus)-Bereitstellung, bei der Abfragen mithilfe von Sharding über mehrere Computer hinweg skaliert werden. In dieser Architektur stellt Azure Database for PostgreSQL open-source relationale Datenbankdienste für umgestaltete Anwendungen bereit, die PostgreSQL-Funktionen erfordern.
Azure SQL-Datenbank ist eine vollständig verwaltete Datenbank-Engine. Azure SQL-Datenbank wird immer in der aktuellen stabilen Version von SQL Server und unter einem gepatchten Betriebssystem mit hoher Verfügbarkeit ausgeführt. Zu den integrierten Datenbankverwaltungsfunktionen zählen Upgrades, Patches, Sicherungen und Überwachung. In dieser Architektur stellt DIE SQL-Datenbank verwaltete relationale Datenbankdienste für umgestaltete Anwendungen bereit, die SQL Server-Kompatibilität erfordern.
Site Recovery ist ein Notfallwiederherstellungsdienst, der VMs in eine sekundäre Azure-Region für schnelles Failover und Notfallwiederherstellung spiegelt, wenn ein Azure-Rechenzentrum fehlschlägt. In dieser Architektur bietet Site Recovery Geschäftskontinuitäts- und Notfallwiederherstellungsfunktionen für die umgestalteten Großrechneranwendungen.
Virtuelle Computer sind ein Computedienst, der viele Größen und Typen von bedarfsorientierten, skalierbaren VMs bereitstellt. Durch die Verwendung virtueller Computer erhalten Sie die Flexibilität der Virtualisierung, und Sie müssen keine physische Hardware kaufen und warten. In dieser Architektur hosten virtuelle Computer die umgestalteten COBOL-Anwendungen und stellen die Computeinfrastruktur für die Ausführung der modernisierten Workloads bereit.
Szenariodetails
Es gibt wichtige Gründe, warum Unternehmen ihre COBOL- und Mainframesysteme ersetzen sollten:
- Mangel an Fachwissen: Entwickler, die mit COBOL- und Mainframetechnologie vertraut sind, gehen nach und nach in den Ruhestand, und nur wenige Entwickler wurden dafür geschult, sie zu ersetzen. Es gibt immer weniger entsprechend qualifizierte Entwickler, und die Kosten und Risiken der COBOL-Nutzung nehmen zu.
- Eingeschränkte Flexibilität: COBOL und die zugrunde liegenden Systeme, die diese Programmiersprache unterstützen, wurden nicht für moderne cloudbasierte Anwendungen entwickelt. Sie sind unflexibel und schwer zu integrieren.
- Hohe Kosten: Die Kosten für IBM-Mainframehardware und -software sind hoch. Die Lizenzierungs- und Wartungsgebühren für ergänzende Mainframeanwendungen und -datenbanken steigen.
Es gibt eine Lösung für COBOL- und Mainframesysteme. Die automatisierte COBOL-Refactoringlösung von Astadia stellt cloudfähige Anwendungen und Datenbanken bereit, die funktionell ihren älteren Pendants entsprechen. Die umgestalteten Anwendungen werden als Azure-Anwendungen auf VMs ausgeführt, die von Microsoft Azure Virtual Machines bereitgestellt werden. Azure ExpressRoute macht sie für Benutzer verfügbar, und Azure Load Balancer verteilt die Last.
Das Refactoring reduziert die Kosten und ermöglicht eine tiefere Integration sowie Anpassungen zur Erfüllung der geschäftlichen Anforderungen. Die mit COBOL und dem Mainframe einhergehenden Probleme und Kosten gehören der Vergangenheit an, und es eröffnen sich ganz neue Qualitäts- und Skalierungsmöglichkeiten:
- Automatisierte Tests und Qualitätssicherung
- Docker und Kubernetes für die Containerbereitstellung und Orchestrierung
Die Refactoringlösung erstellt Anwendungen, die Folgendes bieten:
- Sie entsprechen funktionell den Originalanwendungen.
- Sie werden in Java oder C# geschrieben.
- Sie folgen objektorientierten Konzepten und Paradigmen.
- Sie sind einfach zu warten.
- Sie funktionieren genauso gut oder besser als die Anwendungen, die sie ersetzen.
- Sie sind cloudfähig.
- Sie werden mithilfe einer standardbasierten DevOps-Toolkette und mit bewährten Methoden bereitgestellt.
Der Refactoringprozess umfasst die Flownormalisierung, die Umstrukturierung des Codes, die Datenebenenextraktion, die Anpassung des Datenmodells und die Paketierung für die Nachbildung. Er identifiziert geklonten Code und ersetzt ihn durch freigegebene Objekte, um die Wartung und Verwaltung zu vereinfachen. Der Prozess identifiziert und entfernt durch die Analyse von Daten- und Steuerungsabhängigkeiten auch toten Code.
Java- und C#-Entwickler passen umgestaltete Anwendungen zur Optimierung für die Cloud mithilfe von standardmäßigen DevOps-Tools und CI/CD-Konzepten (Continuous Integration und Continuous Delivery) an. Solche Tools und Methoden sind für Mainframeanwendungen nicht verfügbar. Die Optimierung bietet Effizienz und geschäftlichen Nutzen wie etwa Elastizität, differenzierte Dienstdefinitionen und die einfache Integration in cloudnative Dienste.
Mögliche Anwendungsfälle
Automatisiertes Refactoring ist für die meisten COBOL-Dialekte und -Plattformen verfügbar – einschließlich z/OS, OpenVMS und VME. Diese Lösung kann z. B. von Organisationen verwendet werden, die Folgendes erreichen möchten:
- Modernisieren der Infrastruktur und Befreiung von den hohen Kosten, den Einschränkungen und der mangelnden Flexibilität von Mainframesystemen
- Vermeiden der Risiken im Zusammenhang mit dem Mangel an COBOL- und Mainframeentwicklern
- Senken der Betriebs- und Investitionskosten
- Verschieben von Mainframeworkloads in die Cloud, ohne die Kosten und Risiken langwieriger manueller erneuter Generierungen
- Migrieren unternehmenskritischer Anwendungen zur Cloud bei gleichzeitiger Aufrechterhaltung der Kontinuität durch andere lokale Anwendungen
- Sicherstellen der horizontalen und vertikalen Skalierbarkeit von Systemen
- Implementieren von Methoden zur Notfallwiederherstellung
Überlegungen
Diese Überlegungen implementieren die Säulen des Azure Well-Architected-Frameworks, das eine Reihe von leitden Tenets ist, die verwendet werden können, um die Qualität einer Workload zu verbessern. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.
Zuverlässigkeit
Zuverlässigkeit stellt sicher, dass Ihre Anwendung die Verpflichtungen erfüllen kann, die Sie an Ihre Kunden vornehmen. Weitere Informationen finden Sie unter Prüfliste zur Entwurfsüberprüfung für Zuverlässigkeit.
- Die Architektur verwendet Site Recovery, um VMs in einer sekundären Azure-Region zu spiegeln und so ein schnelles Failover und die rasche Notfallwiederherstellung beim Ausfall eines Azure-Rechenzentrums zu ermöglichen.
- Das Feature für Autofailover-Gruppen von SQL-Datenbank verwaltet die Datenbankreplikation und das Failover zur sekundären Region und bietet dadurch Datenschutz. Weitere Informationen finden Sie unter Autofailover-Gruppen – Übersicht und Best Practices (Azure SQL-Datenbank).
- Die Resilienz wird bei dieser Lösung durch die Verwendung von Load Balancer sichergestellt. Falls ein Präsentations- oder Transaktionsserver ausfällt, können andere Server die Workloads ausführen.
- Es wird empfohlen, Verfügbarkeitsgruppen für Ihre VMs zu erstellen, um die Verfügbarkeit zu erhöhen. Weitere Informationen finden Sie unter Übersicht über Verfügbarkeitsgruppen.
- Es wird empfohlen, die Georeplikation zu verwenden, um die Zuverlässigkeit zu erhöhen. Weitere Informationen finden Sie unter Azure Storage-Redundanz.
Sicherheit
Die Sicherheit bietet Sicherheitsmaßnahmen gegen bewusste Angriffe und den Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Prüfliste zur Entwurfsüberprüfung für sicherheitsrelevante.
- Bei dieser Lösung wird eine Azure-Netzwerksicherheitsgruppe verwendet, um den Datenverkehr zwischen Azure-Ressourcen zu verwalten. Weitere Informationen finden Sie unter Netzwerksicherheitsgruppen.
- Private Link für Azure SQL-Datenbank bietet eine private, direkte Verbindung zwischen Azure-VMs und Azure SQL-Datenbank, die vom Azure-Netzwerkbackbone isoliert ist.
- Azure Bastion maximiert die Zugriffssicherheit für Administratoren, indem die Anzahl der offenen Ports minimiert wird. Dieser Dienst ermöglicht direkt im Azure-Portal über TLS sichere und nahtlose RDP- und SSH-Verbindungen mit VMs im virtuellen Netzwerk.
Kostenoptimierung
Bei der Kostenoptimierung geht es um Möglichkeiten, unnötige Ausgaben zu reduzieren und die betriebliche Effizienz zu verbessern. Weitere Informationen finden Sie unter Prüfliste für die Überprüfung der Kostenoptimierung.
- Mit Azure können Sie unnötige Kosten vermeiden – Azure identifiziert die korrekte Anzahl von Ressourcentypen, analysiert die Ausgaben im Laufe der Zeit und nimmt die Skalierung vorab so vor, dass geschäftliche Anforderungen ohne Mehrkosten erfüllt werden.
- Durch die Ausführung auf VMs minimiert Azure die Kosten. Sie können VMs deaktivieren, wenn sie nicht verwendet werden, und einen Zeitplan für bekannte Verwendungsmuster erstellen. Weitere Informationen zur Kostenoptimierung für VMs finden Sie unter Virtuelle Computer.
- Für die virtuellen Computer in dieser Architektur wird entweder SSD Premium oder Disk Storage Ultra verwendet. Weitere Informationen zu den Optionen und Preisen für Datenträger finden Sie unter Preise für verwaltete Datenträger.
- SQL-Datenbank optimiert die Kosten mit serverlosen Compute- und Hyperscale-Speicherressourcen, die automatisch skaliert werden. Weitere Informationen zu den Optionen und Preisen für SQL-Datenbank finden Sie unter Preise für Azure SQL-Datenbank.
- Verwenden Sie den Preisrechner, um die Kosten für Ihre Implementierung dieser Lösung zu schätzen.
Operative Exzellenz
Operational Excellence deckt die Betriebsprozesse ab, mit denen eine Anwendung bereitgestellt und in der Produktion ausgeführt wird. Weitere Informationen finden Sie unter Prüfliste für die Überprüfung von Operational Excellence.
Das Refactoring ermöglicht nicht nur eine schnellere Cloudeinführung, sondern fördert auch die Einführung von DevOps und Agile-Entwicklungsmethoden. Sie verfügen über vollständige Flexibilität hinsichtlich der Optionen für die Entwicklung und Produktionsbereitstellung.
Leistungseffizienz
Die Leistungseffizienz ist die Fähigkeit Ihrer Arbeitsauslastung, um die Anforderungen zu erfüllen, die die Benutzer auf effiziente Weise an sie stellen. Weitere Informationen finden Sie unter Prüfliste zur Entwurfsüberprüfung für die Leistungseffizienz.
Diese Lösung unterstützt die Bereitstellung in Containern, auf VMs oder in VM-Skalierungsgruppen. Container und VM-Skalierungsgruppen können im Gegensatz zu VMs schnell auf- und abskaliert werden. Die Verlagerung der Skalierungseinheit auf Container trägt zur Optimierung der Infrastrukturnutzung bei.
Beitragende
Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:
Hauptautor:
- Richard Cronheim | Senior Program Manager
Andere Mitwirkende:
- Bhaskar Bandam | Leitender Programmmanager
Nächste Schritte
- Wenden Sie sich an legacy2azure@microsoft.com, um weitere Informationen zu erhalten.
Azurblau
- Was ist beschleunigter Netzwerkbetrieb?
- Filtern von Netzwerkdatenverkehr mit Netzwerksicherheitsgruppen
- Datenbankoptionen in Azure
Astadia-Website
- Migrieren von Mainframeanwendungen zu Azure
- USA Air Force (Fallstudie)
- Jefferson County (Fallstudie)
Verwandte Quellen
- Batchtransaktionsverarbeitung mit hohem Volumen
- Allgemeine Mainframe-Umgestaltung in Azure
- IBM z/OS-Mainframemigration mit Avanade AMT
- IBM z/OS-Onlinetransaktionsverarbeitung in Azure
- Micro Focus Enterprise Server auf Azure-VMs
- Umwandeln von Coupling Facility-Komponenten von IBM z/OS-Mainframes in Azure
- Umgestalten von Mainframeanwendungen mit Advanced
- Umgestalten von Mainframecomputersystemen, auf denen Adabas und Natural ausgeführt werden
- Zuweisen eines neuen Hosts für Mainframeanwendungen in Azure mit Raincode-Compilern
- Migrieren von IBM-Mainframeanwendungen zu Azure mit TmaxSoft OpenFrame