Q : Qu'est-ce qu'AWS Elastic Beanstalk ?
AWS Elastic Beanstalk facilite encore davantage la tâche des développeurs qui doivent déployer rapidement, puis gérer, des applications sur le nuage AWS. Les développeurs chargent simplement leur application et Elastic Beanstalk s'occupe automatiquement des détails du déploiement tels que la mise en service des capacités, l'équilibrage de charge, le dimensionnement automatique et la surveillance de l'état de santé de l'application.

Q : A qui s'adresse AWS Elastic Beanstalk ?
Tous ceux qui souhaitent déployer et gérer leurs applications en quelques minutes sur le nuage AWS. Vous n'avez besoin d'aucune expérience préalable en matière de cloud computing pour débuter. AWS Elastic Beanstalk prend en charge les applications Web Java, Node.js, PHP, Python, Ruby et .NET.

Q : Quels langages et piles de développement sont pris en charge par AWS Elastic Beanstalk ?
Voici la liste des langages et piles de développement qu'AWS Elastic Beanstalk prend en charge :

  • Apache Tomcat pour applications Java
  • Apache HTTP Server pour applications PHP
  • Apache HTTP Server pour applications Python
  • Nginx ou Apache HTTP Server pour applications Node.js
  • Passenger pour applications Ruby
  • Microsoft IIS 7.5 pour les applications .NET

Q : AWS Elastic Beanstalk prendra-t-il en charge d'autres langages par la suite ?
Oui. AWS Elastic Beanstalk est conçu de manière à pouvoir être étendu afin de prendre en charge plusieurs piles de développement et langages de programmation à l'avenir. En partenariat avec des fournisseurs de solutions, AWS travaille à mettre au point des API et des fonctionnalités en vue d'étoffer l'offre Elastic Beanstalk.

Q : Quelles sont les nouvelles fonctionnalités offertes aux développeurs utilisant AWS Elastic Beanstalk ?
AWS Elastic Beanstalk automatise les différentes étapes du dimensionnement de la capacité, de l'équilibrage de la charge, de la mise à l'échelle automatique et du déploiement des applications, créant ainsi un environnement qui exécute une version de votre application. Vous pouvez tout simplement charger votre code déployable (ex. : fichier WAR) ou transmettre votre répertoire Git, et AWS Elastic Beanstalk s'occupe du reste. AWS Toolkit for Visual Studio et AWS Toolkit for Eclipse vous permettent de déployer votre application dans AWS Elastic Beanstalk et de la gérer sans quitter votre environnement de développement intégré (IDE). Une fois que votre application s'exécute, Elastic Beanstalk automatise les tâches de gestion telles que la surveillance, le déploiement de versions et les vérifications basiques de l'état de santé, tout en permettant de consulter facilement le fichier journal. En utilisant AWS Elastic Beanstalk, les développeurs peuvent se concentrer sur le développement de leur application et sont libérés des tâches orientées sur le déploiement comme la mise en service de serveurs, la configuration de l'équilibrage de charge ou la gestion de l'évolutivité.

Q : En quoi AWS Elastic Beanstalk est-il différent des conteneurs d'applications existants ou des solutions de plate-forme en tant que service ?
La plupart des conteneurs d'applications et solutions PaaS (Platform-as-a-Service) existants réduisent certes la quantité de programmation requise, mais diminuent également significativement la marge de manœuvre et le degré de contrôle des développeurs. Les développeurs sont trop souvent forcés de s'adapter à toutes les décisions prédéterminées par leur fournisseur avec très peu, voire aucune marge leur permettant de reprendre le contrôle sur différentes parties de l'infrastructure de leur application. En revanche, avec AWS Elastic Beanstalk, les développeurs gardent le contrôle total sur les ressources AWS qui alimentent leur application. Si les développeurs décident qu'ils veulent gérer tout ou partie des éléments de leur infrastructure, ils peuvent le faire de façon transparente en utilisant les fonctions de gestion d'Elastic Beanstalk.

