hosting drupal sites? you need - colan.consulting · aegir api speaker information ‣ colan...

21
Hosting Drupal sites? You need Colan Schwartz & Christopher Gervais @ DrupalNorth 2018-08-11 Licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) Hosting Drupal sites? You need Colan Schwartz & Christopher Gervais @ DrupalNorth 2018-08-11 Licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

Upload: others

Post on 02-Sep-2019

1 views

Category:

Documents


0 download

TRANSCRIPT

Hosting Drupal sites? You need

Colan Schwartz & Christopher Gervais@

DrupalNorth 2018-08-11

Licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

Hosting Drupal sites? You need

Colan Schwartz & Christopher Gervais@

DrupalNorth 2018-08-11

Licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

AEGIR API

Speaker Information

‣ Colan Schwartz‣ Core Maintainer of Aegir‣ colan on drupal.org (12 yrs)‣ colan.consulting‣ Enterprise Cloud Architect‣ Independent Contractor‣ Aegir/SaaS/PaaS/IaaS‣ Start-ups, Government, etc.‣ Small site builds

‣ Christopher Gervais‣ Aegir Project Lead‣ ergonlogic on drupal.org‣ DevOps/Aegir/Cloud Eng.

HISTORY & COMMUNITY

‣ Started in 20061. Bryght / Raincity Studios2. Development Seed3. Koumbit4. Now : Disparate core team

‣ Community‣ 6 core maintainers‣ 20+ contributors‣ 500+ installations

History

Values:Share best practicesTools not policyKeep the software stack free (libre)

OTHER CAPABILITIES

‣ National Democratic Institute‣ NASA‣ CiviCRM‣ European Commission

Who’s using it?

ARCHITECTURE

‣ http://docs.aegirproject.org/en/3.x/

‣ Front-end:‣ Hostmaster (profile)‣ Hosting (modules)‣ Eldir (theme)

‣ Back-end:‣ Provision (Drush)

Architectural Components & Installation

InstallationSee Install GuideOptions :Debian packageDockerManual

CORE CONCEPTS

‣ Servers (services)‣ Platforms (code-base)‣ Sites (config & state)‣ Tasks & queues

Entities

BUILDING PLATFORMS

‣ Custom code-bases manage updates to one or hundreds of sites at a time.‣ Drush Make‣ Git‣ Manual‣ Composer

● Core functionality● Extras : Aegir Deploy

Deployment Strategies

MANAGING SITES

‣ Creates site directory‣ Provisions database‣ Writes:

‣ settings.php‣ drushrc.php‣ vhost

‣ Restarts web server

Site Installation

MANAGING SITES (CONT’D)

‣ Migration (updates)‣ Creates a backup‣ Deploys new site from

backup‣ Re-writes file paths in

database‣ Runs update.php‣ Re-writes vhost

Site/Platform Migration

Notable featuresRollback on failurePlatform migrationAll sites on a platform !

CLUSTERING SERVERS

‣ High-performance and highly-available sites.‣ Web cluster (rsync, S3)‣ Web pack (NFS)

‣ Load-balancing & reverse-proxy/cache are currently managed externally.

‣ Site auditing, monitoring, and reporting

Infrastructure Tools

WORKFLOWS

‣ Automating workflows across development, testing, staging and production environments.‣ Remote site importing‣ DevShop‣ BOA/Octopus‣ Custom workflows via

convention and/or Aegir API

DevOps

AEGIR API

‣ Just like Drupal core‣ Leverage the Aegir API to

customize workflows and deploy custom configuration to sites and web servers.

‣ Examples● Inject custom vhost config● Run code after site creation● Etc.

Hook System

HISTORY & COMMUNITY

‣ Aegir 3 is stable, but soon :

‣ Aegir 4● Long-term global Drush● Jon Pugh● Drush → Symfony● Keeps original front-end● Medium-term solution until…

‣ Aegir 5● Complete rewrite● Chris Gervais (ergonlogic)● Drupal 8 front-end● Drush → Ansible / K8s● Celery (task queue)● Can host anything !● Architecture doc

Future

Thanks! Questions?

Colan Schwartz & Christopher Gervais@

DrupalCamp Montreal, 2018-06-15

Licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

www.aegirproject.org

Thanks! Questions?

Colan Schwartz & Christopher Gervais@

DrupalCamp Montreal, 2018-06-15

Licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

www.aegirproject.org