Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. Users can launch instances with a variety of OSs, load them with custom application environments, manage network access permissions, and run images on multiple systems.
$0.01
per IP address with a running instance per hour on a pro rata basis
AWS Elastic Beanstalk
Score 8.1 out of 10
N/A
AWS Elastic Beanstalk is the platform-as-a-service offering provided by Amazon and designed to leverage AWS services such as Amazon Elastic Cloud Compute (Amazon EC2), Amazon Simple Storage Service (Amazon S3).
$35
per month
Pricing
Amazon Elastic Compute Cloud (EC2)
AWS Elastic Beanstalk
Editions & Modules
Data Transfer
$0.00 - $0.09
per GB
On-Demand
$0.0042 - $6.528
per Hour
EBS-Optimized Instances
$0.005
per IP address with a running instance per hour on a pro rata basis
Carrier IP Addresses
$0.005 - $0.10
T4g Instances
$0.04
per vCPU-Hour Linux, RHEL, & SLES
T2, T3 Instances
$0.05 ($0.096)
per vCPU-Hour Linux, RHEL, & SLES (Windows)
No Charge
$0
Users pay for AWS resources (e.g. EC2, S3 buckets, etc.) used to store and run the application.
Offerings
Pricing Offerings
Amazon Elastic Compute Cloud (EC2)
AWS Elastic Beanstalk
Free Trial
No
No
Free/Freemium Version
No
Yes
Premium Consulting/Integration Services
No
No
Entry-level Setup Fee
No setup fee
No setup fee
Additional Details
—
—
More Pricing Information
Community Pulse
Amazon Elastic Compute Cloud (EC2)
AWS Elastic Beanstalk
Considered Both Products
Amazon Elastic Compute Cloud (EC2)
Verified User
Engineer
Chose Amazon Elastic Compute Cloud (EC2)
I have used DigitalOcean and Google Compute Engine on a trial period. EC2 was the best choice for my team due to the level of features it offers plus the ability to integrate it quickly given that we were already using so many other AWS Microservices. Getting up and running …
It is better than other products in terms of their support team, documentation and initially, you can set up your services almost without paying anything. Apart from them, AWS services do have the best availability in any region in compared to other cloud products available …
Public & Private Cloud Senior Business Technology Engineer
Chose AWS Elastic Beanstalk
We now default to Amazon ECS, due to flexibility this gives us with how workloads scale, and more network flexibility as many of our workloads are internal / external facing. We selected Elastic Beanstalk at beginning of our containerization phase, which suited our needs …
Heroku is another similar product which we had tried out to deploy one of the NodeJs project and it has lot of developer friendly features as well. Though Heroku is more expensive than Beanstalk is what I found. Heroku also has some restrictions which can affect the …
AWS Elastic Beanstalk is a great option for an organization that's already invested in the AWS ecosystem. The greater the number of complementary features needed by the application (e.g. integrating with Amazon's Elastic Load Balancer, databases, etc), the greater the reward …
I enjoyed that Lightsail was so simple to provision and access via the in-browser SSH terminal, but ultimately Elastic Beanstalk is a more robust offering that interfaces seamlessly with more of AWS's other services. Elastic Beanstalk is also better equipped to automate …
Suitable for companies that are looking for performance at a competitive price, flexibility to switch instance type even with RI, flexibility to add-on IOPS, option to lower running cost with the regular introduction of new instance type that comes with higher performance but at a lower cost.
I have been using AWS Elastic Beanstalk for more than 5 years, and it has made our life so easy and hassle-free. Here are some scenarios where it excels -
I have been using different AWS services like EC2, S3, Cloudfront, Serverless, etc. And Elastic Beanstalk makes our lives easier by tieing each service together and making the deployment a smooth process.
N number of integrations with different CI/CD pipelines make this most engineer's favourite service.
Scalability & Security comes with the service, which makes it the absolute perfect product for your business.
Personally, I haven't found any situations where it's not appropriate for the use cases it can be used. The pricing is also very cost-effective.
Getting a project set up using the console or CLI is easy compared to other [computing] platforms.
AWS Elastic Beanstalk supports a variety of programming languages so teams can experiment with different frameworks but still use the same compute platform for rapid prototyping.
Common application architectures can be referenced as patterns during project [setup].
Multiple environments can be deployed for an application giving more flexibility for experimentation.
The choices on AMIs, instance types and additional configuration can be overwhelming for any non-DevOps person.
The pricing information should be more clear (than only providing the hourly cost) when launching the instance. AWS DynamoDB gives an estimated monthly cost when creating tables, and I would love to see similar cost estimation showing on EC2 instances individually, as not all developers gets access to the actual bills.
The term for reserving instances are at least 12 months. With instance types changing so fast and better instances coming out every other day, it's really hard to commit to an existing instance type for 1 or more years at a time.
Limited to the frameworks and configurations that AWS supports. There is no native way to use Elastic Beanstalk to deploy a Go application behind Nginx, for example.
It's not always clear what's changed on an underlying system when AWS updates an EB stack; the new version is announced, but AWS does not say what specifically changed in the underlying configuration. This can have unintended consequences and result in additional work in order to figure out what changes were made.
As our technology grows, it makes more sense to individually provision each server rather than have it done via beanstalk. There are several reasons to do so, which I cannot explain without further diving into the architecture itself, but I can tell you this. With automation, you also loose the flexibility to morph the system for your specific needs. So if you expect that in future you need more customization to your deployment process, then there is a good chance that you might try to do things individually rather than use an automation like beanstalk.
You an start using EC2 instances immediately, is so easy and intuitive to start using them, EC2 has wizard to create the EC2 instances in the web browser or if you are code savvy you can create them with simple line in the CLI or using an SDK. Once you are comfortable using EC2, you can even automate the process.
The overall usability is good enough, as far as the scaling, interactive UI and logging system is concerned, could do a lot better when it comes to the efficiency, in case of complicated node logics and complicated node architectures. It can have better software compatibility and can try to support collaboration with more softwares
AWS's support is good overall. Not outstanding, but better than average. We have had very little reason to engage with AWS support but in our limited experience, the staff has been knowledgeable, timely and helpful. The only negative is actually initiating a service request can be a bit of a pain.
As I described earlier it has been really cost effective and really easy for fellow developers who don't want to waste weeks and weeks into learning and manually deploying stuff which basically takes month to create and go live with the Minimal viable product (MVP). With AWS Beanstalk within a week a developer can go live with the Minimal viable product easily.
- Do as many experiments as you can before you commit on using beanstalk or other AWS features. - Keep future state in mind. Think through what comes next, and if that is technically possible to do so. - Always factor in cost in terms of scaling. - We learned a valuable lesson when we wanted to go multi-region, because then we realized many things needs to change in code. So if you plan on using this a lot, factor multiple regions.
Amazon EC2 is super flexible compared to the PaaS offerings like Heroku Platform and Google App Engine since with Amazon EC2, we have access to the terminal. In terms of pricing, it's basically just the same as Google Compute Engine. The deciding factor is Amazon EC2's native integration with other AWS services since they're all in the same cloud platform.
We also use Heroku and it is a great platform for smaller projects and light Node.js services, but we have found that in terms of cost, the Elastic Beanstalk option is more affordable for the projects that we undertake. The fact that it sits inside of the greater AWS Cloud offering also compels us to use it, since integration is simpler. We have also evaluated Microsoft Azure and gave up trying to get an extremely basic implementation up and running after a few days of struggling with its mediocre user interface and constant issues with documentation being outdated. The authentication model is also badly broken and trying to manage resources is a pain. One cannot compare Azure with anything that Amazon has created in the cloud space since Azure really isn't a mature platform and we are always left wanting when we have to interface with it.
It reduced the need for heavy on-premises instances. Also, it completely eliminates maintenance of the machine. Their SLA criteria are also matching business needs. Overall IAAS is the best option when information is not so crucial to post on the cloud.
It makes both horizontal and vertical scaling really easy. This keeps your infrastructure up and running even while you are increasing the capacity or facing more traffic. This leads to having better customer satisfaction.
If you do not choose your instance type suitable for your business, it may incur lots of extra costs.