QuickStart: Déployez un. NETApplication Core sur Linux pour Elastic Beanstalk - AWS Elastic Beanstalk

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

QuickStart: Déployez un. NETApplication Core sur Linux pour Elastic Beanstalk

Ce QuickStart didacticiel vous explique le processus de création d'un. NETApplication principale sur Linux et déploiement de celle-ci sur un AWS Elastic Beanstalk environnement.

Note

Ce QuickStart didacticiel est destiné à des fins de démonstration. N'utilisez pas l'application créée dans ce didacticiel pour le trafic de production.

Votre AWS compte

Si vous n'êtes pas déjà AWS client, vous devez créer un AWS . L'inscription vous permet d'accéder à Elastic Beanstalk et à d'autres AWS les services dont vous avez besoin.

Si vous possédez déjà un AWS compte, vous pouvez passer àPrérequis.

Inscrivez-vous pour un Compte AWS

Si vous n'avez pas de Compte AWS, procédez comme suit pour en créer un.

Pour vous inscrire à un Compte AWS
  1. Ouvrez l'https://portal.aws.amazon.com/billing/inscription.

  2. Suivez les instructions en ligne.

    Dans le cadre de la procédure d‘inscription, vous recevrez un appel téléphonique et vous saisirez un code de vérification en utilisant le clavier numérique du téléphone.

    Lorsque vous vous inscrivez à un Compte AWS, une Utilisateur racine d'un compte AWSest créé. L'utilisateur root a accès à tous Services AWS et les ressources du compte. La meilleure pratique de sécurité consiste à attribuer un accès administratif à un utilisateur, et à utiliser uniquement l‘utilisateur racine pour effectuer les tâches nécessitant un accès utilisateur racine.

AWS vous envoie un e-mail de confirmation une fois le processus d'inscription terminé. À tout moment, vous pouvez consulter l'activité actuelle de votre compte et gérer votre compte en accédant à https://aws.amazon.com/et en choisissant Mon compte.

Création d'un utilisateur doté d'un accès administratif

Une fois que vous vous êtes inscrit à un Compte AWS, sécurisez votre Utilisateur racine d'un compte AWS, activer AWS IAM Identity Center, et créez un utilisateur administratif afin de ne pas utiliser l'utilisateur root pour les tâches quotidiennes.

Sécurisez votre Utilisateur racine d'un compte AWS
  1. Connectez-vous au AWS Management Consoleen tant que propriétaire du compte en choisissant Utilisateur root et en saisissant votre Compte AWS adresse e-mail. Sur la page suivante, saisissez votre mot de passe.

    Pour obtenir de l'aide pour vous connecter à l'aide de l'utilisateur root, consultez la section Connexion en tant qu'utilisateur root dans Connexion à AWS Guide de l'utilisateur

  2. Activez l'authentification multifactorielle (MFA) pour votre utilisateur root.

    Pour obtenir des instructions, voir Activer un MFA appareil virtuel pour votre Compte AWS utilisateur root (console) dans le guide de IAM l'utilisateur.

Création d'un utilisateur doté d'un accès administratif
  1. Activez IAM Identity Center.

    Pour obtenir des instructions, voir Activation AWS IAM Identity Center dans le .AWS IAM Identity Center Guide de l'utilisateur

  2. Dans IAM Identity Center, accordez un accès administratif à un utilisateur.

    Pour un didacticiel sur l'utilisation du Répertoire IAM Identity Center comme source d'identité, voir Configurer l'accès utilisateur avec la valeur par défaut Répertoire IAM Identity Center dans le .AWS IAM Identity Center Guide de l'utilisateur

Connexion en tant qu‘utilisateur doté d'un accès administratif
  • Pour vous connecter avec votre utilisateur IAM Identity Center, utilisez l'URLidentifiant envoyé à votre adresse e-mail lorsque vous avez créé l'utilisateur IAM Identity Center.

    Pour obtenir de l'aide pour vous connecter à l'aide d'un utilisateur d'IAMIdentity Center, consultez la section Connexion au AWS portail d'accès dans le Connexion à AWS Guide de l'utilisateur

Attribution d'un accès à d'autres utilisateurs
  1. Dans IAM Identity Center, créez un ensemble d'autorisations conforme à la meilleure pratique consistant à appliquer les autorisations du moindre privilège.

    Pour obtenir des instructions, voir Créer un ensemble d'autorisations dans le AWS IAM Identity Center Guide de l'utilisateur

  2. Attribuez des utilisateurs à un groupe, puis attribuez un accès par authentification unique au groupe.

    Pour obtenir des instructions, voir Ajouter des groupes dans le AWS IAM Identity Center Guide de l'utilisateur

Prérequis