Q : Quels éléments de mon application puis-je contrôler en utilisant AWS Elastic Beanstalk ?
Avec AWS Elastic Beanstalk, vous pouvez :

  • Sélectionner le système d'exploitation correspondant aux besoins de votre application (ex. : Amazon Linux ou Windows Server 2008 R2)
  • Choisir entre plusieurs options disponibles de bases de donnée et de stockage
  • Activer un identifiant d'accès aux instances Amazon EC2 pour une résolution des problèmes immédiate et directe
  • Améliorer rapidement la fiabilité de votre application en l'exécutant dans plus d'une zone de disponibilité
  • Augmenter la sécurité de l'application en permettant le protocole HTTPS sur le programme d'équilibrage de charge
  • Avoir accès à la surveillance intégrée d'Amazon CloudWatch et aux notifications sur l'état de l'application et aux autres évènements importants
  • Ajuster les paramètres du serveur d'applications (ex. : paramètres JVM) et appliquer les variables d'environnement
  • Exécuter d'autres composants applicatifs, tels qu'un service de mise en mémoire cache, côte à côte dans Amazon EC2
  • Accéder aux fichiers journaux sans avoir besoin de se connecter aux serveurs d'applications

Q : Quelles sont les ressources de cloud permettant le fonctionnement de mon application AWS Elastic Beanstalk ?
AWS Elastic Beanstalk utilise des fonctionnalités et des services AWS éprouvés tels qu'Amazon EC2, Amazon RDS, Elastic Load Balancing, Auto Scaling, Amazon S3 et Amazon SNS pour créer l'environnement qui exécute votre application. La version actuelle d'AWS Elastic Beanstalk utilise l'AMI Amazon Linux ou Windows Server 2008 R2.

Q : Quels sont les types d'applications pris en charge par AWS Elastic Beanstalk ?
AWS Elastic Beanstalk prend en charge les langages Java, Node.js, PHP, Python, Ruby et .NET, et convient parfaitement aux applications Web. Cependant, grâce à son architecture ouverte, Elastic Beanstalk autorise également le déploiement d'applications non Web. Nous devrions, par la suite, prendre en charge d'autres types d'applications et de langages de programmation.

Q : Quels sont les systèmes d'exploitation utilisés par AWS Elastic Beanstalk ?
AWS Elastic Beanstalk s'exécute sur les AMI Amazon Linux et Windows Server 2008 R2. Ces deux AMI sont prises en charge et tenues à jour par Amazon Web Services. Elles sont conçues pour fournir un environnement d'exécution stable, sécurisé et très performant pour le cloud computing dans Amazon EC2.

Q : Combien de temps faut-il pour lancer mon application ?
Il faut, en général, quelques minutes pour créer les ressources AWS nécessaires à l'exécution de votre application, entre le moment du téléchargement de la version de votre application (ex. : fichier WAR, fichiers ASP.NET, Node.js, PHP, Python ou Ruby) et le moment où celle-ci est complètement déployée et accessible aux utilisateurs. Cela dépend d'un certain nombre de facteurs tels que la taille de votre code déployable et le nombre de serveurs d'applications à déployer.

Q : A quelle vitesse mon application est-t-elle mise à jour ?
Le délai de déploiement de la dernière version d'une application sur des ressources existantes (ex. : environnements) est bien plus court (généralement moins d'une minute), et dépend principalement de la taille de la nouvelle version. Avec le déploiement Git, seuls les fichiers qui ont été modifiés sont transmis à AWS Elastic Beanstalk et les mises à jour ne prennent généralement que quelques secondes.

Q : A quelle vitesse les capacités de mon application peuvent-elles être augmentées ou diminuées ?
AWS Elastic Beanstalk fournit un environnement réellement extensible à l'aide de l'outil Auto Scaling. Votre application peut être configurée pour être mise à l'échelle automatiquement des dizaines ou même des centaines de fois en fonction de seuils comme l'utilisation de CPU ou la bande passante réseau. Ces seuils peuvent facilement être configurés pour votre application spécifique à l'aide de la console d'AWS Elastic Beanstalk. Avec Elastic Beanstalk, vous n'avez pas à vous soucier de savoir si vous allez rapidement pouvoir dimensionner le système afin de gérer les pics de trafic ou d'utilisateurs ou si vous devrez payer pour des ressources dont vous n'avez pas besoin.

