Eseguire la migrazione di IBM System i ad Azure usando Infinite i
Questo articolo descrive come eseguire la migrazione di carichi di lavoro IBM System i ad Azure usando Infinite i. Infinite i converte Report Program Generator (RPG) e common business-oriented language (COBOL) codice sorgente in codice oggetto eseguito in modo nativo in macchine virtuali x86. Le schermate e le interazioni dell'applicazione funzionano come in precedenza, riducendo al minimo la necessità di ripetere il training degli utenti. Dopo la migrazione, è possibile gestire e aggiornare i programmi modificando il codice sorgente originale come di consueto.
Architettura
Scaricare un file di Visio di questa architettura.
Flusso di lavoro
Il flusso di lavoro seguente corrisponde al diagramma precedente:
L'emulazione del terminale Web TN5250 fornisce l'accesso utente ad Azure tramite una connessione crittografata Secure Sockets Layer/Transport Layer Security.
Azure ExpressRoute offre una connessione ad alta velocità dedicata tra risorse locali e di Azure.
Azure Load Balancer distribuisce il traffico TN5250 in ingresso tra due server app Infinite i (attivo e standby) nella rete virtuale. I client basati su Azure si connettono tramite una rete virtuale con peering. Nella tabella seguente vengono descritte le configurazioni supportate:
Modello Assistenza Dettagli Attivo/Passivo Sì È consigliabile usare questo modello. Usa la replica e il failover tra le zone di disponibilità. Active/Active (Load Balancer) NO Questo modello non è supportato a causa dei vincoli di stato del database e della sessione. Più macchine virtuali (set di scalabilità di macchine virtuali di Azure) Limitato Usare questo modello solo per la distribuzione dell'infrastruttura. Non usarlo per il ridimensionamento del carico di lavoro. Back-end del database in cluster NO Questo modello non è compatibile con l'architettura corrente di Infinite i. I compilatori Infinite convertono il codice sorgente system i (RPG e COBOL) in codice oggetto a 64 bit da eseguire in macchine virtuali di Azure x86. Il runtime interpreta CL, CMD e SQL.
Infinite i include un database interno che emula le funzionalità di DB2/400, ad esempio file fisici, file logici, file a più membri, join, trigger, integrità referenziale, controllo dell'impegno e inserimento nel journal. Quando un'applicazione viene eseguita in Azure, accede ai dati come nell'ambiente AS/400 senza alcuna modifica del codice. Infinite i fornisce connettori di database interni come ODBC (Open Database Connectivity) e Java Database Connectivity (JDBC) per connettersi a file fisici e logici nel database interno.
File di Azure offre condivisioni file per implementare i file di Infinite i. Il montaggio di una condivisione file nella macchina virtuale di Azure consente ai programmi di accedere direttamente ai file. La condivisione file contiene anche i moduli di caricamento e i file di log.
È possibile eseguire la migrazione, anziché del database interno descritto nel passaggio 5, del database DB2/400 a un database SQL standard. Le opzioni del database sono SQL Server, SQL di Azure, Oracle e MySQL. Queste opzioni supportano le stesse funzionalità del database interno. Quando Infinite i esegue la migrazione del database, crea uno schema del database che esegue il mapping di file fisici a tabelle e file logici per le viste.
Azure Site Recovery offre il ripristino di emergenza.
Componenti
Macchine virtuali di Azure Le macchine virtuali sono risorse di calcolo su richiesta e scalabili che eliminano le richieste di manutenzione dell'hardware fisico. In questa architettura, eseguono i carichi di lavoro migrati e offrono flessibilità e scalabilità. Le scelte per il sistema operativo includono Windows e Linux.
I set di scalabilità di macchine virtuali automatizzano e bilanciano il carico del ridimensionamento delle macchine virtuali. Queste azioni semplificano la gestione delle applicazioni e aumentano la disponibilità per garantire disponibilità elevata e prestazioni per le applicazioni.
Rete virtuale di Azure è una rete privata sicura nel cloud. Connette le macchine virtuali l'una all'altra, a Internet e alle reti locali. Fornisce la connettività necessaria per i carichi di lavoro migrati.
Collegamento privato di Azure porta le connessioni private ai servizi di Azure. Consente di garantire la comunicazione sicura tra i componenti.
I servizi di bilanciamento del carico di Azure ridimensionano le macchine virtuali per la disponibilità elevata e le prestazioni elevate. Questa architettura usa Load Balancer, che offre un bilanciamento a bassa latenza del traffico tra le macchine virtuali e tra app ibride multilime.
Archiviazione su disco di Azure offre un'archiviazione a blocchi a prestazioni elevate e altamente durevole per le macchine virtuali di Azure. Supporta diverse opzioni di archiviazione su disco per soddisfare le esigenze di prestazioni e durabilità. Sono disponibili quattro opzioni di archiviazione su disco per il cloud: Archiviazione su disco Ultra di Azure, UNITÀ SSD Premium di Azure, UNITÀ SSD Standard di Azure e HDD Standard di Azure.
file di Azure offre condivisioni file semplici, sicure e serverless di livello aziendale nel cloud. Le condivisioni supportano l'accesso tramite i protocolli SMB (Server Message Block) e NFS (Network File System) standard del settore. Le distribuzioni cloud e locali di Windows, Linux e macOS possono montare contemporaneamente condivisioni file.
ExpressRoute include connessioni private tra l'infrastruttura locale e i data center di Azure. Consente di garantire connettività ad alta velocità e sicurezza.
Azure SQL è una famiglia di database cloud SQL che offrono un'esperienza unificata per l'intero portfolio SQL e un'ampia gamma di opzioni di distribuzione dal perimetro al cloud. Fornisce servizi di database completamente gestiti per i carichi di lavoro migrati.
Il database SQL di Azure, che fa parte della famiglia SQL di Azure, è un motore di database PaaS (Platform as a Service) completamente gestito. Si occupa della maggior parte delle funzioni di gestione del database, ad esempio l'aggiornamento, l'applicazione di patch, i backup e il monitoraggio, senza il coinvolgimento dell'utente. Il database SQL viene sempre eseguito sulla versione stabile più recente del motore di database di SQL Server e sul sistema operativo con patch, con disponibilità 99.99% per garantire disponibilità elevata e prestazioni.
Dettagli dello scenario
Infinite i consente di eseguire la migrazione dei carichi di lavoro di System i e AS/400 in Azure. I carichi di lavoro migrati in Azure mantengono o migliorano le prestazioni e la disponibilità, riducono i costi e creano opportunità di modernizzazione.
Dopo la distribuzione in Infinite i in Azure, le applicazioni vengono eseguite come nella piattaforma System i. L'ambiente di runtime Infinite i supporta i comandi del linguaggio di elaborazione e controllo dei processi in un ambiente Linux.
Si usa la suite Infinite i per compilare le applicazioni. La suite include compilatori e traduttori per queste tecnologie: RPG, RPG/ILE, RPG/Free, COBOL, Control Language Programs (CLP) e DDS (Data Description Specifications).
L'ambiente Infinite i offre i vantaggi seguenti:
Migrazione semplice dei carichi di lavoro System i ad Azure.
Conversione di archivi nastri per il backup e la conformità alle normative.
Schermate dell'applicazione che funzionano come in precedenza. È possibile aggiornare le schermate alle interfacce utente basate sul Web.
Un database interno infinito che contiene i dati ed emula DB2/400. È invece possibile eseguire la migrazione a un database SQL standard, con modifiche al codice nulle o trascurabili.
Risparmi sulle licenze e sulla manutenzione che riducono significativamente il costo totale di proprietà.
Opzioni più veloci e a basso costo per il ripristino di emergenza in Azure rispetto a System i.
Potenziali casi d'uso
Eseguire facilmente la migrazione di carichi di lavoro IBM System i e AS/400 in Azure.
Modernizzare i carichi di lavoro system i e AS/400 e ridurre i costi.
Considerazioni
Queste considerazioni implementano i pilastri di Azure Well-Architected Framework, che è un set di set di principi guida che è possibile usare per migliorare la qualità di un carico di lavoro. Per altre informazioni, vedere Well-Architected Framework.
Affidabilità
L'affidabilità garantisce che l'applicazione possa soddisfare gli impegni assunti dai clienti. Per maggiori informazioni, consultare la sezione Elenco di controllo per la revisione della progettazione per l'affidabilità.
Questa architettura supporta ridondanza e ripristino di emergenza per la disponibilità elevata:
- Usare Site Recovery per il ripristino di emergenza nelle macchine virtuali di Azure. Consente di proteggere le macchine virtuali da interruzioni principali riducendo al minimo i tempi di inattività e la perdita di dati. Il servizio è affidabile, conveniente e facile da distribuire.
Per migliorare la disponibilità, seguire questa procedura:
Usare le zone di disponibilità di Azure per proteggersi dalle interruzioni dell'infrastruttura eliminando tutti i singoli punti di errore. Il contratto di servizio per le macchine virtuali è pari a 99,99% tempo di attività.
Usare i set di scalabilità di macchine virtuali per configurare un gruppo di macchine virtuali con carico bilanciato che costituiscono un set di scalabilità di macchine virtuali di Azure. Questo approccio aumenta la disponibilità.
Per altre informazioni, vedere Opzioni di disponibilità per le macchine virtuali.
Sicurezza
La sicurezza offre garanzie contro attacchi intenzionali e l'uso improprio dei dati e dei sistemi preziosi. Per maggiori informazioni, consultare la sezione Elenco di controllo per la revisione della progettazione per la sicurezza.
Infinite i esegue la migrazione dei ruoli di accesso basati sull'utente di System i ad Azure.
L'ambiente di runtime Infinite i offre lo stesso livello di sicurezza in Azure fornito dall'ambiente System i.
Ottimizzazione dei costi
L'ottimizzazione dei costi è incentrata sui 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.
La soluzione Infinite i mantiene i costi al minimo per ridurre il costo totale di proprietà:
La migrazione ad Azure elimina i costi di licenza e manutenzione di IBM.
Linux ha costi di implementazione inferiori rispetto alle piattaforme IBM.
La funzionalità di scalabilità automatica dei servizi PaaS viene ridimensionata su richiesta per ridurre al minimo i costi.
Per stimare il costo di implementazione di questa soluzione, usare il calcolatore prezzi di Azure .
Ecco alcune considerazioni sui prezzi per componenti specifici:
I prezzi delle macchine virtuali Windows e i prezzi delle macchine virtuali Linux dipendono dalla capacità di calcolo.
Per ExpressRoute, si paga una tariffa mensile per le porte e le tariffe di trasferimento dei dati in uscita.
I costi di Archiviazione BLOB di Azure dipendono dalle opzioni di ridondanza dei dati e dal volume.
I prezzi di File di Azure dipendono da diversi fattori, tra cui volume di dati, ridondanza dei dati, volume delle transazioni e numero di server di sincronizzazione file usati.
Per i prezzi di Archiviazione su disco Ultra o SSD Premium, vedere Prezzi di Managed Disks.
Non sono previsti costi iniziali per il database SQL. Si paga per le risorse durante l'uso.
Per Site Recovery, si paga per ogni istanza protetta.
I servizi seguenti sono gratuiti con la sottoscrizione di Azure, ma si paga per l'utilizzo e il traffico:
Per la rete virtuale, gli indirizzi IP hanno un addebito nominale.
Eccellenza operativa
L'eccellenza operativa copre i processi operativi che distribuiscono un'applicazione e lo mantengono in esecuzione nell'ambiente di produzione. Per maggiori informazioni, consultare la sezione Elenco di controllo per la revisione della progettazione per l'eccellenza operativa.
La metodologia di distribuzione Infinite i consiglia di convertire e testare i carichi di lavoro nella piattaforma originale prima di eseguire la migrazione del codice e dei dati alla piattaforma Azure.
Quando si spostano carichi di lavoro in Azure, usare zone di disponibilità, set di scalabilità e Site Recovery per ridurre il sovraccarico di gestione per il ridimensionamento e l'affidabilità.
Prendere in considerazione l'uso di modelli di Azure Resource Manager per la distribuzione con script e per le funzionalità di monitoraggio e avviso.
Efficienza delle prestazioni
L'efficienza delle prestazioni si riferisce alla capacità del carico di lavoro di ridimensionarsi per soddisfare in modo efficiente le esigenze degli utenti. Per maggiori informazioni, consultare la sezione Elenco di controllo per la revisione della progettazione per l'efficienza delle prestazioni.
Il processo di progettazione della migrazione Infinite i considera le caratteristiche delle prestazioni dei carichi di lavoro in esecuzione in System i e seleziona la configurazione corretta dei servizi di Azure per le prestazioni desiderate in Azure.
Infinite i può sfruttare i set di scalabilità di Azure per aggiungere capacità in base alle esigenze.
L'architettura è progettata per supportare l'elaborazione parallela eseguendo più set di macchine virtuali nello stesso database. Le transazioni indipendenti non si basano l'una sull'altra essere seriali.
Per questa architettura, usare Ssd Premium o Archiviazione su disco Ultra per migliorare le prestazioni.
Collaboratori
Microsoft gestisce questo articolo. I collaboratori seguenti hanno scritto questo articolo.
Autore principale:
- Philip Brooks | Senior Program Manager
Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.
Passaggi successivi
Per ottimizzare i costi dei componenti, vedere le raccomandazioni di Well-Architected Framework.
Infinite i del partner Infinite Corporation:
Informazioni su IBM System i (AS/400):
Risorse correlate
Eseguire la migrazione dei carichi di lavoro del sistema IBM: