Does each Frontend app require an S3 bucket and a CloudFront distribution?

0
  1. If you have multiple Frontend Web apps with vue.js do you create an S3 bucket & Distribution for each one or do you put them in one S3 bucket?

  2. How do you handle rollbacks - I'm using a GitHub Actions workflow which on Git Revert will update the contents of the S3 bucket and create an invalidation (this I see as automated rollback) - if it was to be done manually in a scenario where GitHub Actions is down would it be a case of having bucket versioning enabled and restoring a previous version of the bucket?

taxmann
質問済み 8ヶ月前242ビュー
1回答
2
承認された回答

Hello.

  1. If you have multiple Frontend Web apps with vue.js do you create an S3 bucket & Distribution for each one or do you put them in one S3 bucket?

If you use the same S3 bucket or CloudFront, access logs will be output to the same location and it may take time to search for information when troubleshooting.
Therefore, I think it would be better to separate S3 and CloudFront if they are completely different front ends.

  1. How do you handle rollbacks - I'm using a GitHub Actions workflow which on Git Revert will update the contents of the S3 bucket and create an invalidation (this I see as automated rollback) - if it was to be done manually in a scenario where GitHub Actions is down would it be a case of having bucket versioning enabled and restoring a previous version of the bucket?

I think it would be a good idea to enable S3 versioning or take a backup of S3 using AWS Backup.
By doing so, you can also perform rollbacks.
https://docs.aws.amazon.com/aws-backup/latest/devguide/s3-backups.html

profile picture
エキスパート
回答済み 8ヶ月前
profile picture
エキスパート
レビュー済み 25日前
profile pictureAWS
エキスパート
レビュー済み 8ヶ月前
    1. Really good point on the access logs - thanks I didn't think of it that way but will definitely be separating them now!

    2. Ok I will enable S3 versioning, thanks

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