SlideShare a Scribd company logo
1 of 34
Hernâni Borges de Freitas
@hernanibf / hernani.pt

One Drupal to
Rule them all !
1
About me
•
•
•
•
•

2

.PT
Technical Team Lead PS
Drupal* many things
Twitter.com/hernanibf
Hernani.pt
One Drupal to rule them all
http://buytaert.net/one-drupal-to-rule-them-all

3
This presentation
 The challenge to manage a platform in
Drupal for sites with common business
features.
o Common software / common infrastructure.
o Launch new sites and introduce new features
with minimal downtime allowed per site.
o Share content/user data among sites.

4
First challenge
“In our university we have old sites for
our main departments and projects. We
want to start from scratch and rebuild a
single experience in Drupal. ”
• Similar look and feel.
• Similar backend / architecture / editorial
experience.
• Possible to reuse content / features
5
First question
What are several sites and what is a single
site?

One site == One Drupal site?
Many sites == Many Drupal sites?

6
Options
Single Drupal site
• Same code.
• Same database.
• Contributed modules
will recognize
contexts and create
sections inside the
site.
• Same infrastructure.
7

Many Drupal sites
• Same code (possibly
with some
differences).
• Different databases.
• Same infrastructure /
Different
infrastructure.
What’s the best?
It depends of:
-

-

8

Sites differences.
Shared
properties/info.
Predicted evolution.
Teams responsible
for
build/maintain/admin
.
Single Drupal site
Sections
Public Website
Maths Department

Sports Deparment

9
Single Drupal site
Solution based:
 A single Drupal installation.
 Divided in sections managed by different people.
 Sections can be created using different modules:
 OG
 Context
…

Mostly used for:
 Webs/Intranets with different sections /
departments.
 Sections with different publishing workflow.
10
Single Drupal site
Better fit for:
 Content shared amongst several sites.
 Similar user base / admin workflow.
 Small differences between sites in terms of
functionality.
 Similar look and feel.

Mostly used for:

11

 Webs/Intranets with different sections /
departments.
 Sites with sections with different publishing
workflow.
Single Drupal site
Example: Organic groups (OG)
 Groups define sections/sites.
 Content and users are associated with
groups.
 Users have different roles and permissions
within the group.
 Very good integration with
views, panels, rules
 Good suite of complementary modules
(og_theme, og_menu, workbench_og).
12
Many Drupal sites

Public
Website

Maths
Website

Same codebase

13

Sports
Website
Many Drupal sites
• Multisite installation
• Deployed separately
Solution based:
 Same code base.
 Different site installations (database).

14
Many Drupal Sites - Multisite
Advantages
• One codebase to maintain / update.
• Easier to reuse infrastructure.
• Lower memory utilization (APC).
• Simpler at all levels.
Drawbacks
• Single point of failure.
• Common maintenance windows.
• Harder to maintain differences in code (multiple
versions for same module).
15
Many Drupal sites - Different
codebases
Advantages
• Can be deployed in different locations.
• No single point of failure in infrastructure.
• Easier to support differences.

Drawbacks
• Harder to manage pushes of code to all sites.
• Need for a consistent process to manage updates
of code.
• As there can be more differences, harder to test.
16
Assuming you select the multiple site
route
“Marketing is demanding us to be able to spin up
new sites that are limited in functionality but
require minimal development time”.

“Operations is asking us for a standard
deployment/maintenance process for all of our
sites.

17
Meet the idea of factory of sites

18
Meet the idea of factory of sites
• Single codebase/distribution with enough
modules/features allowing customize sites
without touching code.
• Limited functionality (less is good).
• Easy to spin a new site in few minutes.
• Easy to update sites in the factory without
impacting full network.
• Easy to grow infrastructure by adding server
nodes where different sites are hosted.
19
Solutions working in this space
•
•
•
•

Custom solutions
Aegir – Started in 2007
Drupal Gardens – Launched in 2011
Acquia Cloud Site Factory – Launched in
2013
• Pantheon One – Launched in 2013

20
Custom solutions – All the work from
scratch
• Software (Drupal)
– Custom Drupal distribution with your modules/themes
– Installation profile to configure your new sites.

• Infrastructure
– CM tool to provision new servers in your platform
easily. Similar configuration between servers.
– Several environments ready (Dev->Staging->Prod)

• Management service
– Provision new sites and maintain existing ones.
– Deployment tools to deploy code from a central
location.
21
Custom solutions
Users/Visitors
Platform Admin

Management
Server

Load Balancer

Deploy
process

Apache/PHP
Memcache

Web1

Web2

Half size
Shared Storage

Staging

MySql
Active/Passive

