Skip to content

Drupal Hosting

Stavros Kounis edited this page Jan 27, 2020 · 6 revisions

DIGIT D1 provides the full technological stack necessary for running a High-Availability Drupal site.

The stack is comprised of:

  • Web Caching and Load Balancing Layer - Varnish ( Mandatory )
  • Web Layer - PHP enabled web server running on Apache/NGNIX and PHP-FPM ( Mandatory )
  • DB Caching Layer - REDIS ( Optional )
  • Database Layer - Multinode Mysql Cluster running on PerconaDB Cluster ( Mandatory )
  • Web Search Layer - SOLR ( Optional )
  • Network File Storage ( Mandatory )
  • The hosting solution can be provided by the EC Data Center or by a Public Cloud Provider (AWS).

IMPORTANT: Hosting in the Data Center is provided as a standard service, and hosting in the Cloud is provided as an all-inclusive service (i.e., including security control, etc.).

Depending on the selected hosting solution different constrains and technologies apply. This will be discussed during the on-boarding process in order to propose the best hosting solution.

Definition

Drupal is a free and open-source content management framework written in PHP and distributed under the GNU General Public License. Drupal provides a back-end framework for at least 2.3% of all web sites worldwide – ranging from personal blogs to corporate, political, and government sites. Systems also use Drupal for knowledge management and for business collaboration. (source Wikipedia)

The hosting solution for a Drupal site is described in the Technology section.

Who is it for?

This service is available for all European Commission DGs and Agencies, as well as any EU Bodies that already have a Drupal site, or want to build one.

Contact

For a new Drupal hosting service request, please feel free to contact us.

We will endeavor to provide the complete Drupal hosting solution between 1 and 3 months from receipt of request. In the process, we will:

  1. Assign a Service Manager to assist you with on-boarding.
  2. Schedule workshops to help you get up to speed.
  3. Provide guidance to ensure Toolkit alignment.
  4. Support you with code changes, if needed.
  5. Activate the actual IS environments.

Technology

DIGIT D1 provides the full technological stack necessary for running a High-Availability Drupal site.

The stack is comprised of:

  1. Web Caching and Load Balancing Layer - Varnish ( Mandatory )
  2. Web Layer - PHP enabled web server running on Apache/NGNIX and PHP-FPM ( Mandatory )
  3. DB Caching Layer - REDIS ( Optional )
  4. Database Layer - Multinode Mysql Cluster running on PerconaDB Cluster ( Mandatory )
  5. Web Search Layer - SOLR ( Optional )
  6. Network File Storage ( Mandatory )

The hosting solution can be provided by the EC Data Center or by a Public Cloud Provider (AWS).

IMPORTANT: Hosting in the Data Center is provided as a standard service, and hosting in the Cloud is provided as an all-inclusive service (i.e., including security control, etc.).

Depending on the selected hosting solution different constrains and technologies apply. This will be discussed during the on-boarding process in order to propose the best hosting solution.

NOTE: Because of other services dependencies/constrains hosted in EC Data Center some Drupal Sites can't be hosted in a Public Cloud. See below examples of working/not working DC services from the internet

  • EC DC Services accessible from the Internet - Public Cloud
    • EU Login
    • Poetry - Pilot testing phase
    • ePoetry when new version will be released
    • eTranslation
  • EC DC Services not accessible from the Internet - Public Cloud
    • LDAP

Hosting diagram in EC Data Center

Data Center

For an infrastructure hosted in EC Data Center the number of Web Nodes and Db Nodes are fixed and agreed in order to provide a High Available Infrastructure and best performance, with minimal number of 2 web nodes and 3 DB nodes in order to ensure proper HA.

Hosting diagram in AWS

AWS

For an infrastructure hosted in a Public Cloud Provider ( AWS ) the Web Layer can scale dynamically, if the Drupal application is configured as stateless. DB Layer , DB Cache Layer and Network File Storage will use Cloud Native services which are provided by AWS as well.

For infrastructure DIGIT D1 provides a managed WAF ( Web Application Firewall ) as an extra layer of protection for different types of attacks.

For static media files ( ex: pictures, movies, documents ) DIGIT D1 provides a managed cloud native CDN ( Content Delivery Network )

Environments

DIGIT D1 offers the following environments for Drupal hosting:

  • Production (P)
  • Acceptance (A)
  • Demo (D)

By default Production and Acceptance environments will be created automatically.

Demo environments are ephemeral (limited in time) and are created/deployed/destroyed by the CI/CD automation.

If a Development (DEV) environment is needed, it can be requested as a Cloud9 Package provided by DIGIT - a service for Drupal developers.

Stress (ST) and/or a Security (SE) environments can also be provided on demand.

Continuous Integration / Continuous Deployment (CI/CD)

DIGIT D1 provides a CI/CD pipeline for the automatic testing of code and deployment to all environments. All code is stored on GitHub and each project receives a private space.

In order to benefit of the CI/CD as part of the standard service for Drupal Hosting, the following aspects must be considered:

  1. As a prerequisite, the code must be aligned with a set of tools called Toolkit ( CI/CD Workflow#Integration with toolkit).
  2. Alignment of code with Toolkit is part of the on-boarding process, managed by a dedicated DIGIT.D1 team.
  3. Security updates for both Drupal core and contributed modules are managed through the Drupal Vulnerability Management process by the dedicated Task Force. As part of this process each vulnerability is evaluated and based on the risk/impact combination the developers will receive clear indications on expected delivery of fixes. Delays in this delivery as well as fixes for highly risk/impact vulnerabilities are applied directly by DIGIT.D1. Drupal Vulnerability Management