What is Elastic Beanstalk?
Elastic Beanstalk is a high-level deployment tool that helps to deploy your application from your desktop to the AWS cloud in very less minutes of time.
Elastic Beanstalk handles the configurations management, scalable problem , capacity provision , Application downtime and Health monitoring in one click solution.
How it works?
Elastic Beanstalk supported platform
Elastic Beanstalk supports following application infrastructure environment to deploy your application
- Python and Ruby
When you deploy your application using elastic beanstalk, It provisioning a set of AWS resources like EC2 instance, Alarms , load balancer, security group and more . This provisioning are configurable as per requirement using elastic beanstalk console.
Elastic beanstalk support AWS RDS service as a configurable option to provide database support to your application
As our part of our deployment I have used RDS ( MySql , Postgres, Oracle ).
One of our customer opted Elastic Beanstalk deployment with Java and Dynamo DB (NoSQL) environment.
Advantage of Elastic Bean
- Zero Downtime Deployment for live site
- Roll back option with previous version deployment
- Auto Scaling feature
- Simple Notification Service
- Load balancing
- Configure and use AWS Resources to use
- Application health Monitoring
- Deploy your application in single click .
How to Deploy your Application in Elastic Bean
- Open the Elastic Beanstalk console
- From the Elastic Beanstalk applications page, choose your application and then choose Custom-env.
- In the Overview section, choose Upload and Deploy.
- Choose Browse and upload your application source bundle or executable.
- The console automatically fills in the Version label based on the name of the archive that you uploaded. For future deployments, you will need to type a unique version label if you use a source bundle with the same name.
- Choose Deploy.
Your application will be deployed in AWS EC2 instances.
It worked for one of our Customer
In AWS Cloud using Elastic Beanstalk I have deployed B2B Application deployed and configured successfully.
SpringBoot with DynamoDB application has been deployed using Elastic beanstalk framework .
- Single Click Deployment
- Fast and simple to begin
- Developer productivity
- Complete Resource Control
- Auto scaling feature
- Deployment version management
- Zero down time assurance while deployment
- Easy AWS resource configuration and deletion
- Caching configuration on static resources
- Nginx Proxy configuration is misty.
Nginx Proxy Configuration for SpringBoot Application
While deploying Spring boot Application, if you want configure Nginx Proxy for your application for example if you want re-configure file upload size . You need to include .ebextension folder in your part of application source in parallel to source folder and the zipped source to be uploaded for deployment.
The below example provide change the Nginx proxy configuration to increase file upload size.
proxy.conf file content for increase file upload size