Bearbeiten

Umwandeln von Coupling Facility-Komponenten von IBM z/OS-Mainframes in Azure

Azure Kubernetes Service (AKS)
Azure Virtual Machines
Azure Virtual Network

Diese Architektur zeigt, wie Sie mit Azure in Bezug auf die Aufskalierung und Hochverfügbarkeit ähnliche Ergebnisse erzielen können wie mit IBM z/OS-Mainframesystemen, die über Coupling Facility-Komponenten (CF) verfügen.

Architektur

Mainframearchitektur

Das folgende Diagramm zeigt die Architektur eines IBM z/OS-Mainframesystems mit CF- und Parallel Sysplex-Komponenten:

Diagramm: IBM z/OS-Mainframearchitektur mit CF- und Parallel Sysplex-Komponenten

Laden Sie eine Visio-Datei dieser Architektur herunter.

Workflow

  • Die Eingabe wird über TCP/IP an den Mainframe gesendet. Dafür werden Standardmainframeprotokolle wie TN3270 und HTTPS (A) verwendet.
  • Bei den empfangenden Anwendungen kann es sich entweder um Batch- oder um Onlinesysteme (B) handeln. Batchaufträge können auf mehrere CEC-Instanzen verteilt oder geklont werden, die Daten in der Datenschicht gemeinsam nutzen. Die Onlineebene kann mithilfe von Parallel Sysplex CICS oder CICSPlex eine logische CICS-Region auf mehrere CEC-Instanzen verteilen.
  • COBOL, PL/I, Assembler oder kompatible Anwendungen (C) werden in Umgebungen ausgeführt, die Parallel Sysplex unterstützen, z. B. CICSPlex.
  • Andere Anwendungsdienste (D) können auch gemeinsam genutzten Arbeitsspeicher für eine CF-Komponente verwenden.
  • Bei Datendiensten wie Db2 (E), die Parallel Sysplex unterstützen, kann aufskalierter Datenspeicher in einer gemeinsam genutzten Umgebung verwendet werden.
  • Middleware und Dienstprogramme wie MQSeries, die Verwaltung und das Drucken (F) werden unter z/OS in jeder CEC-Instanz ausgeführt.
  • Logische Partitionen (LPAR) auf den einzelnen CEC-Instanzen (G) unterstützen z/OS. Es können auch andere Betriebssysteme wie z/VM oder andere Engines wie zIIP oder IFL vorhanden sein.
  • Eine CEC-Instanz stellt über die CF-Komponente (H) eine Verbindung mit dem gemeinsam genutzten Speicher und dem gemeinsam genutzten Zustand her.
  • Die CF-Komponente (I) ist ein physisches Gerät, das mehrere CEC-Instanzen mit einem gemeinsamen Speicher verbindet.

Azure-Architektur

Auf dem nächsten Diagramm ist zu sehen, wie Azure-Dienste ähnliche Funktionen und eine ähnlich gute Leistung wie z/OS-Mainframes mit Parallel Sysplex und CF-Komponenten bieten können:

Diagramm: Veranschaulichung der Zuordnung von IBM z/OS-Mainframekomponenten zu Azure-Funktionen

Laden Sie eine Visio-Datei dieser Architektur herunter.

