- Newest
- Most votes
- Most comments
Hello.
I think there is no problem with the service itself.
However, EKS requires cluster version control on the user side, so it may be a little difficult for people who are not familiar with Kubernetes operations.
Therefore, if you want to make operations easier, I think it is better to use ECS.
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html
I slightly modified the configuration diagram.
DynamoDB is a resource outside the VPC, so I placed it outside the VPC.
Also, a line was connected from ALB to NAT Gateway, but since NAT Gateway cannot be used for inbound communication, I changed it as follows.
There was no mention of where to save the container image, so I used ECR for now, but DockerHub can also be used.
I think it's also a good idea to use VPC endpoints to access ECR and DynamoDB.
The front end created with Amplify is hosted on S3, so I extended the line from CloudFront to S3.
Relevant content
- Accepted Answerasked a year ago
- Accepted Answerasked 4 years ago
- Accepted Answerasked 24 days ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated 4 years ago
- AWS OFFICIALUpdated 3 years ago
- AWS OFFICIALUpdated 2 years ago
If you are concerned about security when running a web application in production, I think it would be a good idea to introduce something like AWS WAF. Please note that as of May 2024, Amplify cannot directly use AWS WAF, so you need to create one CloudFront that is not managed by Amplify. https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/enable-aws-waf-for-web-applications-hosted-by-aws-amplify.html
Hi Riku, Thank you so much for your help! I really appreciate the detailed response! I agree that EKS might be difficult to manage, especially for a first project, so I will take your advice and use ECS instead. In the diagram, I would just replace the EKS with ECS and the pods with EC2 instances, correct?
If you don't plan to use GPUs, I think using ECS Fargate will make management easier. https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html
In the configuration diagram, you need to replace EKS with ECS and replace Pods with tasks. So the configuration diagram will be as follows.
Thank you once again for all your help!