Moderniser des applications web ASP.NET vers Azure Kubernetes Service (Préversion)

Cet article explique comment migrer à grande échelle des applications web ASP.NET vers Azure Kubernetes Service à l’aide d’Azure Migrate. Actuellement, ce flux ne prend en charge que les applications web ASP.NET s’exécutant sur VMware. Pour les autres environnements, procédez comme suit.

Notes

Les tutoriels vous montrent le chemin de déploiement le plus simple pour un scénario donné afin que vous puissiez configurer rapidement une preuve de concept. Ils utilisent les options par défaut quand c’est possible et n’affichent pas tous les paramètres et chemins possibles.

Dans ce tutoriel, vous apprendrez à :

  • Choisissez et préparez les applications web ASP.NET à grande échelle pour la migration vers Azure Kubernetes Service à l’aide du flux intégré dans Azure Migrate.
  • Configurez des paramètres cibles à l’instar du nombre d’instances d’application à exécuter et répliquer vos applications.
  • Exécutez des migrations test pour vous assurer que vos applications fonctionnent correctement.
  • Exécutez une migration entière de vos applications vers AKS.

Prérequis

Avant de commencer ce didacticiel, vous devez répondre aux questions suivantes :

Limites

  • Vous pouvez migrer des applications ASP.NET utilisant Microsoft .NET Framework 3.5 ou une version ultérieure.
  • Vous pouvez migrer des serveurs d’applications exécutant Windows Server 2012 R2 ou une version ultérieure (les serveurs d’applications doivent exécuter PowerShell version 5.1).
  • Les applications doivent exécuter Internet Information Services (IIS) 7.5 ou une version ultérieure.

Activer la réplication

Une fois les applications web évaluées, vous pouvez les migrer à l’aide du flux de migration intégré dans Azure Migrate. La première étape de ce processus est de configurer et commencer la réplication de vos applications web.

Spécifier l’intention

  1. Accédez à votre projet Azure Migrate >Serveurs, bases de données et applications web>Outils de migration>Migration et modernisation et sélectionnez Répliquer.

    Screenshot of the Replicate option selected.

  2. Sous l’onglet Spécifier l’intention, >Que voulez-vous migrer ?, sélectionnez applications web ASP.NET dans la liste déroulante.

  3. Dans Où voulez-vous migrer ?, sélectionnez Azure Kubernetes Service (AKS).

  4. Dans le type de Virtualisation, sélectionnez VMware vSphere.

  5. Dans Appliance locale, choisissez l’appliance qui a découvert vos applications web souhaitées sur vSphere.

  6. Sélectionnez Continuer.

    Screenshot of the specify intent tab.

Choisir parmi les applications découvertes

Dans les applications >Replicate Web, vous pouvez voir une liste des applications ASP.NET découvertes dans votre environnement.

