Migration d'une application Web ASP.NET vers AWS Elastic Beanstalk

avec l'assistant de migration d'applications Web Windows (WWAMA) interactif

Présentation

Cet atelier vise à migrer un exemple d'application Web ASP.NET vers un environnement AWS Elastic Beanstalk entièrement géré à l'aide de l'assistant de migration d'applications Web Windows (WWAMA). Pour des informations supplémentaires sur l'assistant de migration d'applications Web Windows (WWAMA), cliquez ici.

Résultat attendu

Migrer un exemple d'application Web ASP.NET vers un environnement AWS Elastic Beanstalk entièrement géré.

Prérequis

Vous avez besoin d'un compte AWS et d'autorisations IAM pour créer une instance EC2, une paire de clés, un groupe de sécurité, un utilisateur IAM et un environnement Elastic Beanstalk. Ce didacticiel déploie un modèle AWS CloudFormation qui provisionne automatiquement l'exemple de site Web sur une instance EC2 qui servira d'application Web source pour la migration.  

À propos de ce didacticiel
Durée 15 minutes                                           
Coût Admissible à l’offre gratuite
Cas d'utilisation Migration des applications Windows
Produits AWS Elastic Beanstalk
Public ciblé Développeur
Niveau Débutant
Dernière mise à jour 30/03/2020

1. S'inscrire à AWS

Le modèle CloudFormation utilisé dans ce didacticiel lance une instance EC2 t2.micro. Le type d'instance t2.micro est inclus dans l'offre gratuite. Des coûts d'instances EC2 s'appliquent en cas de sélection d'un autre type d'instance. Vous pouvez faire une estimation des coûts EC2 sur la page de tarification EC2.

 

Vous possédez déjà un compte ? Se connecter

2. Configuration

Utilisez CloudFormation pour lancer l'instance EC2 qui hébergera l'exemple de site Web. Puis, configurez les autorisations IAM requises.

a. Lancer une instance EC2 via CloudFormation

Utilisez CloudFormation pour lancer une instance EC2 dans la région US-East-1.

Lancer la pile CloudFormation >>

Puis, cliquez sur Next (Suivant).

Sélectionnez une paire de clés existante ou créez-en une si vous n'en disposez pas encore. Puis, cliquez sur Next (Suivant).

Sur l'écran Configure Stack Options (Configurer les options de la pile), cliquez sur Next (Suivant). Au bas de l'écran Review (Vérifier), cliquez sur Create Stack (Créer une pile).  

 

Une fois la pile créée, son état devient « CREATE_COMPLETE » (CRÉATION_TERMINÉE).

 

b. Créer l'utilisateur IAM

Connectez-vous à la console IAM. >>

Dans le menu de navigation de gauche, cliquez sur Users (Utilisateurs), puis sur Add User (Ajouter un utilisateur).

Saisissez le User name (Nom d'utilisateur) MigrationUser et cochez la case Programmatic access (Accès par programmation), puis cliquez sur Next:Permissions (Suivant : Autorisations).

Cliquez sur Attach existing policies directly (Attacher directement des stratégies existantes), puis saisissez Beanstalk dans la barre de recherche pour filtrer les stratégies.

Cochez la case des stratégies gérées par AWS ci-dessous, puis cliquez sur Next:Tags (Suivant : Balises).

  • IAMReadOnlyAccess
  • AWSElasticBeanstalkFullAccess

 

Cliquez sur Next:Review (Suivant : Vérification), puis cliquez sur Create User (Créer un utilisateur).


 

 

Une fois l'utilisateur créé, cliquez sur Download CSV (Télécharger CSV) lorsque l'écran correspondant s'affiche.

 

 

3. Connexion à la console EC2 pour configurer l'exécution de l'outil WWAMA

a. Aller à la console EC2 et se connecter

Connectez-vous à EC2 ici. >>

Une fois connecté à la console EC2, sélectionnez l'instance WWAMA, puis cliquez sur Connect (Connexion).

Cliquez sur Download Remote Desktop (Télécharger le bureau à distance) et enregistrez le fichier RDP. Cliquez ensuite sur Get Password (Obtenir le mot de passe), puis chargez le fichier de votre paire de clés pour obtenir votre mot de passe Windows Server. Le mot de passe s'affiche en texte brut ; copiez-le, car vous en aurez besoin pour la suite.

 

 

Connectez-vous sur l'instance EC2 à l'aide du fichier RDP enregistré précédemment et entrez votre mot de passe.

 

 

b. Ouvrir un terminal PowerShell sur EC2 Windows Server

Ouvrez un terminal PowerShell en tant qu'administrateur, puis exécutez les commandes figurant dans l'exemple de droite ci-dessous pour configurer les informations d'identification AWS. Remplacez ACCESS_KEY et SECRET_ACCESS_KEY par les valeurs contenues dans le fichier .CSV téléchargé précédemment lors de la création de MigrationUser.

 

PS C:\> Import-Module AWSPowerShell
PS C:\> Set-AWSCredential -AccessKey ACCESS_KEY -SecretKey SECRET_ACCESS_KEY -StoreAs default

c. Extraire les fichiers de l'assistant de migration

L'assistant de migration a été prétéléchargé sur le lecteur C:\ par le modèle CloudFormation. Le nom du fichier est wwama.zip.

Faites un clic droit sur le fichier wwama.zip pour extraire l'assistant.

d. Afficher l'exemple de site Web avant la migration

Ouvrez un navigateur Web sur l'instance EC2 Windows Server et allez à http://localhost/. Vous verrez s'afficher l'exemple de site Web que va migrer l'assistant de migration.

4. Exécution de l'assistant de migration

a. Lancer le script MigrateIISWebsiteToElasticBeanstalk.ps1

Lancez le script de l'assistant dans le terminal PowerShell que vous avez ouvert précédemment.

L'assistant vous demande d'indiquer l'emplacement du fichier comportant vos informations d'identification. Appuyez sur ENTER (ENTRÉE) pour ignorer.

Lorsqu'un message vous demande d'indiquer le nom de profil AWS, entrez default (défaut).

   

PS C:\> .\MigrateIISWebsiteToElasticBeanstalk.ps1

b. Sélectionner la région AWS

Indiquez la région AWS dans laquelle vous souhaitez exécuter l'environnement Elastic Beanstalk, par exemple : us-east-1. Pour connaître la liste des régions AWS dans lesquelles Elastic Beanstalk est disponible, consultez la page Points de terminaison et quotas AWS Elastic Beanstalk dans les références générales AWS.

 

Enter the AWS Region (default us-east-1):

c. Sélectionner l'application Web à migrer

L'assistant recherche ensuite tous les sites Web s'exécutant sur votre serveur IIS, puis les répertorie, comme illustré ci-dessous.

 

 

Saisissez le numéro 2 pour migrer l'exemple de site.

Enter the number of the website to migrate: (default 1):

d. Mettre à jour les chaînes de connexion

L'assistant vous demande ensuite de mettre à jour les chaînes de connexion sélectionnées ci-dessus. Appuyez sur ENTER (ENTRÉE), car l'application ne comporte pas de chaîne de connexion.

Le message ci-dessous s'affiche :

« The migration assistant didn't find any connection strings. » (Aucune chaîne de connexion trouvée par l'assistant de migration.)

