reference deployment

Drupal on AWS

Deploy Drupal using Amazon RDS, Amazon S3, and other AWS services

This Quick Start deploys a highly available Drupal architecture on the Amazon Web Services (AWS) Cloud.

Drupal is an open-source, content management platform written in the PHP server-side scripting language. Drupal provides a backend framework for many enterprise websites. Deploying Drupal on AWS makes it easy to use AWS services to further enhance the performance and extend functionality of your content management framework.

The deployment uses Amazon Elastic Compute Cloud (Amazon EC2), Amazon Virtual Private Cloud (Amazon VPC), Amazon Relational Database Service (Amazon RDS), and Amazon Elastic File System (Amazon EFS).

This reference architecture is automated by AWS CloudFormation templates that deploy the Drupal environment on AWS in about 30 minutes. You can customize the templates to meet your specific requirements.


drupal-small

This Quick Start was developed by
AWS solutions architects.

 

  •  What you'll build
  •  How to deploy
  •  Cost and licenses
  •  What you'll build
  • Use this Quick Start to set up the following Drupal environment on AWS:

    • A virtual private cloud (VPC) that is configured across two Availability Zones. For each Availability Zone, this Quick Start provisions one public subnet and one private subnet, according to AWS best practices.*
    • In the public subnets, Linux bastion hosts in an Auto Scaling group to provide secure access to allow inbound Secure Shell (SSH) access to EC2 instances in the private subnets.*
    • In the public subnets, managed network address translation (NAT) gateways to provide outbound Internet connectivity for instances in the private subnets.*
    • An AWS Identity and Access Management (IAM) role to enable AWS resources created through the Quick Start to access other AWS resources when required.*

    The Quick Start gives you the option to build a new VPC infrastructure with these components or use your existing VPC infrastructure. Within this infrastructure, the Quick Start deploys:

    • In the private subnets, a web server instance (Amazon Machine Image, or AMI) in an Auto Scaling group to host the Drupal servers and Amazon Aurora database instances.
    • Auto Scaling, which allows the Drupal cluster to add or remove servers based on their use.
    • Integration of Auto Scaling with Elastic Load Balancing, which automatically adds and removes instances from the load balancer. The default installation sets up low and high CPU-based thresholds for scaling the instance capacity up or down.
    • Amazon Elastic File System (Amazon EFS), which provides simple, scalable file storage for use with Amazon EC2 instances.

    * The template that deploys the Quick Start into an existing VPC skips the tasks marked by asterisks and prompts you for your existing VPC configuration.

  •  How to deploy
  • You can build your Drupal environment on AWS in about 30 minutes, by following a few simple steps:

    1. If you don't already have an AWS account, sign up at https://aws.amazon.com.
    2. Launch the Quick Start. You can choose from two options:
    3. Log in to the Drupal administrator site to test your deployment.
    4. Use the Drupal administrator site to create content.

    The Quick Start includes parameters that you can customize to best meet your business, IT, and security requirements.

  •  Cost and licenses
  • This deployment launches Drupal 7 or Drupal 8 automatically into a configuration of your choice. Drupal is open-source software. It is licensed under GNU GPL version 2. For additional details about Drupal’s licensing, see the Drupal website.

    You are responsible for the cost of the AWS services used while running this Quick Start reference deployment. There is no additional cost for using the Quick Start. See the pricing pages for each AWS service you will be using for cost estimates.

    The AWS CloudFormation templates for this Quick Start include configuration parameters that you can customize. Some of these settings, such as instance type, will affect the cost of deployment. See the pricing pages for each AWS service you will be using for cost estimates.