Q : Est-il possible d'exécuter simultanément plusieurs versions de mon application ?
Oui. AWS Elastic Beanstalk est conçu pour prendre en charge plusieurs environnements en cours d'exécution, par exemple, un pour le test d'intégration, un pour la pré-production et un pour la production. Chaque environnement est configuré indépendamment et s'exécute sur ses propres ressources AWS. De plus, Elastic Beanstalk stocke et effectue le suivi des différentes versions de l'application dans le temps. Un environnement existant peut donc facilement être restauré vers une version antérieure ou un nouvel environnement peut être lancé en utilisant une version plus ancienne afin d'essayer de reproduire le problème d'un client.

Q : Combien d'applications puis-je exécuter avec AWS Elastic Beanstalk ?
Vous pouvez créer jusqu'à 25 applications et 500 versions d'application. Par défaut vous pouvez exécuter jusqu'à 10 environnements pour toutes vos applications. Si vous utilisez aussi AWS en dehors d'AWS Elastic Beanstalk, vous ne pourrez peut-être pas créer 10 environnements en raison d'autres limitations peut-être déjà atteintes. Par exemple, les limitations du compte AWS par défaut vous permettent de lancer jusqu'à 20 instances EC2 et créer jusqu'à 10 Elastic Load Balancers. Si vous avez besoin de plus de ressources, complétez le formulaire de demande AWS Elastic Beanstalk et votre demande sera rapidement évaluée.

Q : Puis-je utiliser AWS Elastic Beanstalk pour déployer des applications devant être hautement disponibles ?
Oui. Pour ce faire, vous modifiez les paramètres de configuration de votre environnement, sélectionnez au moins deux instances pour Auto Scaling, et définissez les différentes zones de disponibilité sur « Une des 2 ». Les zones de disponibilités AWS sont conçues pour être physiquement distinctes, indépendantes en cas d'échec et fiables.

Q : Qu'arrive-t-il si mon application cesse de répondre aux demandes ?
Les applications AWS Elastic Beanstalk sont protégées contre les pannes au niveau de l'infrastructure sous-jacente. Si une instance Amazon EC2 échoue pour une raison ou une autre, AWS Elastic Beanstalk utilisera Auto Scaling pour lancer automatiquement une nouvelle instance. Elastic Beanstalk peut également détecter si votre application ne répond pas sur l'URL personnalisée, même si la structure sous-jacente semble saine, et le consignera comme un évènement d'environnement afin que vous puissiez prendre les mesures appropriées. (Ex. : Une mauvaise version a été déployée.)

Q : Quelles sont les régions AWS dans lesquelles AWS Elastic Beanstalk est disponible ?
AWS Elastic Beanstalk est actuellement disponible dans plusieurs zones de disponibilité, dans les régions suivantes :

  • USA Est (Virginie)
  • USA Ouest (Oregon)
  • USA Ouest (Californie du Nord)
  • UE (Irlande)
  • Asie-Pacifique (Singapour)
  • Asie-Pacifique (Sydney)
  • Asie-Pacifique (Tokyo)
  • Amérique du Sud (São Paulo)

Q : Comment puis-je accéder à AWS Elastic Beanstalk¬?
Vous pouvez utiliser AWS Management Console, l'interface de ligne de commande AWS Elastic Beanstalk, AWS Toolkit for Visual Studio, AWS Toolkit for Eclipse, l'API AWS Elastic Beanstalk ou les kits de développement logiciel (SDK) AWS. Vous pouvez également utiliser Git pour déployer votre code sur Elastic Beanstalk.