Production

22
Custom solutions
• Everything should be created automatically:

24

– Sites components - Databases, disk directories and
virtual hosts:
– Server configuration - Config management (CM)
tools to provision and configure services
(puppet/chef..)
– Site installation - Drush site-install can install new
(multi)sites.
– Code Deployment - Capistrano / Drush deploy /
Custom scripts
– Management server – Controlling all the sites
(Custom)
Aegir
• Community project to control Drupal
hosting.
• Open source, Self Hosted.
• Hostmaster controls the websites in the
network.
• Aegir is responsible for controlling code
deployment, database creation, vhost
changes.
25
Aegir
Good
• Simple networks / small sites.
• It can be self hosted.
Drawbacks
• Using a Drupal site to manage infrastructure is
tricky.
• Install and configure Aegir is not straightforward.
• Deploy code to several servers is challenging.
• Migrating sites involves copy all the database, files
and code and swap the vhost (Hard to scale for
larger sites).
• Hard to support the concept of several
environments.

29
Drupalgardens.com
• Software as a Service (SaaS). Freely available !
• One distribution (gardens) provides a rich editing
experience (D7).
– Rich field types (Link, Date, Field
Collection), Wysiwyg, Media, Theme
editor, WebForms
– Create content through the Drupal Gardens iPhone
app.

• Multisite installation.
• Hosted in Amazon Web Services (AWS), easy to
grow and allocate more machines to the cluster.
30
Drupalgardens.com
• SSO using OpenId. Accounts controlled in
the gardener site.
• Not possible to add any code.
• No vendor lock-in. Possible to export
code/db/files.
• Pricing depending on features enabled
and bandwith consumed.

31
32
Acquia Cloud Site Factory
• Several distributions are available
(gardens, commons, commerce). New ones
can be created.
• Control Panel (Site Factory) controls all sites
in the network.
• Code is controlled from a GIT repository.
• Two environments are created
(production/sandboxes).
• Sites are created directly in production. Sites
can be cloned in sandbox for testing.
33
Acquia Cloud Site Factory
• SaaS
– Support and SLA on the software. Several
distributions available

• SaaS+
– Support and SLA on the software. Client can add
code audited by us.

• PaaS
– Support on the platform. Client can add any code
to the platform.
34
Acquia Site Factory
• Freedom to customize it to your needs
with your code.
• All features associated with Acquia Cloud
– Scalable with suupport included.
• Powering the largest networks of Drupal
websites in the world.

35
Demo
36
We are hiring!
•
•
•
•

37

Consultants
Support
Sales
Engineering
Questions?
@hernanibf / hernani.pt

38

More Related Content

What's hot

Drupal content editor flexibility
Drupal content editor flexibilityDrupal content editor flexibility
Drupal content editor flexibilityhernanibf
 
My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013hernanibf
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupalsdmaxey
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Angela Byron
 
Anatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress ThemeAnatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress ThemeJulie Kuehl
 
WordPress as a CMS - Case Study of an Organizational Intranet
WordPress as a CMS - Case Study of an Organizational IntranetWordPress as a CMS - Case Study of an Organizational Intranet
WordPress as a CMS - Case Study of an Organizational IntranetTech Liminal
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress UniversityStephanie Leary
 
Drupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content ManagementDrupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content ManagementVibrant Technologies & Computers
 
Drupal - Introduction to Building Library Web Site Using Drupal
Drupal - Introduction to Building Library Web Site Using DrupalDrupal - Introduction to Building Library Web Site Using Drupal
Drupal - Introduction to Building Library Web Site Using DrupalVibrant Technologies & Computers
 
Introduction to Drupal Basics
Introduction to Drupal BasicsIntroduction to Drupal Basics
Introduction to Drupal BasicsJuha Niemi
 
Phase2 Large Drupal Multisites (gta case study)
Phase2   Large Drupal Multisites (gta case study)Phase2   Large Drupal Multisites (gta case study)
Phase2 Large Drupal Multisites (gta case study)Phase2
 
Evolution of Drupal and the Drupal community
Evolution of Drupal and the Drupal communityEvolution of Drupal and the Drupal community
Evolution of Drupal and the Drupal communityAngela Byron
 
Zurb foundation
Zurb foundationZurb foundation
Zurb foundationsean_todd
 
Drupal 8 - A Brief Introduction
Drupal 8 - A Brief IntroductionDrupal 8 - A Brief Introduction
Drupal 8 - A Brief IntroductionJeff Geerling
 
