There are many different options available to run containers on AWS, so we would like to determine the best way to run Clowder in containers on AWS.


Raw EC2 - Docker Compose on raw EC2 instances

Example: https://opensource.ncsa.illinois.edu/bitbucket/projects/CATS/repos/clowder/browse/docker-compose.yml

Pricing:


Pros:

Cons:

Open Questions:

ECS via EC2 (kops) - Classic Kubernetes with an AWS twist

Example: https://opensource.ncsa.illinois.edu/confluence/display/~lambert8/KnowEnG+Kubernetes+Deployment#KnowEnGKubernetesDeployment-14-16:AssignaDNSrecordanddeploytheNGINXIngressLoadBalancer(ILB)

Pricing:


Pros:

Cons:

Open Questions:

EKS: Kubernetes with an AWS UI

Example: https://github.com/aws-samples/aws-workshop-for-kubernetes

Pricing:


Pros:

Cons:

Open Questions:

ECS via FarGate - effectively docker-compose on invisible EC2?

Example: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-cli-tutorial-fargate.html

Pricing:

NOTE: Some users say that FarGate is better suited for batch operations, and not for services that are expected to run 24/7


Pros:

Cons:

Open Questions: