Containers on AWS
The most secure, reliable, and scalable way to run containers
AWS is the #1 place for you to run containers and 80% of all containers in the cloud run on AWS. Customers such as Samsung, Expedia, KPMG, GoDaddy, and Snap choose to run their containers on AWS because of our security, reliability, and scalability.
When running containers on AWS, you have two choices to make. First, you choose whether or not you want to manage servers. You choose AWS Fargate if you want serverless compute for containers and Amazon EC2 if you need control over the installation, configuration, and management of your compute environment. Second, you choose which container orchestrator to use: Amazon Elastic Container Service (ECS) or Amazon Elastic Kubernetes Service (EKS).
Fargate is the preferred way for customers to run containers on AWS across both ECS and EKS. Customers love Fargate because it provides serverless compute for containers, which enables them to focus on building their applications. Fargate removes the need to provision and manage servers, lets you specify and pay for resources per application, and improves security through application isolation by design. Customers such as Turner, Veritone, Corteva, KPMG, and Samsung have taken advantage of Fargate so their teams can focus on building applications.
AWS offers the broadest choice of containers orchestrators, so you can run your containers on AWS regardless of your choice of tools or APIs. If you’re familiar with AWS constructs and APIs, ECS is a great place to run your containers. ECS is deeply integrated with AWS services such as Identity and Access Management (IAM), Amazon Virtual Private Cloud (VPC), and Amazon Route 53 and has been tested extensively for security, reliability, and availability to support mission-critical services internally and for our customers. AWS services such as Amazon SageMaker, AWS Batch, Amazon Lex, and Amazon.com’s recommendation engine are all built on ECS. Additionally, customers such as Expedia, Mobileye, Cook Pad, and Hudl who are already using AWS extensively, have chosen to build on ECS. Every hour, ECS launches 5X the number of tasks than the number of instances launched by EC2.
If you use Kubernetes, EKS is the most secure, reliable, and scalable way to run Kubernetes. EKS provides a scalable and highly-available control plane that runs across multiple availability zones to eliminate a single point of failure. EKS runs upstream Kubernetes and is certified Kubernetes conformant so you get all benefits of open source tooling from the community. EKS is used by customers such as Intel, Snap, Intuit, GoDaddy, and Autodesk for critical use cases such as machine learning and cloud migration.
AWS also offers end-to-end observability, security, and traffic management for your distributed systems, so you can focus on building your applications. With AWS App Mesh you get application-level networking and it is the only service mesh that allows communication across multiple types of compute infrastructure such as EC2, ECS, Fargate, and Kubernetes on AWS.
Why Containers on AWS
AWS offers 210 security, compliance, and governance services and key features which is about 40 more than the next largest cloud provider. AWS provides strong security isolation between your containers, ensures you are running the latest security updates, and gives you the ability to set granular access permissions for every container.
AWS container services run on the best global infrastructure with 69 Availability Zones (AZ) across 22 Regions. AWS provides >2x more regions with multiple availability zones than the next largest cloud provider (22 vs. 8). There are SLAs for all our container services (ECS, EKS, and Fargate) giving you ease of mind.
AWS container services offer the broadest choice of services to run your containers. You can choose AWS Fargate if you want serverless compute for containers and Amazon EC2 if you need control over the installation, configuration, and management of your compute environment. You can also choose which container orchestrator to use: Amazon Elastic Container Service (ECS) or Amazon Elastic Kubernetes Service (EKS).
Deeply Integrated with AWS
AWS container services are deeply integrated with AWS by design. This allows your container applications to leverage the breadth and depth of the AWS cloud from networking, security, to monitoring. AWS combines the agility of containers with the elasticity and security of the cloud.
Containers provide process isolation that makes it easy to break apart and run applications as independent components called microservices.
Package batch processing and ETL jobs into containers to start jobs quickly and scale them dynamically in response to demand.
Use containers to quickly scale machine learning models for training and inference and run them close to your data sources on any platform.
Containers let you standardize how code is deployed, making it easy to build workflows for applications that run between on-premises and cloud environments.
Application migration to the cloud
Containers make it easy to package entire applications and move them to the cloud without needing to make any code changes.
Platform as a service
Use containers to build platforms that remove the need for developers to manage infrastructure and standardize how your applications are deployed and managed.
Forrester has published the “New Wave on Public Cloud Enterprise Container Platforms” report, which evaluates the seven most significant vendors in the category. AWS is positioned as a Leader, ahead of Microsoft and Google; In a “New Wave,” vendors are rated as differentiated, on par, or needs improvement across a set of 10 criteria. AWS scored “differentiated” on 8 of the ten criteria, and “on par” for 2, the best performance of any of the seven evaluated vendors. In addition, our market presence is represented as far larger than any competitor.
Nucleus research published a guidebook on containers and Kubernetes on AWS. To get an understanding of how companies are using containers, Nucleus conducted in-depth interviews with developers at 21 companies ranging in size from post-funding startup to global enterprise, encompassing 710 discrete containerized workloads. We found that 81 percent of containers are deployed in the cloud with the AWS cloud being the most popular choice; 80 percent of cloud-hosted containers run on AWS. Of the cloud-hosted Kubernetes workloads, 82 percent run on AWS.
Containers are the heir apparent next generation of compute. Containers are intimately tied to a transformation in application architecture, software development methodology, and operational principles. Ultimately, the combination of these changes enables the faster delivery of software and more modern, scalable, and agile applications. In this report, IDC forecasts a five-year CAGR of 79% for enterprise container instances, with over 1.8 billion enterprise containers by 2021. IDC also shares how you can build modern applications with AWS Container services.
Learn more about running containers on AWS.
Instantly get access to the AWS Free Tier.
Learn how to get started with containers on AWS.