Using a Content Delivery Network with Acquia Cloud

Content delivery networks

Any website that receives more than a little traffic is a potential candidate for a Content Delivery Network (CDN). A CDN can help with website performance and uptime, and can help prevent outages due to attacks like a Distributed Denial of Service (DDoS). CDN services can be used with either Acquia Cloud or Acquia Cloud Enterprise services.

CDNs operate in one of two modes: push or pull. Whoishostingthis? has a short article on How to Choose the Right CDN For Your Website that can help you figure out which one is better for your website.

Benefits of a CDN

A CDN can be an important investment in your website infrastructure. For large websites with many users, it can be downright critical to site performance and uptime. It can also help ensure the origin server's safety and continued accessibility. The W3C organization defines an origin server as the server on which a given resource resides or is to be created. This upstream server sits at the top of the hierarchy of servers that provide web content and assets and is actively maintained.

Response time

Using a CDN can help improve your website's response time for global users. Websites partnering with a CDN may have cached copies of their data distributed on distant servers, enabling very remote users to access the site from a local distribution point instead of one that could be across the country or on another continent.

Performance

Because a CDN is distributed and keeps a significant portion of the site's data cached, it's not necessary to get new data from the origin server all the time. This means fewer requests to your origin machine. Fewer requests means that there's more processing time for things that aren't static, like breaking news or transaction-based functions like a shopping cart.

Protection

DDoS attacks, SQL injection attempts, and many other forms of malicious behavior can take out a site with little to no warning. CDN services can provide protection by preventing these attacks from ever reaching the origin server. This can be done by preventing any traffic but the CDN provider from reaching the server, filtering out attacks, or other methods.

How to get a CDN

To use a CDN, you'll need two things: a way to configure Drupal to use one, and a provider. When choosing a CDN, it's important to consider a number of things: cost, support, the way it integrates into your current setup, and more. Acquia can help by providing site information and suggestions. Acquia Cloud Enterprise websites can use Acquia Cloud Edge CDN.

Modules

One module that customers have successfully used in the past is the CDN module. There is an excellent blog post from the CDN module's author, Wim Leers, which can be viewed in his post Easy Drupal CDN integration for fun and profit. There are other modules on Drupal.org as well.

Providers

Acquia Cloud Enterprise websites can use Acquia Cloud Edge CDN. For Acquia Cloud Professional websites, one available provider is Yottaa. They're an Acquia partner, and you can get additional information regarding them. You can also view a Yottaa webinar from June 2013.

For customers using third-party CDNs such as Akamai or CDNetworks, it's very important that you confirm that your CDN's "origin server" configuration setting matches the public IP address listed in your Acquia configuration. For more information, see Configuring your Acquia Cloud sites to use Akamai.

Acquia Cloud can act as the origin server for use with origin pull providers like Akamai services. In this scenario the origin server is a web server maintained by an Akamai customer for publishing content. If sites wish to implement SSL on an Akamai/Acquia Cloud setup, two certificates will be needed. One certificate must be provisioned through Akamai and the second through Acquia, with other options available with coordination with Acquia teams.

Fastly is another CDN that can be configured to work with Drupal. See Brain Dump - Drupal and Fastly at Ignored by Dinosaurs for some good information on the two together.

Amazon S3 with Amazon Cloudfront is another provider which can act as a CDN if they are working in concert.

Basic CDN configuration information

Acquia does not have visibility into customer CDN configurations and can neither detect nor confirm if your CDN configuration is correct. You must check your CDN configuration to confirm that it matches your Acquia Cloud Enterprise or Acquia Cloud configuration.

Contact Acquia Support well in advance of deploying such a configuration for assistance with the necessary steps.

To obtain your Acquia Cloud Enterprise or Acquia Cloud public IP address:

  1. Sign in to Acquia.
  2. Navigate to the Cloud > Domains page, and then note the Public IP Address.

Next, confirm that your third-party CDN configuration is using the Acquia Cloud Enterprise Public IP address as the "origin server" for your CDN configuration. You might need to either contact your CDN provider for confirmation, or the self-service web interface might be available to you for doing so. If the IP address at your CDN provider is different than the one listed on the Acquia page, update your CDN configuration so that they match.

If the Acquia Cloud Enterprise or Acquia Cloud and third-party CDN IP values match, the site should be stable.

Contact supportStill need assistance? Contact Acquia Support