BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
AWS Fargate is a service that enables a user to run containers on Amazon's cloud computing platform without the need to manage the underlying infrastructure.
Fargate is an operational mode within Amazon Elastic Container Service (ECS) that abstracts container host clusters and servers away from the user of the service. With Fargate, the user remains in control at the container level, but doesn't need to set up or configure anything further down the infrastructure stack, such as virtual machine instances.
AWS Fargate benefits and limitations
With ECS, a user can deploy containers with either Fargate or the EC2 launch type. The latter provides more granular control, but requires the user to manage, provision, scale and patch virtual machines.
Conversely, a developer that uses Fargate can package applications in a container with specified parameters and access policies, and AWS manages the underlying infrastructure.
A developer defines an application in Amazon ECS in the same manner, regardless of whether he uses Fargate or manages the EC2 instances. He creates a blueprint to define the tasks the container will carry out, then creates CPU and memory specifications, establishes networking and access management policies and uploads the application to Amazon ECS. If a developer uses Fargate, the service will then launch and manage the containers.
A developer can also scale applications with Fargate. After she defines the application requirements, such as compute and memory resources, the service will manage scaling and infrastructure in order to run the containers in a highly-available environment. Fargate can simultaneously launch thousands of containers and scale to run mission-critical applications.
Some AWS Fargate limitations include manually updating container images and potentially writing Docker images. A user will need a basic understanding of system administration to avoid potential issues.
AWS Fargate pricing and competition
AWS charges for Fargate based on the amount of vCPU and memory resources that are consumed by containerized applications. Pricing depends upon which region the service runs in. The service uses a per-second pricing model, with a one-minute minimum charge.
Competing container services that also abstract away infrastructure management include Microsoft Azure Container Instances and Google Kubernetes Engine.