Amazon Elastic Beanstalk

Overview:
Amazon Elastic Beanstalk is used to deploy and scale web applications. So, you can just upload the code and this application will deploy your code to Amazon Web Service infrastructure without managing the infrastructure. You just need to deploy and manage the applications instead of managing the infrastructure. Amazon Elastic Beanstalk is also called an automatic version of Amazon EC2. With the help of Amazon Elastic Beanstalk, you don’t need to get the access to Operating system but you have the full control over the configuration of your system. Amazon Elastic Beanstalk is a highly reliable and scalable service.

Amazon Elastic Beanstalk supports those applications which are developed in the following languages:

  • GO
  • Java
  • .NET
  • Node.js
  • PHP
  • Python
  • Ruby

Every language supports different configuration set up. The configuration defines the different infrastructure for each language and different software stack to be used for a given environment.

Features:
1. Predefined Infrastructure: You don’t need to assemble the resources for your applications. Amazon Web Services provides a predefined application infrastructure for the customers so that the customers can concentrate on their application rather than assembling the required resources.

2. Scalable Infrastructure: There is no fix Infrastructure. You can modify the application infrastructure at any time. For example: If you need higher CPU, RAM (memory) numbers for running your application, then you can scale up the EC2 instances and save the infrastructure setting.

3. Automatically Scale Up & Down: Amazon Elastic Beanstalk automatically scales your application up and down based on the specific need of application at that particular time.

Amazon Elastic Beanstalk Components:
Amazon Elastic Beanstalk carries three different components to manage or execute your applications on the Amazon Web Service infrastructure:
1. Application
2. Application Versions
3. Environment

Application: When you deploy the application in the Amazon EBS, Elastic Beanstalk creates a separate folder dedicated to your application. This folder is a collection of different components, application versions, and environment configurations.

Application Versions: Amazon elastic beanstalk provides you an option using which you can upload the different versions of your application without even deleting the previous one.

Environment: At a single point of time, the environment can run only a single version of your application (such as Tomcat-Dev, Tomcat-Test, Tomcat-Pro), but EBS provides an option where you can create multiple environments for your single application. Let us suppose you have different stages for a single app like Development Stage, Testing Stage and Production Stage. Unfortunately, you can only run a single stage of your application. But Amazon Elastic Beanstalk allows you to create a different environment for each stage of your application.

Amazon Elastic Beanstalk Pricing
Amazon Elastic Beanstalk is free of cost. There is no charge for this service. Amazon charges only for the resources (Resources such as EC2 Instance, Storage, Network, etc..) that are used by specific applications.