Migrer le niveau de données mainframe vers Azure avec mLogica LIBER*IRIS

Azure Database pour MySQL
Azure Database pour PostgreSQL
Azure Cosmos DB
Azure SQL Database
Stockage Azure

Les applications mainframe génèrent des volumes élevés de données transactionnelles. Azure est une plateforme appropriée pour moderniser ces charges de travail et migrer leurs données. Azure bases de données relationnelles et NoSQL fournissent une scalabilité, une haute disponibilité et une facilité de maintenance qui répondent ou dépassent les environnements mainframe. Si vous envisagez de mettre hors service une charge de travail mainframe et de conserver les données dans un stockage à faible coût, Azure propose plusieurs options de stockage.

La migration de charges de travail d’un mainframe vers Azure dans le cadre de la replatformation ou de la refactorisation d’applications nécessite généralement une migration de données à grande échelle. mLogica LIBER*IRIS fournit une solution éprouvée pour la migration de données en bloc d’un mainframe vers Azure. La solution opère à grande échelle pour la migration des charges de travail d’entreprise. Cet article explique comment migrer des données mainframe IBM z/OS vers Azure avec une haute fidélité.

Architecture

Le diagramme suivant montre comment mLogica LIBER*IRIS s’intègre à Azure composants pour migrer des données mainframe vers Azure à grande échelle.

Diagram qui montre l'architecture de l'intégration de mLogica LIBER*IRIS avec les composants Azure pour migrer des données de mainframe.

mLogica LIBER*IRIS et ses logos sont des marques commerciales de mLogica. L’utilisation de ces marques n’implique aucune approbation.

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

Flux de données

Le flux de données suivant correspond au diagramme précédent :

  1. Copier des fichiers DDL (Data Definition Language), des fichiers dbD (Database Description), des copybooks, des dispositions de données et d’autres artefacts de description des données vers une machine virtuelle Linux Azure qui exécute les outils de service de migration de données mLogica. Utilisez FTPS (File Transfer Protocol Secure) sur un réseau privé virtuel virtuel de site à site (VPN) sécurisé Azure ou Azure ExpressRoute.

  2. Le cluster de migration de données mLogica LIBER*IRIS génère des scripts d’extraction de données à exécuter sur le mainframe.

  3. Utilisez FTPS sur le VPN pour transférer les scripts d’extraction de données vers le mainframe. La connexion FTPS convertit ASCII au format EBCDIC du mainframe.

  4. Les scripts extraits s’exécutent sur le mainframe. Ils exportent des données de plusieurs sources dans des fichiers séquentiels, où toutes les données décimales empaquetées sont décompressées. Ils génèrent les scripts de chargement SQL utilisés pour charger les données dans la base de données cible.

  5. Le système transfère les fichiers séquentiels et charge les scripts vers Azure Blob Storage à l’aide du protocole SFTP (Binary Secure File Transfer Protocol). Les données mainframe restent au format EBCDIC à cette étape.

  6. Le service de migration des données mLogica exécute les scripts de chargement pour convertir EBCDIC en ASCII. Les scripts écrivent des erreurs pendant le chargement sur Azure Storage. Pour réduire les coûts, vous pouvez utiliser deux comptes de stockage. Stockez les fichiers de données sur un niveau d’accès chaud et les fichiers journaux sur un niveau d’accès froid.

  7. Les scripts chargent les données converties en ASCII à partir de fichiers séquentiels dans la base de données relationnelle Azure cible. Les scripts de chargement incluent des commandes DDL pour créer des tables et d’autres objets, et des requêtes SQL pour charger les données dans ces objets. Mettez à l’échelle horizontalement le processus de charge sur un cluster pour optimiser le débit en fonction des besoins. Les journaux d’exécution et les journaux d’exception détaillés sont stockés dans Blob Storage pour une analyse plus approfondie.

  8. Le service de migration de données mLogica LIBER*IRIS exécute les scripts de charge pour transformer les données du format de fichier relationnel vers NoSQL format de base de données. Vous pouvez charger ces données NoSQL sur Azure Cosmos DB à l’aide de l’API SQL Azure Cosmos DB.

Composants

Cette solution utilise les composants suivants.

Mise en réseau et identité

  • Azure VPN Gateway est une passerelle de réseau virtuel qui envoie le trafic chiffré entre un réseau virtuel Azure et un emplacement local sur l’Internet public. Dans cette architecture, VPN Gateway offre une alternative à ExpressRoute pour sécuriser la connectivité entre l’environnement mainframe et Azure.

  • ExpressRoute est un service de connectivité qui étend les réseaux locaux dans Azure via un fournisseur de connectivité. Dans cette architecture, ExpressRoute fournit une connexion privée sécurisée pour transférer des fichiers de définition de données et des scripts d’extraction entre le mainframe et Azure.

  • Microsoft Entra ID est un service de gestion des identités et des accès qui peut être synchronisé avec un répertoire local. Dans cette architecture, Microsoft Entra ID fournit un contrôle d’authentification et d’accès pour le cluster de migration de données mLogica et les ressources Azure.