Screenshot of the Web apps tab on the Replicate tab.

  1. Choisissez une ou plusieurs applications à répliquer.

  2. La colonne État de la modernisation signale que l’application est prête à s’exécuter sur AKS. Cela peut prendre l’une des valeurs suivantes : Prêt, Erreur(s) et Réplication en cours.

  3. Choisissez l’application et le lien Configuration(s) de l’application pour ouvrir l’onglet Configurations d’application. Cela présente la liste des attributs détectés depuis les fichiers de configuration découverts. Entrez les valeurs d’attribut requises, puis choisissez Enregistrer. Ces configurations sont stockées directement dans le cluster cible en tant que secrets ou peuvent être montées au moyen d’Azure Key Vault. Ceci peut être configuré dans les paramètres avancés.

    Screenshot of the Application configurations tab.

  4. Sélectionnez l’application et le lien Répertoires d’applications pour ouvrir l’onglet Répertoires d’applications. Indiquez le chemin d’accès aux dossiers/fichiers qui doivent être copiés pour que l’application s’exécute et sélectionnez Enregistrer. Selon l’option sélectionnée dans la liste déroulante, ces artefacts sont copiés directement dans l’image conteneur ou montés comme volume persistant sur le cluster via le partage de fichiers Azure. La cible peut être configurée dans les paramètres avancés si le volume persistant est choisi.

    Screenshot of the Application directories tab.

  5. Pour les applications utilisant l’Authentification Windows, indiquée par le type d’authentification, vous pouvez configurer gMSA V2 sur le cluster AKS cible.

    Screenshot of the gMSA configuration tab.

    Setting Commentaires
    Account name : Nom du compte gMSA à utiliser. Si le compte n’existe pas, un nouveau compte portant ce nom est créé automatiquement.
    Nom d’utilisateur du compte Nom d’utilisateur de l’utilisateur de domaine standard autorisé à accéder au compte gMSA configuré sur votre contrôleur de domaine. Si le nom d’utilisateur donné n’existe pas, un nouvel utilisateur de domaine standard est créé automatiquement.
    Account password Mot de passe de l’utilisateur ci-dessous.
    Domaine du serveur DNS Adresse IP du serveur DNS qui peut résoudre votre nom de domaine Active Directory.
    Domain FQDN Nom de domaine complet de votre domaine Active Directory.
    Adresse du contrôleur de domaine Adresse IP du contrôleur de domaine Active Directory. Une connexion est établie pour permettre à l’utilisateur du domaine spécifié de récupérer à distance les informations d’identification pour le gMSA spécifié.
    Nom d’utilisateur de l’administrateur de domaine Nom d’utilisateur d’un utilisateur disposant de privilèges suffisants pour valider à distance le compte gMSA et l’utilisateur du domaine.
    Mot de passe d’administrateur de domaine Mot de passe de l’utilisateur administrateur ci-dessus.
  6. Cliquez sur Suivant.

Remarque

Le chemin d’accès à la source et la valeur de l’attribut des configurations d’applications et des répertoires d’applications doivent être inférieurs à 3 000 caractères. Cela peut se traduire approximativement par une quinzaine d’entrées (comprenant à la fois les configurations et les répertoires) d’une longueur de caractère d’environ 200 chacune.

Configurer les paramètres cibles

Dans les paramètres de la cible de >réplication, vous pouvez configurer la cible vers laquelle les applications seront migrées.

Screenshot of the Target settings tab on the Replicate tab.

  1. Choisissez l’abonnement, le groupe de ressources et la ressource du registre des conteneurs vers lesquels les images conteneurs d’applications doivent être poussées.
  2. Sélectionnez l’abonnement, le groupe de ressources et la ressource de cluster AKS sur lesquels l’application doit être déployée.
  3. Sélectionnez Suivant.

Notes

Seuls les clusters AKS avec des nœuds Windows sont indiqués.

Configurer les paramètres de déploiement

Dans les paramètres de >déploiement de réplica, vous pouvez configurer l’application sur le cluster AKS.

Screenshot of the Deployment settings tab on the Replicate tab.

  1. Les valeurs par défaut sont fournies en fonction de la détection de l’application.
  2. Dans l’option Réplica, choisissez le nombre d’instances d’application pour chaque application.
  3. Dans l’option Équilibreur de charge, choisissez Externe si l’application doit être accessible sur Internet. Si Interne est choisi, l’application n’est accessible qu’au sein du réseau virtuel du cluster AKS.
  4. Sélectionnez Suivant.

Configurer les paramètres avancés.

Si une ou plusieurs applications avaient des configurations d’application ou des répertoires mis à jour dans Répliquer>Applications web, ensuite Répliquer>Avancé est utilisé pour fournir des configurations supplémentaires requises.

Screenshot of the Advanced settings tab on the Replicate tab.

  1. Si des configurations d’application ont été fournies, choisissez de les stocker soit comme secrets Kubernetes natifs ou sur Azure Key Vault au moyen du pilote CSI du magasin de secrets. Vérifiez l’activation du module complémentaire de pilote du magasin de secrets pour le cluster cible.
  2. Si les répertoires d’applications ont été fournis avec une option de stockage persistant, sélectionnez un partage de fichiers Azure pour le stockage de ces fichiers.
  3. Sélectionnez Suivant.

Examiner et démarrer la réplication

Examinez vos sélections et apportez toutes les autres modifications requises en accédant à l’onglet de droite sous l’onglet Répliquer. Après l’évaluation, sélectionnez Répliquer.