Drupal 7x Installation - Introduction to Drupal Concepts
Drupal 7x Installation - Introduction to Drupal ConceptsDrupal 7x Installation - Introduction to Drupal Concepts
Drupal 7x Installation - Introduction to Drupal ConceptsMicky Metts
 

What's hot (20)

Drupal content editor flexibility
Drupal content editor flexibilityDrupal content editor flexibility
Drupal content editor flexibility
 
My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013My Site is slow - Drupal Camp London 2013
My Site is slow - Drupal Camp London 2013
 
Drupal
DrupalDrupal
Drupal
 
72d5drupal
72d5drupal72d5drupal
72d5drupal
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8
 
Anatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress ThemeAnatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress Theme
 
WordPress as a CMS - Case Study of an Organizational Intranet
WordPress as a CMS - Case Study of an Organizational IntranetWordPress as a CMS - Case Study of an Organizational Intranet
WordPress as a CMS - Case Study of an Organizational Intranet
 
Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress University
 
Drupal 7
Drupal 7Drupal 7
Drupal 7
 
Drupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content ManagementDrupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content Management
 
Drupal - Introduction to Building Library Web Site Using Drupal
Drupal - Introduction to Building Library Web Site Using DrupalDrupal - Introduction to Building Library Web Site Using Drupal
Drupal - Introduction to Building Library Web Site Using Drupal
 
Introduction to Drupal Basics
Introduction to Drupal BasicsIntroduction to Drupal Basics
Introduction to Drupal Basics
 
Phase2 Large Drupal Multisites (gta case study)
Phase2   Large Drupal Multisites (gta case study)Phase2   Large Drupal Multisites (gta case study)
Phase2 Large Drupal Multisites (gta case study)
 
Evolution of Drupal and the Drupal community
Evolution of Drupal and the Drupal communityEvolution of Drupal and the Drupal community
Evolution of Drupal and the Drupal community
 
Zurb foundation
Zurb foundationZurb foundation
Zurb foundation
 
Drupal 8 - A Brief Introduction
Drupal 8 - A Brief IntroductionDrupal 8 - A Brief Introduction
Drupal 8 - A Brief Introduction
 
Drupal 7x Installation - Introduction to Drupal Concepts
Drupal 7x Installation - Introduction to Drupal ConceptsDrupal 7x Installation - Introduction to Drupal Concepts
Drupal 7x Installation - Introduction to Drupal Concepts
 
Drupal -Introduction to Drupal
Drupal -Introduction to DrupalDrupal -Introduction to Drupal
Drupal -Introduction to Drupal
 

Viewers also liked

Drupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case StudyDrupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case Studyhernanibf
 
Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015Alberto Permuy Leal
 
Drupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidadesDrupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidadesAlberto Permuy Leal
 
A Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.galA Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.galAlberto Permuy Leal
 
Acquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTOAcquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTOAngela Byron
 
El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8Ymbra
 
Drupal Developer Days Keynote
Drupal Developer Days KeynoteDrupal Developer Days Keynote
Drupal Developer Days KeynoteAngela Byron
 

Viewers also liked (7)

Drupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case StudyDrupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case Study
 
Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015
 
Drupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidadesDrupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidades
 
A Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.galA Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.gal
 
Acquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTOAcquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTO
 
El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8
 
Drupal Developer Days Keynote
Drupal Developer Days KeynoteDrupal Developer Days Keynote
Drupal Developer Days Keynote
 

Similar to One Drupal to rule them all - Drupalcamp London

Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalRod Martin
 
Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Robert Bates
 
Drupal: an Overview
Drupal: an OverviewDrupal: an Overview
Drupal: an OverviewMatt Weaver
 
Deployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and ConfigurationsDeployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and Configurationsnyccamp
 
Drupal Overview For Techies
Drupal Overview For TechiesDrupal Overview For Techies
Drupal Overview For TechiesRobert Carr
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Acquia
 
Staging Drupal 8 31 09 1 3
Staging Drupal 8 31 09 1 3Staging Drupal 8 31 09 1 3
Staging Drupal 8 31 09 1 3Drupalcon Paris
 
Undine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsUndine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsDavid Watson
 
XPages: No Experience Needed
XPages: No Experience NeededXPages: No Experience Needed
XPages: No Experience NeededKathy Brown
 
Open Source Content Management Systems
Open Source Content Management SystemsOpen Source Content Management Systems
Open Source Content Management SystemsMatthew Turland
 
Drupal case study: Behind the scenes of website of University of Tartu
Drupal case study: Behind the scenes of website of University of TartuDrupal case study: Behind the scenes of website of University of Tartu
Drupal case study: Behind the scenes of website of University of TartuRené Lasseron
 
