AWS Fargate

AWS Fargate - is a serverless, pay-as-you-go compute engine that enables you to focus on building applications without the need to manage servers. Offloading tasks such as server management, resource allocation, and scaling to AWS not only enhances your operational efficiency but also expedites the journey from concept to production in the cloud, while lowering the overall cost of ownership.

Key definitions for AWS Fargate:

  • Serverless Containers

    AWS Fargate manages capacity, OS updates, compliance, and resiliency, so you can focus on your applications. Deploy any OCI-compliant container image and let AWS handle the infrastructure. For stateful workloads, integrate Amazon EFS with AWS Fargate to externalize data. Adapt to demand changes with dynamic scaling to minimize resource waste and ensure application availability. Use AWS Auto Scaling’s scheduled scaling, target tracking, and step scaling, along with Kubernetes' Horizontal Pod Autoscaler (HPA) and Vertical Pod Autoscaler (VPA)

  • Virtualization boundary for containerized workloads

    For sensitive, multi-tenant, or regulated containerized workloads, AWS Fargate ensures a secure virtualization boundary for each Amazon ECS task or Amazon EKS pod. Each task or pod is deployed on a dedicated, single-use, single-tenant compute resource, providing secure isolation between workloads

  • Secure and monitor network traffic with Amazon Virtual Private Networks (VPC)

    AWS Fargate integrates applications with existing investments in Virtual Private Networks (VPC), providing load balancing, segmentation through VPC security groups, and traffic monitoring with VPC Flow Logs. For client-based routing and built-in traffic observability, workloads can be configured with Amazon ECS Service Connect for inter-service communication

  • Compliant foundation for regulated industries

    For customers requiring containerized workloads in regulated or controlled environments, AWS Fargate is certified by numerous industry-standard compliance programs, including HIPAA, PCI, and FedRAMP, and is available in AWS GovCloud (US) regions

  • Secure terminal access for debugging

    To assist with troubleshooting and debugging, Amazon ECS Exec offers secure access to running containers without the need to SSH into the underlying servers. ECS Exec commands are logged for audit purposes in AWS CloudTrail and Amazon CloudWatch

  • Modernize .NET applications for improved performance and utility

    You can deploy .NET Framework applications using Windows Containers on both Amazon ECS and AWS Fargate, enabling you to leverage the benefits of containerization while utilizing the robust capabilities of these AWS services. This setup allows for efficient scaling, management, and orchestration of your .NET Framework applications in a flexible and secure environment

  • Resource-based pricing and per-second billing

    With AWS Fargate, you pay according to the task size and only for the duration that the resources are used by the task. By tagging Amazon ECS tasks, you can use AWS Cost Explorer to visualize costs, identify savings opportunities, and achieve detailed per-workload billing

  • Flexible pricing models

    Utilize Compute Savings Plans to secure savings over one- or three-year periods. Choose between On-Demand and Fargate Spot for a balance of cost and availability, and select AWS Graviton for enhanced cost-performance. AWS Compute Optimizer leverages machine learning to analyze historical usage and offers recommendations on task sizing to minimize costs

Service integrates with:

Usage use cases

  • Web apps, APIs, and microservices.

    Build and deploy your applications, APIs, and microservices architectures rapidly and with the immutability of containers. By eliminating the need to own, operate, and manage the lifecycle of a compute infrastructure, you can dedicate your efforts solely to your applications

  • Modernize applications.

    Use AWS Fargate with Amazon ECS or Amazon EKS to simplify running and scaling your containerized workloads. Migrate and operate your Amazon ECS Windows containers seamlessly, without the need to refactor or rearchitect your legacy applications, allowing you to maintain functionality while modernizing your infrastructure

  • Support AI and ML applications.

    Create a versatile and portable development environment for artificial intelligence (AI) and machine learning (ML). Train, test, and deploy your machine learning models using scalable resources that boost server capacity, ensuring optimal performance while avoiding the costs and inefficiencies of overprovisioning. This approach allows you to efficiently manage resources, improving both the flexibility and cost-effectiveness of your ML operations

  • Data processing.

    Execute data processing workloads efficiently by scaling up to 16 vCPUs and 120 GB of memory per task. Integrate seamlessly with AWS Batch to enable parallel serverless processing, ensuring optimal performance and scalability for your data-intensive applications

  • Development and Testing Environments.

    Create isolated development and testing environments using AWS Fargate. Developers can quickly spin up environments that mirror production settings without worrying about infrastructure constraints

  • CI/CD Pipelines.

    AWS Fargate can host the build, test, and deployment stages of CI/CD pipelines. By running these tasks in containers, you can ensure consistency across different stages and environments. Benefits: Improved reliability, consistency, and reduced infrastructure management burden

FAQ for AWS Fargate

  • What is AWS Fargate?

    AWS Fargate is a serverless compute engine for containers compatible with both Amazon Elastic Container Service (ECS) and Amazon Elastic Kubernetes Service (EKS). It simplifies application development by eliminating the need to provision and manage servers. With Fargate, you can specify and pay for resources per application, and benefit from enhanced security through built-in application isolation
  • What is the difference between Lambda and Fargate?

    AWS Lambda and AWS Fargate are both serverless computing services offered by Amazon Web Services, but they serve different purposes and are suited for different types of workloads. AWS Lambda is best suited for event-driven, short-lived, and highly scalable functions, while AWS Fargate is ideal for running containerized applications with more complex and longer-running requirements
  • What is Fargate vs. ECS?

    Both services can be used to run containers on AWS, but Fargate is designed for those who prefer a serverless approach, while ECS is for those who need more control over the compute environment
  • Is Fargate the same as Kubernetes?

    • AWS Fargate: Serverless, infrastructure-managed compute engine for running containers. Best for users who want to avoid infrastructure management
    • Kubernetes: Container orchestration platform with extensive features for managing and scaling containerized applications. Best for users needing advanced orchestration capabilities and who are comfortable managing Kubernetes clusters

    AWS Fargate can be used in conjunction with Kubernetes via Amazon EKS to provide a serverless execution environment for Kubernetes workloads, thereby combining the orchestration capabilities of Kubernetes with the serverless infrastructure management of Fargate

  • When should I use Fargate?

    You should use AWS Fargate when you want to run containerized applications without the hassle of managing underlying servers, as it provides a serverless approach that simplifies infrastructure management. Fargate is ideal for applications with variable workloads, microservices architectures, development and testing environments, and scenarios requiring enhanced security and compliance. It offers seamless scalability, cost efficiency by charging only for the resources used, and integrates well with other AWS services, making it suitable for both short-lived tasks and complex, long-running applications
  • What is Fargate good for?

    AWS Fargate is well-suited for running containerized applications without the need to manage the underlying infrastructure, making it ideal for simplifying deployment and scaling of microservices, batch processing, and web applications. It provides a serverless compute environment that scales automatically, ensuring cost efficiency by charging only for the resources used. Fargate is particularly beneficial for applications with variable workloads, development and testing environments, and those requiring enhanced security and compliance. Additionally, it integrates seamlessly with other AWS services, enabling a streamlined and cohesive cloud ecosystem