Which solution will meet these requirements with the LEAST operational overhead?
Create an Amazon Elastic Kubernetes Service (Amazon EKS) cluster on Amazon EC2. Use the Amazon EKS CLI to launch the planning application in pods by using the –tags option to assign a custom tag to the pod.
Create an Amazon Elastic Kubernetes Service (Amazon EKS) cluster on AWS Fargate. Use the Amazon EKS CLI to launch the planning application. Use the AWS CLI tag-resource API call to assign a custom tag to the pod.
Create an Amazon Elastic Container Service (Amazon ECS) cluster on Amazon EC2. Use the AWS CLI with run-tasks set to true to launch the planning application by using the –tags option to assign a custom tag to the task.
Create an Amazon Elastic Container Service (Amazon ECS) cluster on AWS Fargate. Use the AWS CLI run-task command and set enableECSManagedTags to true to launch the planning application. Use the –tags option to assign a custom tag to the task.
Explanations:
Amazon EKS on EC2 requires more operational management compared to Fargate. It requires managing EC2 instances, leading to increased overhead for scaling and resource management. Also, the–tagsoption is not directly available for pods.
While Amazon EKS on Fargate provides a serverless approach, the–tagsoption is not the proper way to assign tags to pods. Instead, tagging resources in EKS needs to be done via the AWS CLI or API.
Amazon ECS on EC2 requires managing EC2 instances, which adds more operational overhead compared to AWS Fargate. Additionally, the use of–tagsfor tasks does not align with how tagging works in ECS tasks.
Amazon ECS on AWS Fargate provides a fully managed serverless solution with minimal operational overhead. TheenableECSManagedTagsoption properly enables automatic tagging of ECS tasks, making it cost-effective and easy to manage resources based on the number of containers.