Pour suivre les procédures décrites dans ce guide, vous aurez besoin d'un shell ou d'un terminal de ligne de commande pour exécuter des commandes. Dans les listes, les commandes sont précédées d'un symbole d'invite ($) et du nom du répertoire actuel, le cas échéant.

~/eb-project$ this is a command this is output

Sous Linux et macOS, vous pouvez utiliser le shell et le gestionnaire de package de votre choix. Sur Windows, vous pouvez installer le sous-système Windows pour Linux afin d'obtenir une version intégrée à Windows d'Ubuntu et de Bash.

EB CLI

Ce didacticiel utilise l'interface de ligne de commande (EB) d'Elastic Beanstalk. CLI Pour plus de détails sur l'installation et la configuration de l'EBCLI, reportez-vous Installation de l'interface de ligne de commande Elastic Beanstalk aux sections etConfiguration de l'interface de ligne de commande EB.

. NETCore sous Linux

Si vous n'avez pas le. NETSDKinstallé sur votre machine locale, vous pouvez l'installer en suivant la procédure de téléchargement. NETlien sur le. NETsite Web de documentation.

Vérifiez votre. NETSDKinstallation en exécutant la commande suivante.

~$ dotnet --info

Étape 1 : Créez un. NETApplication Core sur Linux

Créez un répertoire de projet.

~$ mkdir eb-dotnetcore ~$ cd eb-dotnetcore

Créez ensuite un exemple d'application Hello World en exécutant les commandes suivantes.

~/eb-dotnetcore$ dotnet new web --name HelloElasticBeanstalk ~/eb-dotnetcore$ cd HelloElasticBeanstalk

Étape 2 : Exécutez votre application localement

Exécutez la commande suivante pour exécuter votre application localement.

~/eb-dotnetcore/HelloElasticBeasntalk$ dotnet run

Le résultat doit ressembler au texte suivant.

Building... info: Microsoft.Hosting.Lifetime[14] Now listening on: https://localhost:7294 info: Microsoft.Hosting.Lifetime[14] Now listening on: http://localhost:5052 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down. info: Microsoft.Hosting.Lifetime[0] Hosting environment: Development info: Microsoft.Hosting.Lifetime[0]
Note

La dotnet commande sélectionne un port au hasard lors de l'exécution locale de l'application. Dans cet exemple, le port est 5052. Lorsque vous déployez l'application dans votre environnement Elastic Beanstalk, elle s'exécute sur le port 5000.

Entrez l'URLadresse http://localhost:port dans votre navigateur Web. Pour cet exemple spécifique, la commande esthttp://localhost:5052. Le navigateur Web doit afficher « Hello World ! ».

Étape 3 : Déployez votre. NETApplication Core sur Linux avec l'EB CLI

Exécutez les commandes suivantes pour créer un environnement Elastic Beanstalk pour cette application.

Pour créer un environnement et déployer votre. NETApplication Core sur Linux
  1. Compilez et publiez votre application dans un dossier pour la déployer dans l'environnement Elastic Beanstalk que vous êtes sur le point de créer.

    ~$ cd eb-dotnetcore/HelloElasticBeanstalk ~/eb-dotnetcore/HelloElasticBeanstalk$ dotnet publish -o site
  2. Accédez au répertoire du site dans lequel vous venez de publier votre application.

    ~/eb-dotnetcore/HelloElasticBeanstalk$ cd site
  3. Initialisez votre CLI référentiel EB à l'aide de la eb init commande.

    Tenez compte des informations suivantes concernant la version de branche de plate-forme que vous spécifiez dans la commande :

    • Remplacez x.y.z la commande suivante par la dernière version de la branche de plateforme. NET6 en AL2 2023.

    • Pour trouver la dernière version de la branche de la plateforme, voir. NETPlateformes prises en charge par Core on Linux dans le AWS Elastic Beanstalk Guide des plateformes.

    • Un exemple de nom de pile de solutions incluant le numéro de version est64bit-amazon-linux-2023-v3.1.1-running-.net-6. Dans cet exemple, la version de la branche est 3.1.1.

    ~eb-dotnetcore/HelloElasticBeanstalk/site$ eb init -p 64bit-amazon-linux-2023-vx.y.z-running-.net-6 dotnetcore-tutorial --region us-east-2 Application dotnetcore-tutorial has been created.

    Cette commande crée une application nommée dotnetcore-tutorial et configure votre référentiel local pour créer des environnements avec le. NETVersion de la plate-forme Core sur Linux spécifiée dans la commande.

  4. (Facultatif) Exécutez à eb init nouveau pour configurer une paire de clés par défaut afin de pouvoir l'utiliser SSH pour vous connecter à l'EC2instance qui exécute votre application.

    ~eb-dotnetcore/HelloElasticBeanstalk/site$ eb init Do you want to set up SSH for your instances? (y/n): y Select a keypair. 1) my-keypair 2) [ Create new KeyPair ]

    Sélectionnez une paire de clés si vous en avez déjà une, ou suivez les invites pour en créer une. Si vous ne voyez pas l'invite ou que vous avez besoin de modifier vos paramètres ultérieurement, exécutez eb init -i.

  5. Créez un environnement et déployez-y votre application avec eb create. Elastic Beanstalk crée automatiquement un fichier zip pour votre application et le démarre sur le port 5000.

    to

    ~eb-dotnetcore/HelloElasticBeanstalk/site$ eb create dotnet-tutorial

    Il faut environ cinq minutes à Elastic Beanstalk pour créer votre environnement.