Enter the number of the connection string you would like to update, or press ENTER:

e. Configurer votre application Elastic Beanstalk

Nommez ensuite votre nouvelle application Elastic Beanstalk.

 

 

Lorsqu'un message vous demande de sélectionner la version Windows Server, saisissez « 6 » puis appuyez sur Enter (Entrée).

Enter a unique name for your new Elastic Beanstalk application:

Indiquez le type d'instance sur laquelle s'exécutera votre application. Saisissez t2.micro. Consultez la page Types d'instances Amazon EC2 pour voir la liste complète des types d'instances.

Enter the instance type (default t3.medium) : t2.micro

L'assistant de migration migre ensuite votre application vers Elastic Beanstalk.

 

À la fin de la migration, un message de réussite s'affiche dans l'interface de ligne de commande.

 

5. Navigation vers votre application Web hébergée sur Elastic Beanstalk

À présent que le site Web a été migré avec succès, vérifiez qu'il est opérationnel.

a. Accéder au navigateur Web

Vous pouvez obtenir l'adresse URL à partir de la sortie du script PowerShell.

Saisissez l'adresse URL dans votre navigateur Web ; vous devrez à présent voir votre application Web s'exécuter sur Elastic Beanstalk.

 

b. Accéder à la console Elastic Beanstalk

Vous pouvez également afficher l'environnement Elastic Beanstalk à partir de la console AWS. Assurez-vous la console est dans la même région que celle dans laquelle vous avez déployé votre application. Parcourez le menu de gauche pour découvrir les tâches que vous pouvez accomplir avec votre application.

 

6. Nettoyage de vos ressources

La dernière étape consiste à nettoyer et supprimer toutes vos ressources.

a. Supprimer l'application Elastic Beanstalk

Ouvrez la console Elastic Beanstalk et cliquez sur le menu Actions situé à droite de l'écran. Sélectionnez ensuite Terminate Environment (Supprimer l'environnement).

 

 

b. Supprimer la pile CloudFormation

Accédez à la console CloudFormation pour supprimer la pile CloudFormation créée par WWAMAStack au début de l'atelier.

 

 

Félicitations

Vous avez migré avec succès un exemple d'application Web ASP.NET vers un environnement Elastic Beanstalk entièrement géré à l'aide de l'assistant de migration d'applications Web Windows (WWAMA).


AWS Elastic Beanstalk est un service simple à utiliser servant à déployer et mettre à l'échelle des applications et services Web développés avec Java, .NET, PHP, Node.js, Python, Ruby, Go et Docker sur des serveurs courants, par exemple Apache, Nginx, Passenger et IIS.

Il vous suffit de charger votre code pour qu’Elastic Beanstalk effectue automatiquement les étapes du déploiement que sont le dimensionnement des capacités, l'équilibrage de la charge, le dimensionnement automatique et la surveillance de l'état de l'application. Parallèlement, vous conservez la maîtrise totale des ressources AWS alimentant votre application et pouvez à tout moment accéder aux ressources sous-jacentes.

Consultez AWS Elastic Beanstalk pour en savoir plus.

Ce didacticiel vous a-t-il été utile ?