Compute

  • Azure Virtual Machines est un service de calcul qui fournit des ressources informatiques évolutives à la demande. Dans cette architecture, le cluster de migration de données mLogica s’exécute sur Azure machines virtuelles Linux optimisées pour les performances réseau.

Bases de données et stockage

  • Azure SQL, Azure Database for PostgreSQL et Azure Database for MySQL sont des services PaaS (Platform as a Service) entièrement managés pour SQL Server, PostgreSQL et MySQL respectivement. Dans cette architecture, ces services fournissent des options hautes performances et hautement disponibles pour les données relationnelles mainframe, les données non relationnelles émulées et les données VSAM (Virtual Storage Access Method).

  • Azure Cosmos DB est un service de base de données NoSQL entièrement géré qui offre une faible latence et une scalabilité élastique. Dans cette architecture, elle migre des sources mainframe non relationnelles telles que le système de gestion des informations (IMS), le système de gestion de base de données intégré (IDMS) et le système de base de données adaptable (ADABAS).

  • Blob Storage est un service de stockage cloud qui fournit un stockage hautement disponible, chiffré au repos, économique et à haute capacité. Dans cette architecture, Blob Storage prend en charge le trafic SFTP binaire direct à partir du mainframe et peut monter des conteneurs sur des machines virtuelles Linux à l’aide de NFS 3.0 pour stocker des fichiers séquentiels et charger des scripts.

Supervision

  • Azure Monitor est une plateforme de supervision qui collecte, analyse et agit sur les données de télémétrie à partir d’environnements cloud et locaux. Dans cette architecture, Azure Monitor surveille le cluster de migration de données mLogica et configure des alertes pour la gestion proactive.

    • Application Insights est une fonctionnalité Azure Monitor qui surveille les performances des applications en collectant et en analysant les données de télémétrie. Dans cette architecture, Application Insights surveille le cluster de migration de données mLogica pour obtenir des insights sur les performances et les diagnostics.

    • Azure Monitor Logs est une fonctionnalité Azure Monitor qui collecte et organise les données de journal et de performances à partir de ressources surveillées. Dans cette architecture, Azure Monitor Journaux regroupe les données de plusieurs sources dans un seul espace de travail, y compris les journaux de plateforme à partir de Azure services, les données de journal et de performances des agents de machine virtuelle, ainsi que les données d’utilisation et de performances des applications.

    • Log Analytics est une fonctionnalité Azure Monitor qui exécute des requêtes de journal pour vous aider à utiliser les données collectées dans les journaux d’activité Azure Monitor. Dans cette architecture, Log Analytics analyse les journaux d'exécution de script de charge mLogica que Blob Storage stocke. Il utilise un langage de requête pour joindre des données à partir de plusieurs tables, agréger de grands ensembles de données et effectuer des opérations complexes.

Détails du scénario

Cet article explique comment utiliser le produit mLogica pour effectuer une migration de données en bloc d’un système mainframe vers Azure.

Cas d’usage potentiels

Cet exemple de charge de travail prend en charge deux cas d’usage clés :

  • Reconception ou refactorisation de charge de travail : Déplacer toutes les données d'un ordinateur central liées à la charge de travail vers Azure. Ces données incluent des bases de données telles que Db2, IMS et IDMS, et des fichiers.

  • Archival : Mettre hors service la charge de travail mainframe et conserver les données dans une solution de stockage Azure à faible coût.

Considérations

Ces considérations implémentent les piliers de l’infrastructure Azure Well-Architected, qui est un ensemble de tenets guidants que vous pouvez utiliser pour améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Well-Architected Framework.

Fiabilité

La fiabilité permet de s’assurer que votre application peut respecter les engagements que vous prenez à vos clients. Pour plus d’informations, consultez liste de vérification de la révision de conception pour la fiabilité.

Suivez ces recommandations générales, sauf si vous avez un besoin spécifique qui vous oblige à les ignorer :

  • Créez toutes les ressources Azure pour ce scénario dans une seule région afin de réduire la latence du réseau.

  • Fractionnez les données en plusieurs fichiers et envoyez-les à Azure en parallèle, plutôt que d’envoyer un seul fichier volumineux à partir du mainframe.

  • Utilisez Azure Monitor et Application Insights pour surveiller le cluster de migration de données mLogica. Configurez des alertes pour une gestion proactive.

Disponibilité

Cet exemple de flux de travail décrit la migration de données mainframe-to-Azure pour reformer, refactoriser ou archiver une charge de travail. Vous exécutez généralement cette tâche discrète plusieurs fois pendant un projet long de mois. Ce scénario ne nécessite pas de haute disponibilité, mais vous pouvez concevoir le cluster de migration de données mLogica pour fournir une haute disponibilité.

