AWS provides various service under its compute category. below are the services that are currently available
- EC2 (Elastic Compute Cloud)
- Batch
- ECR (EC2 Container Registry)
- ECS (EC2 auto scaling)
- EKR (EC2 Kubernetes Registry)
- Elastic Beanstalk
- Lambda
- Lightsail
- Serverless Application repository
EC2 – Elastic Compute Cloud
It is a web-service which provides secure, re-sizable compute capacity in the cloud. It is basically designed to make web-scale developing easier for developers. Think of it as a machine you are using on cloud. The major benefits of EC2 are
- Elastic Computing – commission as many instances of the servers you want and increase or decrease capacity of the machine in minutes.
- Complete Control – Users will be provided with root access to the server.
- Flexible – Users can also change the OS if needed or move the machine between different regions.
- Integrated – Can be easily integrated with other AWS services seamlessly
- Reliable – EC2 servers are highly available and proven to be up and running with an SLA of 99.95% availability.
- Secure – EC2 servers work in conjunction with AWS VPCs, providing highly secured and robust computing experience.
- In Expensive – Very low rate when compared to on-premise.
EC2 – Configuration options
an AWS EC2 instance can be configured as per your requirements, below are some of the commonly used configurations. You can create an EC2 instance with
- AMI – Amazon Machine Image (Pre-built images with required software)
- Auto Scaling
- DB on instance
- Elastic IP address
- Instance with cloud watch
- C3 – Optimized instance
- Spot instance
- X1 instance
Elastic Beanstalk
It is an easy to use service for deploying, scaling web applications , microservices developed using java, .net, python, node js, php etc. With this service, you can simply upload the code or integrate with a CI/CD server and beanstalk will automatically handle deployment, capacity provisioning, load balancing, networking auto scaling and health monitoring to the applications.
Lambda
It is a service for which you don’t need to provision/manage servers. You will only need to pay just for the compute time you use. You can upload your code to AWS lambda, setup your code to trigger from another AWS service/Http end -points/in-app activity, Lambda runs the code only when triggered and allocates compute resources that are needed.
Lightsail
LightSail, is a simplified version of EC2 that offers all the features of EC2 at a lower price. Below are some of the features offered by AWS LightSail.
- Bundled Compute, Storage and Networking
- Fully configured servers
- Low, predictable price
- Intuitive, global Lightsail console
- Easy growth path
- Access to AWS services
- Tailored API and CLI
AWS – Batch
AWS Batch is a service, with which you can simply package the code for your batch job, specify their dependencies, and submit your batch job using the AWS management console, CLIs or SDKs. AWS batch allows you to specify execution parameters and job dependencies. AWS batch efficiently and dynamically provisions and scaled EC2 and spot instances based on the requirements of your jobs. Some of the core features of AWS batch are
- Support for multi node parallel jobs
- Granular job definitions
- Simple job dependency modeling
- Support for popular workflow engines (Pegasus WMS, Luigi)
- Priority based scheduling
- Dynamic Spot bidding
- Integrated monitoring and logging
- Fine grained access control
Serverless Application Repository
The main purpose of this service is to allow developers to store and share reusable applications, easily assemble and deploy serverless architectures in powerful new ways. Using the Serverless Application Repository, you don’t need to clone, build, package, or publish source code to AWS before deploying it. Instead, you can use pre-built applications from the Serverless Application Repository in your serverless architectures, helping you and your teams reduce duplicated work, ensure organizational best practices, and get to market faster.