Effettuare il refactoring di una funzionalità di accoppiamento mainframe IBM z/OS in Azure

Servizio Azure Kubernetes
Macchine virtuali di Azure
Rete virtuale di Azure

Questo articolo descrive un'architettura che usa i servizi di Azure per offrire prestazioni di scalabilità orizzontale e disponibilità elevata simili ai sistemi mainframe IBM z/OS con funzionalità di accoppiamento (CFS).

Architettura dei mainframe

Il diagramma seguente illustra l'architettura di un sistema mainframe IBM z/OS con funzionalità di accoppiamento e componenti Parallel Sysplex:

Diagramma che mostra l'architettura mainframe IBM z/OS con funzionalità di accoppiamento e componenti Sysplex paralleli.

Scaricare un file di Visio di questa architettura.

Workflow

  • L'input passa al mainframe tramite transmission control Protocol/Internet Protocol (TCP/IP) tramite protocolli mainframe standard, ad esempio TN3270 e Hypertext Transfer Protocol Secure (A ).

  • L'elaborazione batch o le applicazioni di elaborazione delle transazioni online ricevono l'input (B). I processi batch possono essere distribuiti o cloni tra più complessi di elettronica centrale che condividono i dati nel livello dati. Il livello online può distribuire un'area CICS (Customer Information Control System) logica tra più controller di rete tramite Parallel Sysplex CICS o CICSPlex.

  • Common Business Oriented Language (COBOL), PL/I, Assembler o applicazioni compatibili (C) vengono eseguite nell'ambiente abilitato per Sysplex parallelo, ad esempio un ambiente CICSPlex.

  • Altri servizi applicazioni (D) possono anche usare la memoria condivisa in un cf.

  • I servizi dati abilitati per Sysplex paralleli, ad esempio IBM Db2 (E), forniscono l'archiviazione dei dati con scalabilità orizzontale in un ambiente condiviso.

  • I servizi middleware e di utilità, ad esempio MQSeries, gestione e servizi di stampa (F), vengono eseguiti in z/OS in ogni CEC.

  • Le partizioni logiche (LPAR) in ogni CEC (G) eseguono z/OS. Un'architettura potrebbe avere anche altri ambienti operativi, ad esempio IBM z/VM o altri motori, ad esempio IBM z Integrated Information Processor (zIIP) o Integrated Facility per Linux (IFL).

  • Un CEC si connette tramite cf (H) alla memoria e allo stato condivisi.

  • Cf (I) è un dispositivo fisico che connette più controller di rete alla memoria condivisa.

Architettura di Azure

Il diagramma seguente illustra i servizi di Azure che offrono funzionalità e prestazioni simili ai mainframe z/OS con Parallel Sysplex e CFS.

Diagramma che mostra come i componenti mainframe IBM z/OS possono eseguire il mapping alle funzionalità di Azure.

Scaricare un file di Visio di questa architettura.

Workflow

  1. I client remoti inviano input tramite Azure ExpressRoute o da altre applicazioni Di Azure. In entrambi i casi, TCP/IP è la connessione primaria al sistema.

    Un Web browser accede alle risorse di sistema di Azure, che sostituisce l'emulazione del terminale per gli utenti della domanda e gli utenti online. Gli utenti accedono alle applicazioni basate sul Web sulla porta TLS (Transport Layer Security) 443. Per ridurre al minimo il training degli utenti, i livelli di presentazione delle applicazioni Web possono rimanere praticamente invariati. In alternativa, è possibile aggiornare il livello di presentazione dell'applicazione Web con framework di esperienza utente moderni.

    (1a) Per una maggiore sicurezza, Microsoft Entra ID può abilitare e applicare l'autenticazione e l'autorizzazione.

  2. In Azure l'accesso ai cluster di calcolo delle applicazioni passa attraverso Azure Load Balancer in modo che le risorse di calcolo con scalabilità orizzontale possano elaborare il lavoro di input.

  3. Il tipo di cluster di calcolo dell'applicazione usato dipende dal fatto che l'applicazione venga eseguita in macchine virtuali (VM) o in un cluster contenitore come Kubernetes. In genere, l'emulazione del sistema mainframe per le applicazioni scritte in PL/I o COBOL usano macchine virtuali. Le applicazioni di cui viene fatto il refactoring in Java o .NET usano contenitori. Alcuni software di emulazione del sistema mainframe supportano anche la distribuzione nei contenitori.

  4. I server applicazioni, ad esempio Tomcat per Java o come CICS o il monitoraggio dell'elaborazione delle transazioni IMS (Information Management System) per COBOL, ricevono l'input e condividono lo stato e i dati dell'applicazione tramite cache di Azure per Redis o Remote Direct Memory Access (RDMA). Questa funzionalità è simile a CF per i mainframe.

  5. I servizi dati si trovano nei cluster applicazioni in modo che le origini dati persistenti possano ricevere più connessioni. Queste origini dati possono includere soluzioni dati PaaS (Platform as a Service), ad esempio database SQL di Azure e Azure Cosmos DB, database in macchine virtuali come Oracle Database o IBM Db2 o repository Big Data come Azure Databricks e Azure Data Lake Storage. I servizi dati delle applicazioni possono anche connettersi ai servizi di analisi dei dati di streaming, ad esempio Apache Kafka e Analisi di flusso di Azure.

    I servizi dati PaaS di Azure offrono un'archiviazione dati scalabile e a disponibilità elevata che più risorse di calcolo in un cluster possono condividere. Questi servizi possono anche essere con ridondanza geografica.

  6. I server applicazioni ospitano vari programmi applicativi basati sul linguaggio, ad esempio le classi Java nei programmi Tomcat o COBOL con verbi CICS nelle macchine virtuali di emulazione CICS.

  7. I servizi dati usano una combinazione di archiviazione ad alte prestazioni in Archiviazione su disco Ultra di Azure o unità SSD Premium di Azure, archiviazione file in Azure NetApp Files o File di Azure e BLOB standard, archivio e archiviazione di backup che possono essere ridondanti in locale o con ridondanza geografica.

  8. Archiviazione BLOB di Azure è una zona di destinazione comune per le origini dati esterne.

  9. Azure Data Factory inserisce e sincronizza i dati da più origini dati interne ed esterne.

  10. Azure Site Recovery fornisce il ripristino di emergenza per i componenti della macchina virtuale e i componenti del cluster contenitore.

