Bearbeiten

Share via


Umgestalten von Mainframeanwendungen mit Astadia

Azure ExpressRoute
Azure Bastion
Azure Load Balancer
Azure Private Link
Azure Site Recovery

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.

Diagramm für eine Mainframearchitektur, die für die Neugestaltung von Astadia geeignet ist.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Datenfluss

  1. TN3270- und HTTP(S)-Benutzereingaben erfolgen über TCP/IP.
  2. Bei Eingaben für den Mainframe werden standardmäßige Mainframeprotokolle verwendet.
  3. Die Eingabe wird von Batch- und Onlineanwendungen verarbeitet.
  4. Anwendungen in COBOL, PL/I, Assembler und anderen Programmiersprachen werden in einer geeigneten Umgebung ausgeführt.
  5. Daten werden in Dateien sowie in hierarchischen, Netzwerk- und relationalen Datenbanken gespeichert.
  6. Zu den häufig verwendeten Diensten zählen Programmausführung, E/A-Vorgänge, Fehlererkennung und Schutz innerhalb der Umgebung.
  7. Middleware und Hilfsdienste verwalten Bandspeicher, Warteschlangen, Ausgaben und Webaktivitäten.
  8. Jedes Betriebssystem wird in einer eigenen Partition ausgeführt.
  9. 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.

Architekturdiagramm für eine Astadia-Neugestaltungslösung.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Datenfluss

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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
  6. 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.
  7. Azure Site Recovery ermöglicht die Notfallwiederherstellung von VMs und Containerclusterkomponenten.
  8. 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 ExpressRoute dehnt lokale Netzwerke über eine private, dedizierte Glasfaserverbindung von einem Konnektivitätsanbieter auf Azure aus. ExpressRoute stellt Verbindungen mit Microsoft-Clouddiensten wie Azure und Microsoft 365 her.
  • Azure Bastion ermöglicht nahtlose Remotedesktopprotokoll (RDP)- und Secure Shell (SSH)-Konnektivität mit VMs im virtuellen Netzwerk über TLS im Azure-Portal. Azure Bastion maximiert die Zugriffssicherheit für Administratoren, indem die Anzahl offener Ports minimiert wird.
  • Azure Load Balancer verteilt eingehenden Datenverkehr auf die Computeressourcencluster. Der Dienst verteilt Datenverkehr mithilfe konfigurierbarer Regeln und anderer Kriterien.
  • Azure Virtual Machines bietet viele Größen und Typen skalierbarer On-Demand-VMs. Mit Azure Virtual Machines profitieren Sie von flexibler Virtualisierung, ohne Zeit und Mittel für den Kauf und die Wartung physischer Hardware aufwenden zu müssen.
  • 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.
  • Azure Private Link stellt private Konnektivität zwischen virtuellen Netzwerken und Azure-Diensten bereit. Private Link vereinfacht die Netzwerkarchitektur und schützt die Verbindung zwischen Azure-Endpunkten, indem der Zugriff über das öffentliche Internet verhindert wird.
  • Azure Storage ist skalierbarer, sicherer Cloudspeicher für alle Ihre Daten, Anwendungen und Workloads.
    • 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. Für diese Architektur wird entweder SSD Premium oder Disk Storage Ultra verwendet.
    • Azure Files bietet vollständig verwaltete Dateifreigaben in der Cloud, auf die über Server Message Block (SMB), ein Protokoll nach Branchenstandard, zugegriffen wird. Cloudbasierte und lokale Windows-, Linux- und macOS-Bereitstellungen haben Zugriff auf Freigaben, indem sie Dateifreigaben gleichzeitig einbinden.
    • Azure NetApp Files bietet von NetApp unterstützte Azure-Dateifreigaben für Unternehmen. Mit NetApp Files können Unternehmen komplexe, dateibasierte Anwendungen mühelos ohne Codeänderungen migrieren und ausführen.
    • Azure Blob Storage ist ein skalierbarer und sicherer Objektspeicher für Archive, Data Lakes, Hochleistungscomputing, maschinelles Lernen und cloudnative Workloads.
  • 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.
    • 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. Da Sie sich nicht um diese Aufgaben kümmern müssen, können Sie sich ganz auf die Verwaltung und Optimierung domänenspezifischer, unternehmenskritischer Datenbanken konzentrieren.
    • 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.
    • Azure Cosmos DB ist eine vollständig verwaltete schnelle NoSQL-Datenbank mit offenen APIs für jeden Maßstab.
  • Azure Site Recovery spiegelt VMs in einer sekundären Azure-Region, um beim Ausfall eines Azure-Rechenzentrums ein schnelles Failover und eine rasche Datenwiederherstellung zu ermöglichen.
  • Azure Data Factory ist ein ETL-Dienst (Extrahieren, Transformieren und Laden) für die serverlose Datenintegration und Datentransformation mit horizontaler Skalierung. Der Dienst bietet eine Benutzeroberfläche ohne Code für die intuitive Erstellung sowie Überwachung und Verwaltung über eine zentrale Konsole.

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

Die in diesem Abschnitt beschriebenen Überlegungen gelten auf Grundlage des Microsoft Azure Well-Architected Frameworks für diese Lösung.

DevOps

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.

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.

Skalierbarkeit

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.

Sicherheit

  • 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

  • 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.

Beitragende

Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:

Hauptautor:

Andere Mitwirkende:

Nächste Schritte

  • Wenden Sie sich an legacy2azure@microsoft.com, um weitere Informationen zu erhalten.

Azure

Astadia-Website

Sonstiges