Q : Puis-je utiliser un environnement de développement intégré comme Eclipse ou Microsoft Visual Studio ?
Oui. Vous pouvez utiliser Eclipse et Visual Studio pour déployer votre application sur AWS Elastic Beanstalk. Vous pouvez utiliser AWS Toolkit for Eclipse pour les applications Java et AWS Toolkit for Visual Studio pour les applications .NET. Ces « boîtes à outils » vous permettent également de développer votre application, de la déployer dans Elastic Beanstalk, et même de la tester sans avoir à quitter votre IDE.

Q : Est-il possible d'utiliser Git pour déployer mon application sur AWS Elastic Beanstalk ?
Oui. Vous pouvez utiliser Git pour déployer votre application sur AWS Elastic Beanstalk. Pour en savoir plus, consultez la section « Deploying Applications in PHP Using Git » du manuel AWS Elastic Beanstalk Developer Guide.

Q : Comment puis-je m'inscrire à AWS Elastic Beanstalk¬?

Pour vous inscrire à AWS Elastic Beanstalk, cliquez sur le bouton Inscrivez-vous maintenant sur la page de présentation d'Elastic Beanstalk. Vous devez disposer d'un compte Amazon Web Services pour accéder à ce service. Si vous n'en avez pas, vous serez invité à en créer un au début du processus d'inscription à Elastic Beanstalk. Une fois inscrit, consultez le manuel AWS Elastic Beanstalk Getting Started Guide.

Q : Pourquoi est-ce qu'on me demande de vérifier mon numéro de téléphone lorsque je m'inscris à AWS Elastic Beanstalk ?

L'inscription à AWS Elastic Beanstalk nécessite que vous ayez un numéro de téléphone valide ainsi qu'une adresse email sur nos fichiers AWS au cas où nous devons vous contacter. La vérification de votre numéro de téléphone ne prend que quelques minutes. Vous recevrez un appel automatique pendant le processus d'inscription et vous devrez entrer un code d'identification PIN à l'aide des touches de votre téléphone.

Q : Comment démarrer après s'être inscrit ?

Pour commencer à utiliser AWS Elastic Beanstalk dans de bonnes conditions, nous vous recommandons d'étudier le manuel AWS Elastic Beanstalk Getting Started Guide, qui fait partie de notre documentation technique. En quelques minutes, vous serez capable de déployer et d'utiliser un exemple d'application ou de charger votre propre application.

Q : Existe-t-il un exemple d'application que je peux utiliser pour essayer AWS Elastic Beanstalk ?

Oui, AWS Elastic Beanstalk inclut un exemple d'application que vous pouvez utiliser pour essayer l'offre et explorer ses fonctionnalités.

Q : Est-ce qu'AWS Elastic Beanstalk stocke certains éléments dans Amazon S3 ?

Oui. AWS Elastic Beanstalk stocke vos fichiers d'application et, éventuellement, les fichiers journaux des serveurs dans Amazon S3. Si vous utilisez AWS Management Console, Git, AWS Toolkit for Visual Studio ou AWS Toolkit for Eclipse, un compartiment Amazon S3 sera ajouté à votre compte et les fichiers que vous chargerez seront automatiquement copiés depuis votre client local vers Amazon S3. Optionnellement, vous pouvez configurer Elastic Beanstalk pour copier vos fichiers de journaux de serveur sur Amazon S3 toutes les heures. Vous le ferez en modifiant les paramètres de configuration d'environnement.

Q : Puis-je utiliser Amazon S3 pour stocker des données d'applications comme des images ?

Oui. Vous pouvez utiliser Amazon S3 pour le stockage d'application. Pour ce faire, le plus simple est d'inclure le SDK AWS pour Java dans le fichier de déploiement de votre application. Par exemple, vous pouvez inclure le kit de développement logiciel AWS pour Java dans le fichier WAR de votre application.

Q : Quelles solutions de base de données puis-je utiliser avec AWS Elastic Beanstalk ?

AWS Elastic Beanstalk vous permet d'utiliser la technologie de persistance de données de votre choix. Vous pouvez utiliser Amazon Relational Database Service (Amazon RDS), Amazon DynamoDB, Amazon SimpleDB ou encore Microsoft SQL Server, Oracle ou d'autres bases de données relationnelles s'exécutant sur Amazon EC2.