Componenti

  • ExpressRoute estende le reti locali nel cloud Microsoft tramite una connessione privata fornita da un partner di connettività. Con ExpressRoute è possibile stabilire connessioni a servizi cloud come Azure e Microsoft 365.

  • Azure Bastion è un paaS completamente gestito di cui si effettua il provisioning all'interno della rete virtuale. Azure Bastion offre connettività RDP (Remote Desktop Protocol) e Secure Shell (SSH) sicura e facile alle macchine virtuali nella rete virtuale direttamente dalla portale di Azure tramite TLS.

  • Load Balancer distribuisce i flussi in ingresso dal front-end del servizio di bilanciamento del carico alle istanze del pool back-end, in base alle regole di bilanciamento del carico configurate e ai probe di integrità. Le istanze del pool back-end possono essere macchine virtuali o istanze di Azure in un set di scalabilità di macchine virtuali. Load Balancer è il singolo punto di contatto per i client.

    Load Balancer opera al livello 4 del modello Open Systems Interconnect. Sono disponibili servizi di bilanciamento del carico a livello di protocollo di rete di livello 7 e livello 4. Il tipo da usare dipende dal modo in cui l'input dell'applicazione raggiunge il punto di ingresso del cluster di calcolo.

  • Macchine virtuali di Azure offre risorse di calcolo scalabili su richiesta che offrono la flessibilità della virtualizzazione. Le macchine virtuali di Azure offrono una scelta di sistemi operativi, tra cui Windows e Linux.

    La maggior parte delle dimensioni delle macchine virtuali di calcolo ad alte prestazioni di Azure è un'interfaccia di rete per la connettività RDMA.

  • Le reti virtuali di Azure sono i blocchi predefiniti fondamentali per le reti private di Azure. Usare reti virtuali in modo che le risorse di Azure come le macchine virtuali possano comunicare in modo sicuro tra loro, Internet e reti locali. Una rete virtuale di Azure è simile a una rete locale tradizionale, ma con i vantaggi della scalabilità, della disponibilità e dell'isolamento dell'infrastruttura di Azure.

    Le interfacce di rete virtuale consentono la comunicazione tra macchine virtuali di Azure e Internet, risorse di Azure e risorse locali. È possibile aggiungere diverse schede di interfaccia di rete a una macchina virtuale di Azure in modo che le macchine virtuali figlio possano avere dispositivi e indirizzi IP dedicati dell'interfaccia di rete. Questa configurazione è simile a questa architettura.

  • servizio Azure Kubernetes è un servizio Kubernetes completamente gestito che è possibile usare per distribuire e gestire applicazioni in contenitori in cluster di calcolo basati su contenitori.

  • cache di Azure per Redis è una cache in memoria completamente gestita che migliora le prestazioni e la scalabilità delle architetture a elevato utilizzo di dati. Questa architettura usa cache di Azure per Redis per condividere dati e stato tra le risorse di calcolo.

  • database SQL è un motore di database PaaS completamente gestito che esegue la versione stabile più recente di SQL Server e il sistema operativo con patch, con disponibilità del 99,99%. database SQL gestisce l'aggiornamento, l'applicazione di patch, i backup, il monitoraggio e la maggior parte delle altre funzioni di gestione del database senza coinvolgimento dell'utente. Queste funzionalità PaaS consentono di concentrarsi sull'amministrazione e sull'ottimizzazione dei database specifici del dominio aziendali.

  • collegamento privato di Azure per database SQL fornisce una connessione privata e diretta da macchine virtuali di Azure a database SQL che usa solo il backbone di rete di Azure.

  • Azure Cosmos DB è un servizio PaaS di Azure per i database NoSQL.

  • Database di Azure per PostgreSQL è un servizio PaaS di Azure per i database PostgreSQL.

  • I dischi gestiti di Azure sono volumi di archiviazione a livello di blocco gestiti da Azure nelle macchine virtuali di Azure. I tipi di dischi disponibili includono Archiviazione su disco Ultra, SSD Premium, SSD Standard e HDD Standard. Questa architettura funziona meglio con unità SSD Premium o Archiviazione su disco Ultra.

  • Data Factory è una soluzione di integrazione dei dati serverless completamente gestita che è possibile usare per inserire, preparare e trasformare i dati su larga scala.

  • File di Azure offre condivisioni file completamente gestite in un account di archiviazione di Azure accessibile dal cloud o dall'ambiente locale. Le distribuzioni windows, Linux e macOS possono montare le condivisioni file di Azure contemporaneamente e accedere ai file tramite il protocollo SMB (Server Message Block) standard del settore.

  • Analisi di flusso è un servizio di analisi basato su Azure che è possibile usare per trasmettere i dati.

  • Azure Databricks è un servizio PaaS Apache Spark per l'analisi di Big Data.

  • Microsoft Entra ID è una soluzione di gestione delle identità e degli accessi basata sul cloud Microsoft che connette le persone alle app, ai dispositivi e ai dati.

