Modifier

Refactoriser un mainframe IBM z/OS avec installation de couplage (CF) sur Azure

Azure Kubernetes Service (AKS)
Machines virtuelles Azure
Réseau virtuel Azure

Cette architecture montre comment Azure peut fournir des performances de scale-out et une haute disponibilité similaire aux systèmes mainframe IBM z/OS avec des installations de couplage (CF).

Architecture

Architecture mainframe

Le schéma suivant illustre l’architecture d’un système mainframe IBM z/OS avec une installation de couplage et un Parallel Sysplex :

Schéma illustrant une architecture mainframe IBM z/OS avec les composants de couplage et Parallel Sysplex.

Téléchargez un fichier Visio de cette architecture.

Workflow

  • L’entrée est acheminée vers le mainframe via TCP/IP, à l’aide de protocoles de mainframe standard tels que TN3270 et HTTPs (A) .
  • Les applications de destination peuvent être des systèmes batch ou en ligne (B) . Les programmes de traitement par lots peuvent se propager ou se cloner sur plusieurs CEC qui partagent des données dans la couche Données. Le niveau en ligne peut répartir une région CICS logique sur plusieurs CEC à l’aide de Parallel Sysplex CICS ou CICSPlex.
  • Les applications COBOL, PL/I, Assembler ou compatibles (C) s’exécutent dans l’environnement compatible Parallel Sysplex, par exemple CICSPlex.
  • D’autres services d’application (D) peuvent également utiliser la mémoire partagée sur un CF.
  • Les services de données compatibles avec Sysplex comme DB2 (E) permettent le stockage des données avec scale-out dans un environnement partagé.
  • Les services d’intergiciel et utilitaires tels que MQSeries, la gestion et l’impression (F) s’exécutent sur z/OS dans chaque CEC.
  • Les partitions logiques (LPAR) sur chaque CEC (G) exécutent z/OS. D’autres environnements tels que z/VM ou d’autres moteurs comme zIIP ou IFL peuvent également exister.
  • Le CEC se connecte via la CF (H) à la mémoire partagée et à l’état.
  • La CF (I) est un appareil physique qui connecte plusieurs CEC pour partager la mémoire.

Architecture Azure

Le schéma suivant montre comment les services Azure peuvent offrir des fonctionnalités et des performances similaires aux mainframes z/OS avec les Parallel Sysplex et des CF :

Schéma montrant la correspondance entre les composants du mainframe IBM z/OS et les fonctions Azure.

Téléchargez un fichier Visio de cette architecture.

Workflow

  1. Les entrées proviennent de clients distants via Express Route ou d’autres applications Azure. Dans les deux cas, TCP/IP est la connexion principale au système.

    Un navigateur web pour accéder aux ressources système Azure remplace l’émulation de terminal pour la demande et les utilisateurs en ligne. Les utilisateurs accèdent aux applications web via le port TLS 443. Les couches de présentation des applications web peuvent rester quasiment inchangées afin de minimiser la reformation de l’utilisateur final. Vous pouvez également mettre à jour la couche de présentation de l’application web avec des infrastructures d’expérience utilisateur modernes.

    Pour l’accès des administrateurs aux machines virtuelles Azure, les hôtes Azure Bastion optimisent la sécurité en minimisant les ports ouverts.

  2. Dans Azure, l’accès aux clusters de calcul d’application s’effectue par le biais d’Azure Load Balancer, ce qui permet d’utiliser des ressources de calcul avec scale-out pour traiter le travail d’entrée.

  3. Le type de cluster de calcul d’application à utiliser varie selon que l’application s’exécute sur des machines virtuelles ou dans un cluster de conteneurs comme Kubernetes. En règle générale, l’émulation de systèmes mainframe pour les applications écrites en PL/I ou COBOL utilise des machines virtuelles, tandis que les applications sont remplacées par des conteneurs Java ou .NET. Certains logiciels d’émulation de systèmes mainframe peuvent également prendre en charge le déploiement en conteneurs.

  4. Les serveurs d’applications, comme Tomcat pour Java ou le moniteur de traitement des transactions CICS/IMS pour COBOL, reçoivent l’entrée et partagent l’état et les données de l’application à l’aide d’Azure Cache pour Redis ou de l’accès direct distant à la mémoire (DMA). Cette capacité est similaire à CF pour les systèmes mainframe.

  5. Les services de données dans les clusters d’application permettent plusieurs connexions à des sources de données persistantes. Ces sources de données peuvent inclure des services de données PaaS comme Azure SQL Database et Azure Cosmos DB, des bases de données sur des machines virtuelles comme Oracle ou DB2, ou des référentiels Big Data comme Databricks et Azure Data Lake. Les services de données d’application peuvent également se connecter à des services d’analyse de données de streaming comme Kafka et Azure Stream Analytics.

    Les services de données PaaS Azure fournissent un stockage de données évolutif et hautement disponible qui peut être partagé par plusieurs ressources de calcul dans un cluster. Ces services peuvent également être géo-redondants.

  6. Les serveurs d’applications hébergent divers programmes d’application basés sur le langage, par exemple les classes Java dans Tomcat ou les programmes COBOL avec des verbes CICS dans les machines virtuelles d’émulation CICS.

  7. Les services de données utilisent une combinaison de stockage haute performance sur des disques SSD Ultra ou Premium, de stockage de fichiers sur Azure NetApp Files ou Azure Files ainsi que de stockage blob, archive et de sauvegarde standard qui peut être localement redondant ou géoredondant.

  8. Le stockage d’objets blob Azure est une zone d’atterrissage commune pour les sources de données externes.

  9. Azure Data Factory ingère et synchronise les données de plusieurs sources de données internes et externes.

  10. Azure Site Recovery fournit une récupération d’urgence pour les composants de cluster de machines virtuelles et de conteneurs.