Q : Comment puis-je configurer une base de données afin de l'utiliser avec AWS Elastic Beanstalk ?

Elastic Beanstalk peut automatiquement mettre en service une instance DB Amazon RDS. Les informations de connectivité à l'instance DB sont transmises à votre application par des variables d'environnement. Pour en savoir plus sur la configuration des instances DB RDS pour votre environnement, consultez le manuel Elastic Beanstalk Developer Guide.

Q : Cela veut-il dire que je devrai modifier le code de l'application lorsque je passerai de la phase de test à la phase de production ?

Ce n'est pas le cas avec AWS Elastic Beanstalk. Avec Elastic Beanstalk, vous pouvez spécifier les informations de connexion au niveau de la configuration de l'environnement. En extrayant la chaîne de connexion du code de l'application, vous pouvez facilement configurer différents environnement Elastic Beanstalk pour utiliser différentes bases de données.

Q : Comment puis-je rendre mon application privée ?

Par défaut, votre application est disponible publiquement à tous sur myapp.elasticbeanstalk.com. Vous pouvez utiliser Amazon VPC afin de dimensionner une section privée et isolée de votre application, dans le réseau virtuel de votre choix. Vous pouvez rendre ce réseau virtuel privé en appliquant des règles de groupes de sécurité spécifiques, des listes de contrôle d'accès (LCA) réseau et des tables de routage personnalisées. Vous pouvez également contrôler facilement les autres types de trafic entrant (tels que SSH) qui sont transmis vers vos serveurs d'application en modifiant les paramètres des groupes de sécurité EC2.

Q : Puis-je exécuter mon application au sein d'une instance Virtual Private Cloud (VPC) ?

Oui, vous pouvez exécuter vos applications dans un VPC. Pour en savoir plus, consultez le manuel AWS Elastic Beanstalk Developer Guide.

Q : Où puis-je trouver plus d'informations sur la sécurité et l'exécution d'applications sur AWS ?

Pour plus d'informations concernant la sécurité sur AWS, consultez le document Amazon Web Services présentant les procédures de sécurité ou visitez notre Centre de sécurité.

Q : Est-il possible d'utiliser Identity & Access Management (IAM) avec AWS Elastic Beanstalk ?

Oui. Les utilisateurs IAM disposant des autorisations appropriées peuvent maintenant interagir avec AWS Elastic Beanstalk.

Q : Pourquoi devrais-je utiliser IAM avec AWS Elastic Beanstalk ?

Avec IAM, vous pouvez gérer des utilisateurs et des groupes de manière centralisée. Vous pouvez contrôler quels utilisateurs IAM ont accès à AWS Elastic Beanstalk et octroyer uniquement un accès en lecture seule pour les opérateurs qui ne doivent pas effectuer d'actions sur les ressources Elastic Beanstalk. Toutes les activités utilisateur au sein de votre compte seront regroupées sur une seule facture AWS.

Q : Comment créer des utilisateurs IAM ?

Pour activer les comptes IAM, vous pouvez utiliser la console IAM, une interface de ligne de commande ou une API IAM. Par défaut, les utilisateurs IAM n'ont pas accès aux services AWS tant que les autorisations ne leur sont pas accordées.

Q : Comment accorder l'accès à AWS Elastic Beanstalk à un utilisateur IAM ?

Vous pouvez accorder l'accès aux services en utilisant les politiques. Pour simplifier le processus d'octroi d'accès à AWS Elastic Beanstalk, vous pouvez utiliser un des modèles de politique dans la console IAM pour vous aider. Elastic Beanstalk offre deux modèles : un modèle d'accès en lecture seule et un modèle d'accès total. Le modèle en lecture seule accorde un accès en lecture aux ressources Elastic Beanstalk. Le modèle d'accès total accorde un accès total à toutes les opérations Elastic Beanstalk, ainsi que le droit de gérer des ressources dépendantes, telles qu'Elastic Load Balancing, Auto Scaling et Amazon S3. Vous pouvez aussi utiliser le Générateur de politique AWS pour créer des politiques personnalisées. Pour en savoir plus, consultez le manuel AWS Elastic Beanstalk Developer Guide.

