The
Prefect ECS Push worker can work with either
AWS Fargate or
EC2.
-
Fargate abstracts away the underlying infrastructure, making it simpler to initiate but potentially slower for each flow run's setup.
-
EC2 uses ECS clusters backed by EC2 instances, which can reduce setup time for each flow run and provide more control over instance management and configuration.
So, when you configure an ECS Push worker with a choice of FARGATE or EC2, selecting
EC2 allows you to run your ECS tasks on an ECS cluster backed by EC2 instances, offering faster start times and more granular control over the infrastructure.
For more details, you can refer to the
ECS Worker Guide.
If you have any specific use-case constraints, especially around resource needs like GPUs, it's worth looking at the relevant Prefect documentation and GitHub issues, for example, accommodating GPU-based jobs often requires using EC2 due to Fargate's limitations.
Here are some relevant GitHub issues and discussions:
-
Clarify documentation for GPU-based AWS jobs
-
Setting capacityProviderStrategy not working in Push Work Pool
These resources should help clarify the capabilities and configurations of ECS Push workers across different infrastructure setups.