Composants

  • Azure ExpressRoute étend vos réseaux locaux au cloud de Microsoft via une connexion privée assurée par un partenaire de connectivité. Grâce à ExpressRoute, vous pouvez établir des connexions aux services cloud tels qu’Azure et Office 365.

  • Azure Bastion est un service PaaS complètement managé que vous approvisionnez au sein de votre réseau virtuel. Il fournit une connectivité RDP/SSH sécurisée et fluide aux machines virtuelles de votre réseau virtuel, directement à partir du portail Azure via TLS.

  • Azure Load Balancer distribue les flux entrants arrivant sur le serveur front-end de l’équilibreur de charge aux instances de pool de back-ends selon des règles d’équilibrage de charge et des sondes d’intégrité configurées. Les instances de pool de back-end peuvent être des machines virtuelles Azure ou des instances d’un groupe de machines virtuelles identiques. Load Balancer est le point de contact unique pour les clients.

    Load Balancer opère sur couche 4 du modèle OSI (Open Systems Interconnection). Des équilibreurs de charge au niveau du protocole réseau de niveau 7 et du niveau 4 sont disponibles. Le type à utiliser dépend de la façon dont l’entrée d’application atteint le point d’entrée du cluster de calcul.

  • Machines virtuelles Microsoft Azure fournit des ressources informatiques à la demande et évolutives qui vous offrent la flexibilité de la virtualisation. Les machines virtuelles Azure vous offrent un choix de systèmes d’exploitation tels que Windows et Linux.

    La plupart des tailles de machine virtuelle HPC (High-Performance Computing) Azure disposent d’une interface réseau pour la connectivité RDMA.

  • Les réseaux virtuels Azure constituent le composant principal fondamental pour les réseaux privés Azure. Les réseaux virtuels permettent aux ressources Azure, comme les machines virtuelles, de communiquer en toute sécurité entre elles, avec l'internet et les réseaux locaux. Le réseau virtuel Azure est similaire à un réseau traditionnel local, mais avec les avantages supplémentaires de l’infrastructure Azure tels que la scalabilité, la disponibilité et l’isolation.

    Les interface de réseau virtuel permettent aux machines virtuelles Azure de communiquer avec des ressources sur Internet, sur Azure et locales. Comme le montre cette architecture, vous pouvez ajouter plusieurs cartes d’interface réseau supplémentaires à une machine virtuelle Azure, de sorte que les machines virtuelles enfants puissent avoir leurs propres dispositifs d’interface réseau et adresses IP dédiées.

  • Azure Kubernetes service (AKS) est un service Kubernetes complètement managé permettant de déployer et de gérer des applications conteneurisées dans des clusters de calcul basés sur des conteneurs.

  • Azure Cache pour Redis est un cache en mémoire complètement managé qui améliore les performances et la scalabilité des architectures gourmandes en données. L’architecture actuelle utilise Azure Cache pour Redis pour partager les données et l’état entre les ressources de calcul.

  • Azure SQL Database est un moteur de base de données PaaS complètement managé qui s’exécute toujours sur la dernière version stable de SQL Server et un système d’exploitation corrigé, avec une disponibilité de 99,99 %. SQL Database gère la mise à niveau, la mise à jour, la sauvegardes, la surveillance et la plupart des autres fonctions de gestion des bases de données sans intervention de l’utilisateur. Ces fonctionnalités PaaS vous permettent de vous concentrer sur l’administration et l’optimisation des bases de données stratégiques et spécifiques à un domaine.

  • Azure Private Link pour Azure SQL Database fournit une connexion directe privée des machines virtuelles Azure vers Azure SQL Database qui est isolée du réseau principal Azure.

  • Azure Cosmos DB est un service PaaS Azure pour les bases de données NoSQL.

  • Azure Database pour PostgreSQL est un service PaaS Azure pour les bases de données PostgreSQL.

  • Les disques managés Azure sont des volumes de stockage au niveau du bloc qu’Azure gère sur des machines virtuelles Azure. Les types de disques disponibles sont les disques Ultra, les disques SSD Premium, les disques SSD Standard et les disques durs standard. Cette architecture fonctionne de manière optimale avec des disques SSD Premium ou Ultra.

  • Azure Data Factory est une solution d’intégration de données serverless complètement managée pour l’ingestion, la préparation et la transformation des données à grande échelle.

  • Azure Files propose des partages de fichiers complètement managés dans votre compte Stockage Azure, qui sont accessibles à partir du cloud ou en local. Les déploiements Windows, Linux et macOS peuvent monter des partages de fichiers Azure simultanément, et accéder aux fichiers via le protocole SMB (Server Message Block) standard.

  • Azure Stream Analytics est un service d’analyse Azure pour les données diffusées en continu.

  • Azure Databricks est un service PaaS Apache Spark pour l’analytique du Big Data.