Web Tools for GemStone/S
Web Tools for GemStone/SWeb Tools for GemStone/S
Web Tools for GemStone/SESUG
 
Drupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 versionDrupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 versionDavid Lanier
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchHoward Greenberg
 
Drupal Multi-Site Setup
Drupal Multi-Site SetupDrupal Multi-Site Setup
Drupal Multi-Site Setupylynfatt
 
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your WebsiteAcquia
 
Oracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version ControlOracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version ControlChris Muir
 

Similar to One Drupal to rule them all - Drupalcamp London (20)

Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to Drupal
 
Drupal in-depth
Drupal in-depthDrupal in-depth
Drupal in-depth
 
Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)
 
Drupal at the EBI
Drupal at the EBIDrupal at the EBI
Drupal at the EBI
 
Drupal: an Overview
Drupal: an OverviewDrupal: an Overview
Drupal: an Overview
 
Deployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and ConfigurationsDeployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and Configurations
 
Drupal Overview For Techies
Drupal Overview For TechiesDrupal Overview For Techies
Drupal Overview For Techies
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8
 
Staging Drupal 8 31 09 1 3
Staging Drupal 8 31 09 1 3Staging Drupal 8 31 09 1 3
Staging Drupal 8 31 09 1 3
 
Undine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsUndine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development Environments
 
DOC Presentation by DOC Contractor Alison McCauley
DOC Presentation by DOC Contractor Alison McCauleyDOC Presentation by DOC Contractor Alison McCauley
DOC Presentation by DOC Contractor Alison McCauley
 
XPages: No Experience Needed
XPages: No Experience NeededXPages: No Experience Needed
XPages: No Experience Needed
 
Open Source Content Management Systems
Open Source Content Management SystemsOpen Source Content Management Systems
Open Source Content Management Systems
 
Drupal case study: Behind the scenes of website of University of Tartu
Drupal case study: Behind the scenes of website of University of TartuDrupal case study: Behind the scenes of website of University of Tartu
Drupal case study: Behind the scenes of website of University of Tartu
 
Web Tools for GemStone/S
Web Tools for GemStone/SWeb Tools for GemStone/S
Web Tools for GemStone/S
 
Drupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 versionDrupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 version
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
 
Drupal Multi-Site Setup
Drupal Multi-Site SetupDrupal Multi-Site Setup
Drupal Multi-Site Setup
 
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your Website
 
Oracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version ControlOracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version Control
 

