AWS Elastic Beanstalk is an easy-to-use service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, Go, and Docker on familiar servers such as Apache, Nginx, Passenger, and IIS.
With beanstalk, you write the code and it takes care of your deployment, capacity provisioning, load balancing, auto scaling, application health monitoring.
Beanstalk is the fastest and simplest way to deploy your application to AWS. Here, you retain full control over the AWS resources. The is no extra charge, you just pay for the other AWS resources that are provisioned to run your application.
Note: If you are using a technology that is not preconfigured on AWS, you can use Docker to deploy it. This can be asked in the exams!Benefits of AWS Elastic Beanstalk
- Fast and Simple to Begin: You simply use the AWS Management Console, a Git repository, or an integrated development environment (IDE) such as Eclipse or Visual Studio to upload your application, and Elastic Beanstalk automatically handles the deployment details of capacity provisioning, load balancing, auto-scaling, and application health monitoring. Within minutes, your application will be ready to use without any infrastructure or resource configuration work on your part.
- Developer Productivity: Elastic Beanstalk provisions and operates the infrastructure and manages the application stack (platform) for you, so you don’t have to spend the time or develop the expertise. It will also keep the underlying platform running your application up-to-date with the latest patches and updates. Instead, you can focus on writing code rather than spending time managing and configuring servers, databases, load balancers, firewalls, and networks.
- Complete Resource Control: You have the freedom to select the AWS resources, such as Amazon EC2 instance type and processor type to run the workload on, that are optimal for your application. You also retain full control over the AWS resources powering your application. If you decide that, you want to take over some of the elements of your infrastructure, you can do so seamlessly by using Elastic Beanstalk’s management capabilities.
ELASTIC BEANSTALK .ebextensions
.ebextensions allows advanced environment customization with configuration files such as YAML or JSON formatted documents directly placed in a folder called .ebextensions.
This files allows developers to configure the system being deployed automatically