4 Answers
The question is BeanStalk vs Containers. Question (and AWS) is leaning towards Containers. So it is EC2 vs Fargate. Fargate leads to less maintenance -> 2
1 – It’s mssing ECS on EC2 or Fargate. I guess you would infer EC2.
2 – The thought of deploying database software on containers gives me nightmares.
3 – Same as 2 for the database. Reserved instance is just noise.
4 – Would mean re-architecting
I would pick 1, but would understand if the questioner picked 2. If they did, they should serve a years penance running databases in containers and see if there’s anything low maintenance about that.
Hi Jeroen,
The main strategy for this question is one of elimination. We need to eliminate the answers that don’t fit the landscape. The question mentions 1 datastore server…it does not specify database, document store, etc…just that it is a persistant data store.
We eliminate 1 because we don’t know "given the landscape" as the question states, if we can run our datastore on RDS.
We eliminate 2 because Fargate is not designed for persistant data storage. Per https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html, Fargate tasks only support non-persistant storage volumes.
We eliminate 4 because it makes the assumption that we can use a MEAN stack–which might not be compatible with our landscape.
We’re left with 3. Can we run persistant storage volumes with ECS on EC2? Yes we can. See above link. Reserved instances is noise as Brian said. Is there any reason we can’t use 3 as it’s the only choice we have left? Nope. So, we have to choose it.
This style of question and elimination is common on the exam.
–Scott
I would choose between #1 and #3.
1. ECS, RDS, and Systems Manager. RDS and Systems Manager allow "to minimize maintenance."
3. ECS on EC2. This option lets you do a "lift and shift" without thinking about what kind of datastore they are using.
In a real-world scenario, I would abstain from keeping any kind of store on ECS or EC2. Mainly because AWS storage services provide so much easier scalability and backups. The question does not mention scalability and backups, but they are a part of "maintenance."
At the same time, I agree with you that we don’t know if the "datastore" is compatible with "RDS."
On the exam, I would choose #1 because of maintenance. But in real-world that really depends on whether the datastore is RDS-compatible or not.
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html?shortFooter=true