Screenshot of the Review + start replication tab on the Replicate tab.

Préparation de la migration

Une fois la réplication commencée, Azure Migrate crée un travail de réplication accessible depuis votre projet.

  1. Accédez à votre projet Azure Migrate >Serveurs, bases de données et applications web>Outils de migration>Migration et modernisation, sélectionnez Vue d’ensemble.

    Screenshot of the Overview option selected.

  2. Sélectionnez Azure Migrate : serveur de migration hub >Modernisation (préversion)>Travaux.

    Screenshot of the Jobs tab in the migration hub.

  3. Choisissez Azure Kubernetes Service (AKS) comme cible de réplication. Un travail de réplication va être créé par Azure Migrate pour chaque application ASP.NET répliquée. Sélectionnez créer ou mettre à jour le déploiement de la charge de travail type de travail Déploiement de la charge de travail.

    Screenshot of selecting the replication jobs.

  4. Sélectionnez la ressource cible. Toutes les étapes de prémigration sont configurables ici.

    Screenshot of selecting the target resource within the replication job.

  5. Une fois la réplication terminée, l’État de la réplication est Terminé et l’État global est génération de l’image en attente.

Examinez l’image conteneur et les manifestes Kubernetes

Sous l’onglet Paramètres de la cible, des liens vers le fichier Docker et les manifestes Kubernetes sont fournis.

Screenshot of the target settings in the target resource.

  1. Sélectionnez le lien de révision du fichier Docker pour ouvrir l’éditeur. Examinez et apportez les modifications nécessaires. Sélectionnez Enregistrer.

    Screenshot of the docker file editor in the target settings.

  2. Sélectionnez le lien de révision des spécifications de déploiement pour ouvrir l’éditeur. Il contient le fichier manifeste Kubernetes contenant toutes les ressources à déployées, dont StatefulSet, Service, ServiceAccount, etc. Passez en revue et apportez les modifications nécessaires. Sélectionnez Enregistrer.

    Screenshot of the Kubernetes manifest file editor in the target settings.

  3. Sous l’onglet Vue d’ensemble, choisissez Générer une image conteneur pour générer et envoyer (push) l’image conteneur au registre de conteneurs fourni.

  4. Une fois l’image générée, l’État global devient Prêt pour la migration.

    Screenshot of the Target resource post building container image.

Exécutez un test de migration

Avec l’image conteneur prête, exécutez une migration test pour vous assurer que votre application fonctionne correctement sur AKS.

  1. Sous l’onglet Vue d’ensemble, sélectionnez Tester la migration, puis sélectionnez Oui pour confirmer.
  2. Une fois la migration test terminée, vérifiez que les charges de travail s’exécutent sur le cluster AKS. Si l’option d’équilibreur de charge externe a été choisie pendant le processus de réplication, votre application doit pouvoir accéder à Internet via un service de type loadbalancer avec une adresse IP publique.
  3. Après avoir vérifié le fonctionnement de l’application, nettoyez la migration test en sélectionnant Nettoyer la migration test.

Si la migration test échoue :

  1. Accédez à Azure Migrate : serveur de migration hub >Modernisation (préversion)>Travaux.

  2. Sélectionnez le travail Lancer la migration test qui a échoué.

    Screenshot of the failed test migrate job.

  3. Sélectionnez le lien de la tâche ayant échoué pour afficher les causes de l’échec et les suggestions possibles.

    Screenshot of the failed test migrate task.

Migrez vos applications vers AKS

L’application est enfin prête pour la migration :

  1. Sous l’onglet Vue d’ensemble, sélectionnez Migrer et sélectionnez Oui pour confirmer.

    Screenshot of the target resource ready for migration.

  2. Comme pour le flux de travail de la migration test, vérifiez que les charges de travail sont en cours d’exécution sur le cluster AKS.

  3. L’application a maintenant été migrée avec succès. Si vous désirez que l’appliance la découvre à nouveau et la rende disponible pour la migration, sélectionnez Terminer la migration.

Étapes suivantes

Après une migration correcte de vos applications vers AKS, vous pouvez explorer les articles suivants afin d’optimiser vos applications pour le cloud :