Elastic Beanstalk

Elastic Beanstalk

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.

Elastick_Bean_Stalk

How it works?

Elastik_Bean_Stalkworks

Elastic Beanstalk supported platform
Elastic Beanstalk supports following application infrastructure environment to deploy your application

  • Java
  • GO
  • PHP
  • .NET
  • Node.js
  • 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.

Database support
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.

Elastik_Bean_Deployment

  • 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 .

Pros:

  • 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

Cons:

  • 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.

                                                                     .ebextension
                                                                     |—nginx

                                                                     |—conf.d

                                                                     |—-proxy.conf

                                                                     proxy.conf file content for increase file upload size

                                                                     ————————————————————————-

                                                                     client_max_body_size 10MB;


Mitosis is a IT services providing company with strong expertise. We are customer focused organization, and take great satisfaction in developing technology solutions that enable our clients to achieve their business goals.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>