As expected, Amazon has added container hosting to its compute building block service. Along with that, it also launched an event-driven compute service called AWS Lambda.
AWS has launched Amazon EC2 Container Service, which is a container management service to host Docker containers on a cluster of Amazon EC2 instances. Amazon EC2 Container Service manages container lifecycle with API calls that allow querying the state of the cluster from a centralized service. It is based on familiar Amazon EC2 features like security groups, EBS volumes and IAM roles. Customers can use EC2 Container Service to schedule the placement of containers across the cluster based on resource needs, isolation policies, and availability requirements. The EC2 Container Service integrates with Docker Hub, a hosted repository for Docker container-based applications that are distributed and shared across the community, or privately within an company. AWS has contributed to the Docker Hub by publishing a GlassFish application server. Amazon EC2 Container Service is available in preview. Developers can sign-up for early access through this form.
AWS Beanstalk developers can use containers through the preconfigured Docker platform. AWS Beanstalk offers PaaS like capability while the Amazon EC2 Container Service providers more control and visibility to the container lifecycle management.
AWS Lambda, a compute service that runs custom JavaScript code in response to events and automatically manages the compute resources. According to Amazon, AWS Lambda starts running code within milliseconds of an event such as an image upload, in-app activity, website click, or output from a connected device. Developers can also use AWS Lambda to create new back-end services where compute resources are automatically triggered based on custom requests. Developers write code in JavaScript that executes within the Lambda environment. This service makes it easy to develop and host code that can be triggered based on specific events generated by AWS services including S3, DynamoDB and Kinesis. Developers pay only for the requests served and compute time required to run their code. AWS Lambda charges for compute time in increments of 100 milliseconds, making it cost-effective and easy to scale apps to handle concurrent requests. AWS Lambda is available in preview. According to the official blog post, AWS Lambda is a zero-administration compute platform. Developers don't have to configure, launch, or monitor EC2 instances. They need not install any operating systems or language environments. They don't need to think about scale or fault tolerance and you don't need to request or reserve capacity. A freshly created function is ready and able to handle tens of thousands of requests per hour with absolutely no incremental effort on your part, and on a very cost-effective basis. Interested developers can apply for early access.