Dettagli dello scenario

Le CFS sono dispositivi fisici che connettono più server mainframe o controller di interfaccia di rete alla memoria condivisa in modo che i sistemi possano aumentare le prestazioni. Le applicazioni scritte in linguaggi come COBOL e PL/I usano facilmente queste funzionalità di scalabilità orizzontale strettamente abbinate.

I database IBM Db2 e i server CICS possono usare CFS con un sottosistema mainframe denominato Parallel Sysplex che combina la condivisione dei dati e il calcolo parallelo. Parallel Sysplex consente a un cluster di un massimo di 32 sistemi di condividere carichi di lavoro, che offre prestazioni elevate, disponibilità elevata e ripristino di emergenza. Le CFS mainframe con Parallel Sysplex si trovano in genere nello stesso data center, con prossimità vicina tra le schede di interfaccia di rete, ma possono anche estendersi tra data center.

Le risorse di Azure possono offrire prestazioni di scalabilità orizzontale simili con dati condivisi e disponibilità elevata. I cluster di calcolo di Azure condividono la memoria tramite meccanismi di memorizzazione nella cache dei dati, ad esempio cache di Azure per Redis, e usano tecnologie di dati scalabili, ad esempio database SQL e Azure Cosmos DB. Per estendere il calcolo con scalabilità orizzontale e la disponibilità elevata ai data center di Azure distribuiti, Azure può implementare set di disponibilità e gruppi di disponibilità e combinarli con funzionalità con ridondanza geografica.

Considerazioni

Queste considerazioni implementano i pilastri di Azure Well-Architected Framework, che è un set di principi guida che possono essere usati per migliorare la qualità di un carico di lavoro. Per altre informazioni, vedere Microsoft Azure Well-Architected Framework.

Disponibilità

Questa architettura usa Site Recovery per eseguire il mirroring delle macchine virtuali di Azure in un'area di Azure secondaria per il failover rapido e il ripristino di emergenza in caso di errore di un data center di Azure.

Resilienza

I servizi di bilanciamento del carico creano resilienza in questa soluzione. Se un server di presentazione o transazione ha esito negativo, altri server dietro il servizio di bilanciamento del carico possono eseguire i carichi di lavoro.

Scalabilità

È possibile aumentare il numero di istanze dei set di server per offrire una maggiore velocità effettiva. Per altre informazioni, vedi Set di scalabilità di macchine virtuali.

Sicurezza

La sicurezza offre garanzie contro attacchi intenzionali e l'abuso di dati e sistemi preziosi. Per maggiori informazioni, consultare la sezione Elenco di controllo per la revisione della progettazione per la sicurezza.

  • Questa soluzione usa un gruppo di sicurezza di rete di Azure per gestire il traffico tra le risorse di Azure. Per altre informazioni, vedere Gruppi di sicurezza di rete.

  • collegamento privato per database SQL fornisce una connessione privata e diretta isolata al backbone di rete di Azure dalle macchine virtuali di Azure a database SQL.

  • Azure Bastion riduce al minimo le porte aperte, ottimizzando la sicurezza dell'accesso degli amministratori. Azure Bastion offre connettività RDP/SSH sicura e trasparente alle macchine virtuali di rete virtuale direttamente dalla portale di Azure tramite TLS.

  • Microsoft Entra è una piattaforma di sicurezza unificata che si integra perfettamente con la maggior parte dei servizi di Azure.

Ottimizzazione dei costi

L'ottimizzazione dei costi riguarda l'analisi dei modi per ridurre le spese non necessarie e migliorare l'efficienza operativa. Per altre informazioni, vedere Elenco di controllo per la revisione della progettazione per l'ottimizzazione dei costi.

Passaggi successivi