CalculService régional
Elastic Beanstalk
Permet de déployer et exécuter rapidement une application sans avoir à gérer l’infrastructure sous-jacente
Présentation
- Elastic Beanstalk est un service PaaS (Platform as a Service) permettant de déployer des applications sur AWS
- AWS prend en charge une grande partie de la configuration et de la gestion de l’infrastructure
Cas d’usage
- Application web
- APIs
- Application nécessitant plusieurs instances
- Migration d’applications existantes vers AWS
Plateformes supportées
- Plusieurs environnements sont pris en charge : Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker
Fonctionnement
- Le déploiement suit le principe suivant : Code source Elastic Beanstalk Environnement (EC2, ALB) Application
Déploiement
- Elastic Beanstalk automatise notamment :
- Le provisioning des ressources
- Le déploiement du code
- La configuration de l’environnement
- Le scaling
- Le monitoring de l’application
- Plusieurs stratégies de déploiement sont disponibles
- Rolling : Les instances sont mises à jour progressivement limitation de l’interruption de service
- Rolling with additional batch : Les nouvelles instances sont ajoutées avant le remplacement des anciennes
- Immutable : Création d’un nouvel environnement d’instances avant remplacement plus sûr
- Blue/Green : Utilisation de deux environnements distincts
Scalabilité & disponibilité
- Elastic Beanstalk peut gérer automatiquement :
- Auto Scaling
- Load Balancing
- Remplacement des instances défaillantes
- Health Checks
Monitoring
- Information sur l’état de l’environnement :
- Santé des instances, métriques, événements, logs
Tarification
- Un même projet peut posséder plusieurs environnements : Development, Staging, Production
- Permet de séparer les configurations et les versions déployées