Workflow

  1. Eine Eingabe wird von Remoteclients über ExpressRoute oder über andere Azure-Anwendungen gesendet. In beiden Fällen stellt das TCP/IP die primäre Verbindung mit dem System dar.

    Ein Webbrowser für den Zugriff auf Azure-Systemressourcen ersetzt die Terminalemulation für bedarfsbasierte Benutzer und Onlinebenutzer. Benutzer greifen über den TLS-Port 443 auf webbasierte Anwendungen zu. Die Darstellungsebenen der Webanwendungen können praktisch unverändert bleiben, damit sich der Endbenutzer nicht allzu sehr umgewöhnen muss. Alternativ können Sie die Darstellungsebene der Webanwendung mit modernen Benutzeroberflächenframeworks aktualisieren.

    Für den Administratorzugriff auf die virtuellen Azure-Computer (VMs) maximieren Azure-Bastion-Hosts die Sicherheit, indem die Anzahl der offenen Ports reduziert wird.

  2. In Azure erfolgt der Zugriff auf die Computecluster der Anwendung über Azure Load Balancer. Dies ermöglicht das Aufskalieren von Computeressourcen zum Verarbeiten der Eingabe.

  3. Welche Art von Anwendungscomputecluster wird, ist abhängig davon, ob die Anwendung auf VMs oder auf einem Containercluster wie Kubernetes ausgeführt wird. In der Regel werden bei der Mainframesystememulation für Anwendungen, die in PL/I oder COBOL geschrieben sind, VMs verwendet, während für Anwendungen, die in Java oder .NET konvertiert wurden, Container verwendet werden. Manche Softwareprogramme für die Emulation von Mainframesystemen kann darüber hinaus die Bereitstellung in Containern unterstützen.

  4. Anwendungsserver wie Tomcat für Java oder die CICS/IMS-Überwachungslösung für die Transaktionsverarbeitung für COBOL, empfangen die Eingabe und teilen den Anwendungszustand und die Daten mithilfe von Azure Cache for Redis oder Remote Direct Memory Access (RDMA). Diese Funktionalität funktioniert ähnlich wie CF-Komponenten für Mainframes.

  5. Datendienste in den Anwendungsclustern ermöglichen mehrere Verbindungen mit persistenten Datenquellen. Diese Datenquellen können u. a. PaaS-Datendienste wie Azure-SQL-Datenbank und Azure Cosmos DB, Datenbanken auf VMs wie Oracle oder Db2 oder Big-Data-Repositorys wie Databricks und Azure Data Lake sein. Anwendungsdatendienste können sich ebenfalls mit Streamingdiensten für die Datenanalyse wie Kafka oder Azure Stream Analytics verbinden.

    Azure-PaaS-Datendienste bieten einen skalierbaren und hochverfügbaren Datenspeicher, den sich mehrere Computeressourcen auf einem Cluster teilen können. Diese Dienste können ebenfalls georedundant sein.

  6. Die Anwendungsserver hosten verschiedene Anwendungsprogramme, die auf Sprache basieren, z. B. Java-Klassen in Tomcat oder COBOL-Programme mit CICS-Verben in CICS-VMs für die Emulation.

  7. Datendienste verwenden eine Kombination aus Hochleistungsspeicher auf SSD-Ultra- oder Premium-Datenträgern, einem Dateispeicher in Azure NetApp Files oder Azure Files und einem Standardblob-, Archiv- und Sicherungsspeicher, der lokal redundant oder georedundant sein kann.

  8. Azure Blob Storage ist eine häufig verwendete Zielzone für externe Datenquellen.

  9. Azure Data Factory erfasst und synchronisiert Daten von mehreren internen und externen Datenquellen.

  10. Azure Site Recovery bietet Funktionen zur Notfallwiederherstellung für die VM und Containerclusterkomponenten.

