What is the proper way to setup an EC2 Web Server with the aim of serving a site which experiences high demand once a month via 1 small EC2 for 90% of the time and then enter a load balanced group for the other 10%. I understand the AWS mechanics, AMI, auto scaling, metrics, and load balancer, but I don't know the best practices of setting up a CENTOS server to serve multiple servers.

I was thinking http://tecadmin.net/mount-s3-bucket-centosrhel-ubuntu-using-s3fs/# with S3 buckets (I ran into a few problems), but would a simple mounted volume be better?

I would really appreciate advice from anyone who has used AWS in this way with Drupal. Another article I read is Using a load balancer or reverse proxy.

Obviously, performance is a big consideration. I know S3 is fast, but I imagine it's slower than using a mounted volume.

closed as primarily opinion-based by leymannx, kiamlaluno Nov 21 '18 at 18:41

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.


Drupal considerations are similar to WP, Magento and Stateless applications.

  • Share your code across your auto scaling group via AWS EFS, Lsyncd, S3 or NFS.
  • Use CDN + S3 for static content
  • Separate Database (AWS RDS)
  • Make sure to use Varnish and NGINX.
  • Use Github/BitBucket and define a development workflow system.
  • Cache and manage session via Redis/Memcached.

More details: https://www.clickittech.com/cloud-computing/scaling-in-the-cloud/

The above link is an article about the Art of scaling which considers Drupal, WP and Saas Applications.

Not the answer you're looking for? Browse other questions tagged or ask your own question.