Amazon EC2 Container Service (ECS) is a highly scalable, high performance container management service that supports Docker containers and allows you to easily run applications on a managed cluster of Amazon EC2 instances. Amazon ECS eliminates the need for you to install, operate, and scale your own cluster management infrastructure. With simple API calls, you can launch and stop Docker-enabled applications, query the complete state of your cluster, and access many familiar features like security groups, Elastic Load Balancing, EBS volumes, and IAM roles. You can use Amazon ECS to schedule the placement of containers across your cluster based on your resource needs and availability requirements. You can also integrate your own scheduler or third-party schedulers to meet business or application specific requirements.
There is no additional charge for Amazon EC2 Container Service. You pay for AWS resources (e.g. EC2 instances or EBS volumes) you create to store and run your application.
You can use Amazon EC2 Container Service to schedule long-running applications and batch jobs. You can also use the APIs to get up-to-date cluster state information to integrate your own custom as well as third party schedulers. Amazon ECS is a shared state, optimistic concurrency system that supports multiple schedulers on the same cluster for each business or application-specific requirement.
Amazon EC2 Container Service can easily be integrated or extended through simple APIs. Amazon ECS provides complete visibility and control into your AWS resources, so you can easily integrate and use your own schedulers or connect Amazon ECS into your existing software delivery process (e.g., continuous integration and delivery systems).
Amazon EC2 Container Service launches your containers on your own EC2 instances. No compute resources are shared with other customers. Your clusters run in a VPC allowing you to use your own VPC security groups and network ACLs. These features provide you a high level of isolation and help you use Amazon ECS to build highly secure and reliable applications.