Komponenten

  • Azure ExpressRoute dehnt Ihre lokalen Netzwerke über eine private Verbindung, die von einem Konnektivitätsanbieter bereitgestellt wird, auf die Cloud von Microsoft aus. Mit ExpressRoute können Sie Verbindungen mit Clouddiensten wie Azure und Office 365 herstellen.

  • Azure Bastion ist ein vollständig verwalteter PaaS-Dienst, den Sie auf Ihrem virtuellen Netzwerk bereitstellen können. Bastion bietet direkt im Azure-Portal über TLS sichere und nahtlose RDP- und SSH-Konnektivität mit den VMs in Ihrem virtuellen Netzwerk.

  • Azure Load Balancer verteilt eingehende Datenflüsse vom Front-End des Lastenausgleichs gemäß den konfigurierten Lastenausgleichsregeln und Integritätstests auf Back-End-Poolinstanzen. Bei den Instanzen im Back-End-Pool kann es sich um Azure-VMs oder Instanzen einer VM-Skalierungsgruppe handeln. Load Balancer ist die zentrale Kontaktstelle für Clients.

    Load Balancer arbeitet auf der vierten Schicht des OSI-Modells (Open Systems Interconnection). Sowohl auf der siebten als auch auf der vierten Anwendungsschicht sind Load Balancer-Instanzen für Netzwerkprotokolle verfügbar. Welche Art von Instanz verwendet wird, ist davon abhängig, auf welche Weise die Anwendungseingabe den Einstiegspunkt des Computeclusters erreicht.

  • Azure Virtual Machines bietet bedarfsgesteuerte, skalierbare Computingressourcen mit der Flexibilität der Virtualisierung. Azure-VMs bieten Ihnen eine Auswahl an Betriebssystemen, einschließlich Windows und Linux.

    Die meisten VM-Größen für Azure High Performance Computing (HPC) unterstützen eine Netzwerkschnittstelle für RDMA-Konnektivität.

  • Virtuelle Azure-Netzwerke sind der grundlegende Baustein für private Azure-Netzwerke. Mit virtuellen Netzwerken können Azure-Ressourcen (z. B. VMs) sicher untereinander sowie mit dem Internet und mit lokalen Netzwerken kommunizieren. Azure Virtual Network-Instanzen ähneln herkömmlichen lokalen Netzwerken, bieten aber die Vorteile der Azure-Infrastruktur, z. B. Skalierbarkeit, Verfügbarkeit und Isolation.

    Virtuelle Netzwerkschnittstellen ermöglichen Azure-VMs die Kommunikation mit dem Internet, mit Azure und lokalen Ressourcen. Bei dieser Architektur können Sie einer Azure-VM mehrere Netzwerkschnittstellenkarten hinzufügen, sodass untergeordnete VMs über eigene dedizierte Netzwerkschnittstellengeräte und IP-Adressen verfügen können.

  • Azure Kubernetes Service (AKS) ist ein vollständig verwalteter Kubernetes-Dienst zum Bereitstellen und Verwalten von Anwendungen in containerisierten Anwendungen auf containerbasierten Computeclustern.

  • Bei Azure Cache for Redis handelt es sich um einen vollständig verwalteten In-Memory-Cache, der die Leistung und Skalierbarkeit von Architekturen verbessert, die auf einer großen Menge an Daten aufbauen. In der aktuellen Architektur wird Azure Cache for Redis verwendet, um die Daten und den Zustand für die Computeressourcen freizugeben.

  • Azure SQL-Datenbank ist eine vollständig verwaltete PaaS-Datenbank-Engine, die immer basierend auf der neuesten stabilen Version von SQL Server und dem gepatchten Betriebssystem mit einer Verfügbarkeit von 99,99 % ausgeführt wird. SQL-Datenbank kümmert sich um Upgrades, Patches, Sicherungen, die Überwachung und um die meisten Datenbankverwaltungsfunktionen, ohne dass die Benutzer eingreifen müssen. Durch diese PaaS-Funktionen können Sie sich auf die unternehmenskritische, domänenspezifische Datenbankverwaltung und -optimierung konzentrieren.

  • Azure Private Link für Azure SQL-Datenbank bietet eine private direkte Verbindung von den Azure-VMs zu Azure SQL-Datenbank, die vom Azure-Netzwerkbackbone isoliert ist.

  • Azure Cosmos DB ist ein Azure-PaaS-Dienst für NoSQL-Datenbanken.

  • Azure Database for PostgreSQL ist ein Azure-PaaS-Dienst für PostgreSQL-Datenbanken.

  • Verwaltete Azure-Datenträger sind Speichervolumes auf Blockebene, die von Azure auf Azure-VMs verwaltet werden. Die verfügbaren Datenträgertypen sind Ultra-Datenträger, SSD Premium, SSD Standard und HDD Standard. Diese Architektur eignet sich am besten für SSD Premium oder SSD Disk Ultra.

  • Azure Data Factory ist eine vollständig verwaltete, serverlose Lösung für die Datenintegration, die zum Erfassen, Vorbereiten und Transformieren von großen Datenmengen verwendet werden kann.

  • Azure Files bietet vollständig verwaltete Dateifreigaben in einem Azure Storage-Konto, auf die Sie über die Cloud oder lokal zugreifen können. Mit Windows-, Linux- und macOS-Bereitstellungen können Sie Azure-Dateifreigaben gleichzeitig einbinden, und über das branchenübliche SMB-Protokoll (Server Message Block) können Sie auf Dateien zugreifen.

  • Bei Azure Stream Analytics handelt es sich um einen Azure-basierten Analysedienst für Streamingdaten.

  • Azure Databricks ist ein Apache Spark-PaaS-Dienst für Big Data-Analysen.

