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 :
- Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
- Suivre le premier tutoriel pour découvrir les applications web s’exécutant dans votre environnement VMware.
- Accédez au projet existant ou créez un projet.
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
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.
Sous l’onglet Spécifier l’intention, >Que voulez-vous migrer ?, sélectionnez applications web ASP.NET dans la liste déroulante.
Dans Où voulez-vous migrer ?, sélectionnez Azure Kubernetes Service (AKS).
Dans le type de Virtualisation, sélectionnez VMware vSphere.
Dans Appliance locale, choisissez l’appliance qui a découvert vos applications web souhaitées sur vSphere.
Sélectionnez Continuer.
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.
Choisissez une ou plusieurs applications à répliquer.
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.
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.
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.
Pour les applications utilisant l’Authentification Windows, indiquée par le type d’authentification, vous pouvez configurer gMSA V2 sur le cluster AKS cible.
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. 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.
- 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.
- Sélectionnez l’abonnement, le groupe de ressources et la ressource de cluster AKS sur lesquels l’application doit être déployée.
- 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.
- Les valeurs par défaut sont fournies en fonction de la détection de l’application.
- Dans l’option Réplica, choisissez le nombre d’instances d’application pour chaque application.
- 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.
- 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.
- 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.
- 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.
- 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.
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.
Accéder à la ressource cible
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.
Sélectionnez Azure Migrate : serveur de migration hub >Modernisation (préversion)>Travaux.
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.
Sélectionnez la ressource cible. Toutes les étapes de prémigration sont configurables ici.
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.
Sélectionnez le lien de révision du fichier Docker pour ouvrir l’éditeur. Examinez et apportez les modifications nécessaires. Sélectionnez Enregistrer.
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.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.
Une fois l’image générée, l’État global devient Prêt pour la migration.
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.
- Sous l’onglet Vue d’ensemble, sélectionnez Tester la migration, puis sélectionnez Oui pour confirmer.
- 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. - 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 :
Accédez à Azure Migrate : serveur de migration hub >Modernisation (préversion)>Travaux.
Sélectionnez le travail Lancer la migration test qui a échoué.
Sélectionnez le lien de la tâche ayant échoué pour afficher les causes de l’échec et les suggestions possibles.
Migrez vos applications vers AKS
L’application est enfin prête pour la migration :
Sous l’onglet Vue d’ensemble, sélectionnez Migrer et sélectionnez Oui pour confirmer.
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.
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 :
- Configurez CI/CD avec Azure Pipelines, GitHub Actions ou au moyen de GitOps.
- Utilisez Azure Monitor pour surveiller l’intégrité et les performances d’AKS et de vos applications.
- Renforcez la posture de sécurité de votre cluster et de vos conteneurs AKS avec Microsoft Defender pour les conteneurs.
- Optimiser les Dockerfiles Windows.
- Passez en revue et mettez en œuvre les meilleures pratiques pour générer et gérer des applications sur AKS.