
The drupal aplication is started in localhost from a docker-compose.yaml with the dockerhub images of nginx, drupal, mysql and minio extended with the gomplate template renderer to configure the services at runtime. Remember to secure your bucket access, for instance: AWS account with a s3 bucket to store drupal static files and mysql backups.Some knowledge about drupal or similar stacks with docker containers.Learn about Cloudformation and look for alternatives to our current deployment workflows with terraform.Test new cloud tools to accelerate development.
AWS DRUPAL HOSTING FULL
The full sample code is in github (v1.1.0 branch) Motivation
AWS DRUPAL HOSTING INSTALL
In this scenario, you install servers in multiple AZs and tell the load balancer their IP addresses. If a server or even an entire AZ fails, the load balancer redirects the traffic to another AZ, where a copy of the Drupal installation is already waiting to take over the job. They communicate with each other as if they were on the same network. Distributed AWSĪ second approach, which I focus on in this article, not only migrates the application and its dependencies into the cloud, but it also deploys load balancers and implements a strategy for AWS regions and availability zones (AZs).ĪWS regions consist of multiple AZs, which you can imagine as independent data centers. However, there is little to be gained with this approach: The site is still neither highly available nor does it scale automatically. The website can then be accessed via the Internet. AWS acts as an ordinary hosting service provider here you just need to move the web server along with its dependencies into a single instance of Amazon's Elastic Compute Cloud (EC2) and connect to the Relational Database Service (RDS) to store the data there. The first is known as lift and shift migration.

There are least two ways to migrate your Drupal setup from your server to the cloud. By choosing a suitable architecture in Amazon's cloud, most of these scenarios can be avoided (but not in every instance). Also, this scenario does not scale automatically: If the server load drops or rises, you have to manually make changes to the hardware.įinally, unexpected (sometimes even expected) traffic spikes can lead to server overload and downtime. In addition, changes to such an environment are time-consuming keeping the site in sync with the development stack causes extra work. Regardless of who operates the site, if one of the components has a problem, the website is no longer accessible. Figure 1: Traditional website setups typically contain multiple single points of failure.