Szenariodetails

Kopplungseinrichtungen (Coupling Facilities, CFs) sind physische Geräte, die mehrere Mainframeserver oder Central Electronics Complex-Instanzen (CEC) mit einem gemeinsam genutzten Speicher verknüpfen, wodurch die Aufskalierung von Systemen zur Verbesserung der Leistung ermöglicht wird. Anwendungen, die in Sprachen wie COBOL und PL/I geschrieben sind, können problemlos diese eng gekoppelten Aufskalierungsfeatures nutzen.

IBM Db2-Datenbanken und Customer Information Control System-Server (CICS) können CFs zusammen mit dem Mainframesubsystem Parallel Sysplex verwenden, das die Datenfreigabe und parallele Computevorgänge kombiniert. Mithilfe von Parallel Sysplex kann ein Cluster, das aus bis zu 32 Systemen besteht, Workloads freigeben, um für eine hohe Leistung, Hochverfügbarkeit und die Notfallwiederherstellung zu sorgen. Mainframe-CFs mit Parallel Sysplex befinden sich in der Regel im selben Rechenzentrum und in der Nähe der CEC-Instanzen. Sie können aber auch auf mehrere Rechenzentren verteilt sein.

Azure-Ressourcen können durch gemeinsam genutzte Daten und Hochverfügbarkeit ähnliche Ergebnisse bei der Aufskalierung erzielen. Azure-Computecluster nutzen durch Mechanismen zum Zwischenspeichern von Daten, z. B. Azure Cache for Redis, einen gemeinsamen Speicher. Außerdem verwenden sie skalierbare Datentechnologien wie Azure SQL-Datenbank und Azure Cosmos DB. Azure kann Verfügbarkeitsgruppen in Kombination mit georedundanten Funktionen implementieren, um das Aufskalieren von Computeinstanzen und die Hochverfügbarkeit auf verteilte Azure-Rechenzentren zu erweitern.

Überlegungen

Diese Überlegungen setzen die Säulen des Azure Well-Architected Framework um, das eine Reihe von Leitprinzipien enthält, die zur Verbesserung der Qualität eines Workloads verwendet werden können. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.

Verfügbarkeit

Bei dieser Architektur wird Azure Site Recovery verwendet, um die Azure-VMs in einer sekundären Azure-Region für ein schnelles Failover und die Notfallwiederherstellung bei Ausfall eines Azure-Rechenzentrums zu spiegeln.

Resilienz

Die Resilienz wird bei dieser Lösung durch Lastenausgleichsmodule sichergestellt. Wenn ein Präsentations- oder Transaktionsserver ausfällt, können andere Server, die mit der Load Balancer-Instanz verbunden sind, die Workloads ausführen.

Skalierbarkeit

Sie können die Servergruppen aufskalieren, um einen höheren Durchsatz zu erzielen. Weitere Informationen finden Sie unter Was sind Skalierungsgruppen für virtuelle Computer?.

Sicherheit

Sicherheit bietet Schutz vor vorsätzlichen Angriffen und dem Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Übersicht über die Säule „Sicherheit“.

  • Diese Lösung verwendet eine Azure-Netzwerksicherheitsgruppe (NSG), 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 (isoliert vom Azure-Netzwerkbackbone) von den Azure-VMs zu Azure SQL-Datenbank.

  • Azure Bastion maximiert die Zugriffssicherheit für Administratoren, indem die Anzahl der offenen Ports minimiert wird. Dieser Dienst ermöglicht sichere und nahtlose RDP- und SSH-Verbindungen mit virtuellen Netzwerk-VMs über TLS direkt im Azure-Portal.

Kostenoptimierung

Bei der Kostenoptimierung geht es um die Suche nach Möglichkeiten, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Übersicht über die Säule „Kostenoptimierung“.

Nächste Schritte