Étape 4 : Exécutez votre application sur Elastic Beanstalk

Lorsque le processus de création de votre environnement est terminé, ouvrez votre site Web aveceb open.

~eb-dotnetcore/HelloElasticBeanstalk/site$ eb open

Félicitations ! Vous avez déployé un. NETApplication Core sur Linux avec Elastic Beanstalk ! Celle-ci ouvre une fenêtre de navigation en utilisant le nom de domaine créé pour votre application.

Étape 5 : nettoyer

Vous pouvez mettre fin à votre environnement lorsque vous avez fini d'utiliser votre application. Elastic Beanstalk met fin à tout AWS ressources associées à votre environnement.

Pour mettre fin à votre environnement Elastic Beanstalk avec l'EB, exécutez CLI la commande suivante.

~eb-dotnetcore/HelloElasticBeanstalk/site$ eb terminate

AWS ressources pour votre application

Vous venez de créer une application à instance unique. Il s'agit d'un exemple d'application simple avec une seule EC2 instance, il ne nécessite donc pas d'équilibrage de charge ni de dimensionnement automatique. Pour les applications à instance unique, Elastic Beanstalk crée les éléments suivants : AWS ressources :

  • EC2instance — Une machine EC2 virtuelle Amazon configurée pour exécuter des applications Web sur la plateforme de votre choix.

    Chaque plateforme exécute un ensemble distinct de logiciels, de fichiers de configuration et de scripts pour prendre en charge une version de langage, une infrastructure ou un conteneur web spécifiques, ou une combinaison de ces éléments. La plupart des plateformes utilisent Apache ou nginx comme proxy inverse qui traite le trafic web devant votre application web, lui transmet les demandes, traite les ressources statiques et génère des journaux d'accès et d'erreurs.

  • Groupe de sécurité d'instance : groupe EC2 de sécurité Amazon configuré pour autoriser le trafic entrant sur le port 80. Cette ressource permet au HTTP trafic provenant de l'équilibreur de charge d'atteindre l'EC2instance qui exécute votre application Web. Par défaut, le trafic n'est pas autorisé sur les autres ports.

  • Compartiment Amazon S3 – Emplacement de stockage pour votre code source, les journaux et autres artefacts qui sont créés lorsque vous utilisez Elastic Beanstalk.

  • CloudWatch Alarmes Amazon : deux CloudWatch alarmes qui surveillent la charge sur les instances de votre environnement et sont déclenchées si la charge est trop élevée ou trop faible. Lorsqu'une alarme est déclenchée, votre groupe Auto Scaling s'adapte en fonction, à la hausse ou à la baisse.

  • AWS CloudFormation stack — Elastic Beanstalk utilise AWS CloudFormation pour lancer les ressources de votre environnement et propager les modifications de configuration. Les ressources sont définies dans un modèle que vous pouvez consulter dans AWS CloudFormation console.

  • Nom de domaine : nom de domaine qui permet d'accéder à votre application Web sous la forme subdomain.region.elasticbeanstalk.com.

Elastic Beanstalk gère toutes ces ressources. Lorsque vous arrêtez votre environnement, Elastic Beanstalk arrête toutes les ressources qu'il contient.

Étapes suivantes

Dès que vous disposez d'un environnement exécutant une application, vous pouvez à tout moment déployer une nouvelle version de l'application ou une application totalement différente. Le déploiement d'une nouvelle version d'application est très rapide car il ne nécessite ni le provisionnement ni le redémarrage des instances. EC2 Vous pouvez également explorer votre nouvel environnement à l'aide de la console Elastic Beanstalk. Pour connaître les étapes détaillées, consultez la section Explorez votre environnement dans le chapitre Mise en route de ce guide.

Une fois que vous avez déployé un ou deux exemples d'applications et que vous êtes prêt à commencer à développer et à exécuter. NETApplications principales sur Linux en local, voirConfiguration de votre. NETenvironnement de développement core sur Linux pour Elastic Beanstalk.

Déployez avec la console Elastic Beanstalk

Vous pouvez également utiliser la console Elastic Beanstalk pour lancer l'exemple d'application. Pour connaître les étapes détaillées, voir Création d'un exemple d'application dans le chapitre Mise en route de ce guide.