Q : Est-il possible de restreindre l'accès à certaines ressources AWS Elastic Beanstalk ?

Oui. Vous pouvez octroyer l'accès ou l'interdire pour des ressources AWS Elastic Beanstalk spécifiques, telles que des applications, des versions d'application et des environnements.

Q : Qui est facturé pour les ressources AWS créées par un utilisateur IAM ?

Toutes les ressources créées par des utilisateurs IAM sous un compte racine sont la propriété du compte principal et lui sont facturées.

Q : Qui a accès à un environnement AWS Elastic Beanstalk lancé par un utilisateur IAM ?

Le compte principal a un accès total à tous les environnements AWS Elastic Beanstalk lancés par les utilisateurs IAM sous ce compte. Si vous utilisez le modèle Elastic Beanstalk pour accorder un accès en lecture seule à un utilisateur IAM, celui-ci pourra afficher toutes les applications, les versions des applications, les environnements et les ressources associés à ce compte. Si vous utilisez le modèle Elastic Beanstalk pour accorder un accès total à un utilisateur IAM, celui-ci pourra créer, modifier et supprimer des ressources Elastic Beanstalk sous ce compte.

Q : Un utilisateur IAM peut-il accéder à la console AWS Elastic Beanstalk ?

Oui. Un utilisateur IAM peut accéder à la console AWS Elastic Beanstalk à l'aide de ses identifiants (nom d'utilisateur et mot de passe).

Q : Un utilisateur IAM peut-il appeler l'API AWS Elastic Beanstalk ?

Oui. Un utilisateur IAM peut utiliser sa clé d'accès et sa clé secrète pour effectuer une opération à l'aide de l'API Elastic Beanstalk.

Q : Un utilisateur IAM peut-il utiliser l'interface de ligne de commande AWS Elastic Beanstalk ?

Oui. Un utilisateur IAM peut utiliser sa clé d'accès et sa clé secrète pour effectuer une opération à l'aide de l'interface de ligne de commande AWS Elastic Beanstalk.

Q : Combien coûte AWS Elastic Beanstalk ?

Il n'y a pas de frais supplémentaires pour AWS Elastic Beanstalk : vous ne payez que les ressources AWS actuellement utilisées pour stocker et exécuter votre application. Les nouveaux clients qui remplissent les conditions du niveau d'utilisation gratuit AWS peuvent déployer une application qui s'exécute dans le cadre du niveau d'utilisation gratuit en utilisant les paramètres par défaut d'Elastic Beanstalk.

Q : Combien coûtent les ressources AWS alimentant mon application AWS Elastic Beanstalk ?

Vous payez uniquement en fonction de votre utilisation et il n'y a aucuns frais minimum pour l'utilisation des ressources AWS. Pour plus de détails concernant les tarifs Amazon EC2, consultez la section relative à la tarification dans la page de présentation d'EC2. Pour plus de détails concernant les tarifs d'Amazon S3, consultez la section relative à la tarification dans la page de présentation de S3. Vous pouvez utiliser le Calculateur mensuel simple AWS pour estimer votre facture pour des applications de différentes tailles.

Q : Comment puis-je vérifier combien de ressources AWS ont été utilisées par mon application et accéder à ma facture ?

Vous pouvez voir vos frais pour la période de facturation actuelle à tout moment sur le site d'Amazon Web Services en vous connectant à votre compte Amazon Web Services et en cliquant sur Activité du compte sous votre compte de services Web.

Q: AWS Support couvre-t-il AWS Elastic Beanstalk¬?

Oui. AWS Support couvre les problèmes liés à votre utilisation d'AWS Elastic Beanstalk. Pour plus de détails et pour connaître les tarifs, consultez la page de présentation d'AWS Support.

Q : Quelles sont les options de support disponibles ?

Pour mener à bien votre déploiement, vous pouvez profiter de l'expérience et des connaissances de la communauté AWS existante grâce au forum de discussion AWS Elastic Beanstalk.