Recently uploaded

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Recently uploaded (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

One Drupal to rule them all - Drupalcamp London

  • 1. Hernâni Borges de Freitas @hernanibf / hernani.pt One Drupal to Rule them all ! 1
  • 2. About me • • • • • 2 .PT Technical Team Lead PS Drupal* many things Twitter.com/hernanibf Hernani.pt
  • 3. One Drupal to rule them all http://buytaert.net/one-drupal-to-rule-them-all 3
  • 4. This presentation  The challenge to manage a platform in Drupal for sites with common business features. o Common software / common infrastructure. o Launch new sites and introduce new features with minimal downtime allowed per site. o Share content/user data among sites. 4
  • 5. First challenge “In our university we have old sites for our main departments and projects. We want to start from scratch and rebuild a single experience in Drupal. ” • Similar look and feel. • Similar backend / architecture / editorial experience. • Possible to reuse content / features 5
  • 6. First question What are several sites and what is a single site? One site == One Drupal site? Many sites == Many Drupal sites? 6
  • 7. Options Single Drupal site • Same code. • Same database. • Contributed modules will recognize contexts and create sections inside the site. • Same infrastructure. 7 Many Drupal sites • Same code (possibly with some differences). • Different databases. • Same infrastructure / Different infrastructure.
  • 8. What’s the best? It depends of: - - 8 Sites differences. Shared properties/info. Predicted evolution. Teams responsible for build/maintain/admin .
  • 9. Single Drupal site Sections Public Website Maths Department Sports Deparment 9
  • 10. Single Drupal site Solution based:  A single Drupal installation.  Divided in sections managed by different people.  Sections can be created using different modules:  OG  Context … Mostly used for:  Webs/Intranets with different sections / departments.  Sections with different publishing workflow. 10
  • 11. Single Drupal site Better fit for:  Content shared amongst several sites.  Similar user base / admin workflow.  Small differences between sites in terms of functionality.  Similar look and feel. Mostly used for: 11  Webs/Intranets with different sections / departments.  Sites with sections with different publishing workflow.
  • 12. Single Drupal site Example: Organic groups (OG)  Groups define sections/sites.  Content and users are associated with groups.  Users have different roles and permissions within the group.  Very good integration with views, panels, rules  Good suite of complementary modules (og_theme, og_menu, workbench_og). 12
  • 14. Many Drupal sites • Multisite installation • Deployed separately Solution based:  Same code base.  Different site installations (database). 14
  • 15. Many Drupal Sites - Multisite Advantages • One codebase to maintain / update. • Easier to reuse infrastructure. • Lower memory utilization (APC). • Simpler at all levels. Drawbacks • Single point of failure. • Common maintenance windows. • Harder to maintain differences in code (multiple versions for same module). 15
  • 16. Many Drupal sites - Different codebases Advantages • Can be deployed in different locations. • No single point of failure in infrastructure. • Easier to support differences. Drawbacks • Harder to manage pushes of code to all sites. • Need for a consistent process to manage updates of code. • As there can be more differences, harder to test. 16
  • 17. Assuming you select the multiple site route “Marketing is demanding us to be able to spin up new sites that are limited in functionality but require minimal development time”. “Operations is asking us for a standard deployment/maintenance process for all of our sites. 17
  • 18. Meet the idea of factory of sites 18
  • 19. Meet the idea of factory of sites • Single codebase/distribution with enough modules/features allowing customize sites without touching code. • Limited functionality (less is good). • Easy to spin a new site in few minutes. • Easy to update sites in the factory without impacting full network. • Easy to grow infrastructure by adding server nodes where different sites are hosted. 19
  • 20. Solutions working in this space • • • • Custom solutions Aegir – Started in 2007 Drupal Gardens – Launched in 2011 Acquia Cloud Site Factory – Launched in 2013 • Pantheon One – Launched in 2013 20
  • 21. Custom solutions – All the work from scratch • Software (Drupal) – Custom Drupal distribution with your modules/themes – Installation profile to configure your new sites. • Infrastructure – CM tool to provision new servers in your platform easily. Similar configuration between servers. – Several environments ready (Dev->Staging->Prod) • Management service – Provision new sites and maintain existing ones. – Deployment tools to deploy code from a central location. 21
  • 22. Custom solutions Users/Visitors Platform Admin Management Server Load Balancer Deploy process Apache/PHP Memcache Web1 Web2 Half size Shared Storage Staging MySql Active/Passive Production 22
  • 23. Custom solutions • Everything should be created automatically: 24 – Sites components - Databases, disk directories and virtual hosts: – Server configuration - Config management (CM) tools to provision and configure services (puppet/chef..) – Site installation - Drush site-install can install new (multi)sites. – Code Deployment - Capistrano / Drush deploy / Custom scripts – Management server – Controlling all the sites (Custom)
  • 24. Aegir • Community project to control Drupal hosting. • Open source, Self Hosted. • Hostmaster controls the websites in the network. • Aegir is responsible for controlling code deployment, database creation, vhost changes. 25
  • 25. Aegir Good • Simple networks / small sites. • It can be self hosted. Drawbacks • Using a Drupal site to manage infrastructure is tricky. • Install and configure Aegir is not straightforward. • Deploy code to several servers is challenging. • Migrating sites involves copy all the database, files and code and swap the vhost (Hard to scale for larger sites). • Hard to support the concept of several environments. 29
  • 26. Drupalgardens.com • Software as a Service (SaaS). Freely available ! • One distribution (gardens) provides a rich editing experience (D7). – Rich field types (Link, Date, Field Collection), Wysiwyg, Media, Theme editor, WebForms – Create content through the Drupal Gardens iPhone app. • Multisite installation. • Hosted in Amazon Web Services (AWS), easy to grow and allocate more machines to the cluster. 30
  • 27. Drupalgardens.com • SSO using OpenId. Accounts controlled in the gardener site. • Not possible to add any code. • No vendor lock-in. Possible to export code/db/files. • Pricing depending on features enabled and bandwith consumed. 31
  • 28. 32
  • 29. Acquia Cloud Site Factory • Several distributions are available (gardens, commons, commerce). New ones can be created. • Control Panel (Site Factory) controls all sites in the network. • Code is controlled from a GIT repository. • Two environments are created (production/sandboxes). • Sites are created directly in production. Sites can be cloned in sandbox for testing. 33
  • 30. Acquia Cloud Site Factory • SaaS – Support and SLA on the software. Several distributions available • SaaS+ – Support and SLA on the software. Client can add code audited by us. • PaaS – Support on the platform. Client can add any code to the platform. 34
  • 31. Acquia Site Factory • Freedom to customize it to your needs with your code. • All features associated with Acquia Cloud – Scalable with suupport included. • Powering the largest networks of Drupal websites in the world. 35

Editor's Notes

  1. Drush site aliases in both sites