Azure services de base de données prennent en charge la redondance de zone. Vous pouvez configurer le basculement pour les pannes et les créneaux de maintenance.

Sécurité

La sécurité offre des garanties contre les attaques délibérées et l’utilisation abusive de vos données et systèmes précieux. Pour plus d’informations, consultez liste de contrôle de révision de conception pour la sécurité. Pour obtenir des conseils généraux sur la conception de solutions sécurisées, consultez la documentation de sécurité Azure.

Les services de base de données dans Azure support différentes options de sécurité :

Vous pouvez contrôler l’authentification et le contrôle d’accès sur le cluster de migration de données mLogica à l’aide de Microsoft Entra ID. Vous pouvez configurer Azure ressources pour l’authentification et l’autorisation à l’aide de Microsoft Entra ID et du contrôle d’accès en fonction du rôle (RBAC).

TLS chiffre les données en transit entre le cluster de migration de données mLogica et le mainframe. Vous pouvez stocker des certificats TLS dans Azure Key Vault pour renforcer la sécurité. Secure Shell (SSH) chiffre les données en transit entre le mainframe et Blob Storage.

Les données mainframe et les scripts de chargement sont temporairement stockés dans Blob Storage, où ils sont chiffrés au repos. Les données sont supprimées de Blob Storage une fois la migration terminée.

Cet exemple de flux de travail utilise ExpressRoute ou VPN de site à site pour une connexion privée et efficace à Azure à partir de votre environnement local.

Optimisation des coûts

L’optimisation des coûts se concentre sur les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez liste de vérification de la révision de conception pour l’optimisation des coûts.

  • Mettre à l’échelle, suspendre et reprendre les ressources de calcul avec Azure SQL Database serverless. Il ajuste automatiquement le calcul en fonction de l’activité de charge de travail afin que vous payiez uniquement les ressources que vous utilisez.

  • Utilisez une stratégie de gestion du cycle de vie pour déplacer des données entre les niveaux d’accès dans Azure Blob Storage.

    Déplacez les données d’un niveau d’accès plus chaud vers un niveau plus froid quand personne ne l’accède pendant une période de temps. Vous pouvez également déplacer des données d’un niveau d’accès froid vers un niveau d’accès archive.

  • Utilisez Azure Advisor pour rechercher des ressources sous-utilisées. Obtenez des recommandations sur la façon de reconfigurer ou de consolider des ressources afin de réduire vos dépenses.

  • Utilisez la calculatrice de prix Azure pour estimer les coûts des composants Azure pour cette solution.

Excellence opérationnelle

L’excellence opérationnelle couvre les processus d’exploitation qui déploient une application et la conservent en production. Pour plus d’informations, consultez liste de vérification de la révision de conception pour l’excellence opérationnelle.

Vous pouvez utiliser Azure DevOps pour réingérer des applications mainframe sur Azure pendant chaque phase du développement logiciel et de la collaboration d’équipe. Azure DevOps fournit ces services :

  • Azure Boards : planification agile, suivi des éléments de travail, visualisation et création de rapports.

  • Azure Pipelines : une plateforme d'intégration continue et de livraison continue (CI/CD) indépendante de la langue, de la plateforme et du cloud qui prend en charge les conteneurs ou Kubernetes.

  • Azure Repos : référentiels Git privés hébergés par le cloud.

  • Azure Artifacts : gestion intégrée des packages qui prend en charge les flux de package Maven, npm, Python et NuGet à partir de sources publiques ou privées.

  • Azure Test Plans : solution de test planifiée et exploratoire intégrée.

Efficacité des performances

L’efficacité des performances fait référence à la capacité de votre charge de travail à mettre à l’échelle pour répondre efficacement aux demandes des utilisateurs. Pour plus d’informations, consultez liste de vérification de la révision de conception pour l’efficacité des performances.

Utilisez les recommandations suivantes pour améliorer l’efficacité des performances :

  • Déployez le cluster de migration de données mLogica sur plusieurs machines virtuelles si vous migrez plusieurs jeux de données indépendants volumineux pour optimiser la vitesse de chargement des données. Vous pouvez charger plusieurs jeux de données en parallèle à partir du mainframe pour Blob Storage.

  • Considérez SQL Database serverless pour l'autoscaling basé sur la charge de travail. Vous pouvez mettre à l’échelle d’autres bases de données Azure vers le haut et vers le bas en utilisant l’automatisation pour répondre à vos demandes de charge de travail. Pour plus d’informations, consultez Mise à l’échelle automatique.

Contributeurs

Microsoft conserve cet article. Les contributeurs suivants ont écrit cet article.

Auteur principal :

Pour afficher les profils de LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes

Passez en revue les guides de migration de base de données Azure.

Pour plus d’informations, contactez Azure Data Engineering - Mainframe & Midrange Modernisation.