Amazon Container Services
Containers are an increasingly important way for developers to package and deploy their applications. They are lightweight and provide a consistent, portable software environment for applications to easily run and scale anywhere. Building and deploying microservices, running batch jobs, for machine learning applications, and moving existing applications into the cloud are just some of the popular use cases for containers.
AWS offers multiple container products to help you deploy, manage, and scale containers in production.
Amazon Elastic Container Service
Amazon Elastic Container Service (Amazon ECS) is a fully-managed container orchestration service that helps you easily deploy, manage, and scale containerized applications on AWS. With Amazon ECS, you do not have to install and operate your own container orchestration software, manage and scale a cluster of virtual machines, or schedule containers on those virtual machines. Amazon ECS is designed from the ground up to be deeply integrated with the rest of the AWS platform, working with services like ALB, IAM, ECR, CloudWatch, CloudFormation, and CloudTrail. With Amazon ECS, you get a highly reliable solution that provides a native AWS API experience for containers, similar to EC2 for virtual machines.
Learn more about Amazon ECS
Amazon Elastic Container Service for Kubernetes
Amazon Elastic Container Service for Kubernetes (Amazon EKS) is a managed service that makes it easy for you to run Kubernetes on AWS without needing to become an expert in operating Kubernetes. Amazon EKS fully manages the availability and scalability of the Kubernetes control plane for each cluster. Amazon EKS automatically performs all the cluster management operations, such as handling version upgrades, scaling the Kubernetes masters and etcd persistence layer, and detecting and replacing unhealthy masters.
Learn more about Amazon EKS
Amazon Elastic Container Registry
Amazon Elastic Container Registry (Amazon ECR) is a fully-managed Docker container registry that makes it easy for you to store, manage, and deploy Docker container images. Amazon ECR can be used standalone and also has deep integration with Amazon ECS, simplifying your development to production workflow. Amazon ECR eliminates the need to operate your own container repositories or worry about scaling the underlying infrastructure. Amazon ECR hosts your images in a highly available and scalable architecture, allowing you to reliably deploy containers for your applications.
Learn more about Amazon ECR
AWS Fargate is a compute engine for deploying and managing containers without having to manage any of the underlying infrastructure. You no longer have to provision, configure, and scale clusters of virtual machines to run containers. Simply upload your container image, specify resource requirements, and AWS Fargate launches containers for you within seconds. AWS Fargate enables you to focus on designing and running the application, not the infrastructure.
AWS Fargate is available for Amazon ECS and support for Amazon EKS will be available in 2018.
Learn more about AWS Fargate