Détails du scénario

Les CF (Coupling Facilities) sont des appareils physiques qui connectent plusieurs serveurs mainframe ou CEC (Central Electronics Complexes) avec une mémoire partagée, ce qui permet aux systèmes d’effectuer un scale-out pour améliorer les performances. Les applications écrites dans les langages tels que le COBOL et le PL/I tirent en parti de ces fonctionnalités étroitement couplées de scale-out parallèle.

Les bases de données IBM DB2 et les serveurs CICS (Customer information Control System) peuvent utiliser les CF avec un sous-système mainframe appelé Parallel Sysplex qui combine le partage de données et l’informatique parallèle. Parallel Sysplex permet à un cluster d’un maximum de 32 systèmes de partager les charges de travail pour obtenir des performances élevées, offrir une haute disponibilité et bénéficier de la récupération d’urgence. Les CF mainframe avec Sysplex Parallel résident généralement dans le même centre de données, à proximité des CEC, mais peuvent également s’étendre sur plusieurs centres de données.

Les ressources Azure peuvent offrir des performances similaires avec scale-out parallèle, avec les données partagées et la haute disponibilité. Les clusters de calcul Azure partagent la mémoire par le biais de mécanismes de mise en cache des données comme le Azure Cache pour Redis et utilisent des technologies de données évolutives comme Azure SQL Database et Azure Cosmos DB. Azure peut implémenter des groupes et groupes à haute disponibilité, associés à des fonctionnalités géo-redondantes pour étendre le calcul avec scale-out parallèle et haute disponibilité pour les centres de données Azure distribués.

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework qui est un ensemble de principes directeurs qui permettent d’améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.

Disponibilité

Cette architecture utilise Azure Site Recovery pour mettre en miroir les machines virtuelles Azure dans une région Azure secondaire pour un basculement et une récupération d’urgence rapides en cas de défaillance du centre de données Azure.

Résilience

La résilience est intégrée à cette solution en raison des équilibreurs de charge. En cas de défaillance d’un serveur de présentation ou de transaction, les autres serveurs qui se trouve derrière l’équilibreur de charge peuvent exécuter les charges de travail.

Extensibilité

Vous pouvez augmenter la capacité des ensembles de serveurs pour fournir davantage de débit. Pour plus d’informations, consultez Groupes de machines virtuelles identiques.

Sécurité

La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour plus d’informations, consultez Vue d’ensemble du pilier Sécurité.

  • Cette solution utilise un groupe de sécurité réseau Azure pour gérer le trafic entre les ressources Azure. Pour plus d’informations, consultez Groupes de sécurité réseau.

  • Azure Private Link pour Azure SQL Database fournit une connexion directe privée, isolée au réseau principal Azure, des machines virtuelles Azure vers Azure SQL Database.

  • Azure Bastion optimise la sécurité de l’accès administrateur en minimisant les ports ouverts. Bastion fournit une connectivité RDP/SSH sécurisée et fluide à vos machines virtuelles de réseau virtuel, directement à partir du portail Azure via TLS.

Optimisation des coûts

L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez Vue d’ensemble du pilier d’optimisation des coûts.

Étapes suivantes