How to build a multi-site cloud infrastructure on AWS?

Solution 1:

I'm not sure what your use case is. They look like the copies of the same infrastructure...

If you separate staging environments, then I'd suggest multiple accounts. E.g. dev, testing, staging, production... Each account would then have its own group of AWS resources, rightsized to their needs. E.g. a dev account typically doesn't need extra-large instances

Or would you like to have dedicated sites/groups (?) per customer, i.e. multi-tenant setup?