SlideShare a Scribd company logo
1 of 39
Download to read offline
One Drupal to
Rule them all !
Hernâni Borges de Freitas
@hernanibf / hernani.pt
About me!
• 
• 
• 
• 
• 
• 

2

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

3
One Drupal to rule them all!
“My organization wants to standardize in
Drupal and use it to replace all the sites in
our network”:

- 
- 

They can be managed by different people
but we saw them as a unique platform.

- 
4

They have different look and feel.

They can share some common sections or
content.
This presentation!
•  Manage a network of Drupal sites with same
features / properties.
•  Launch new sites and introduce new features.
•  Minimal downtime allowed per site.
•  Share data among sites (content/user login)
•  Grow their infrastructure in number of nodes /
number of clusters.
•  Common software / common infrastructure.
5
First challenge!
What are several sites and what is one site?
•  A site for maths department, another for physics,
another for literature, another for computer
science. All with same look and feel.
•  Sites need to show news from all of those sites.
•  Admins should just edit those sites from one
place.
•  One site => One Drupal site?
•  Many sites => Many Drupal sites?
6
Options!
All sites in one Drupal
site
•  Same code.
•  Same database.
•  Contributed modules
will recognize contexts
and create sections
inside the site.
•  Same infrastructure.
7

All sites in different
Drupal sites
•  Same code (with some
differences).
•  Different databases.
•  Same infrastructure /
Different infrastructure.
What’s the best?!
Traditional consultant answer:
It depends!

8

-  Sites’ differences.
-  Shared properties/
info.
-  Predicted evolution.
-  Teams responsible
for build/maintain/
admin.
One Drupal site!
Better fit for:

§  Content present in several sites.
§  Similar look and feel.
§  Similar user base / admin workflow.
§  Small differences between sites in terms of
functionality,

Mostly used for: 
§  Webs/Intranets with different sections /
departments.
§  Sections with different publishing workflow.
9
One Drupal site!
Organic groups
§  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, og_workbench,
og_workflow).
10
One Drupal site!
Other options
•  Domain access module
•  Access control modules
•  Others…

11
One Drupal site!
Advantages
•  Easier to create a unique experience of one
single site/platform.
•  Easier to share content.
•  Easier to share users / roles / permissions.

12
One Drupal site!
Drawbacks
•  Everything gets a bit more complicated.
•  Codebase and structures are usually larger
(more views/blocks/content types/panels
for the different sections).
•  Single point of failure.
•  Harder to decouple in the future.

13
Many Drupal sites!
•  Multisites
•  Different codebases
In either case they always have
•  A common base
–  Common Drupal distribution (Features + Install
Profile).
–  Common infrastructure.
14
Many Drupal Sites - Multisites!
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.
Bad!
•  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
Standards!
“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 cluster
of nodes where different sites are hosted.
19
Solutions working in this space!
• 
• 
• 
• 
• 

20

Drupal Gardens
Acquia Cloud Site Factory 
Pantheon One
Aegir
Custom solutions
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.

21
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.

22
23
Acquia Cloud Site Factory!
•  Several distributions are available (gardens,
commons, commerce). New ones can be
created.
•  Control Panel (Gardener) 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.

24
Acquia 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.
25
Acquia Site Factory!
•  Powering the largest network of Drupal
websites in the world.
•  Scalable.
•  Support included.
•  Best of Gardens + Acquia Cloud.

26
Demo
27
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
change.
28
Aegir!
•  Platforms have a code base and will host
several sites.
•  Platforms are associated with a a docroot
(can be defined using drush make files).

29
Aegir platforms!

30
Aegir - Sites!

31
Aegir - Migrations!

32
Aegir !
Good!
•  Simple networks / simple sites.
•  It can be self hosted.
Drawbacks!
•  Using a Drupal to manage infrastructure might be tricky.
•  Install and configure Aegir is not straightforward.
•  Deploy code to several servers is challenging.
•  Update sites involves migrating them from platform to
platform.
•  Migrating sites involves copy all the database, files and
code and swap the vhost (Hard to scale for larger sites).
•  Harder to support the concept of several environments.
33
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

34
Custom solutions!
•  Management server
–  Access to all hosts in the infrastructure via
SSH.
–  Database of sites.
–  Issuing commands in all sites
•  Drush
•  Drush site alias

–  Move databases/files directories between
environments (drush sql-sync, drush rsync).
35
Custom solutions!
•  Everything should be created automatically:

–  Databases, disk directories and virtual hosts: 
–  Config management (CM) tools / custom scripts.
–  Drush site-install can install new (multi)sites.

•  Deploy code to the servers 
–  Capistrano
–  Drush deploy
–  Custom scripts

•  Graphic interface to view all the sites and their
properties (custom development) and manage
jobs (Jenkins?).
36
Custom solutions!
•  Infrastructure
–  Easily launch new nodes to the infrastructure to
support production and pre-production
environments and configure them automatically
(CM Tools).

37
We are hiring!
•  Consultants 
•  Support
•  Sales
•  Engineering


38
Questions?
@hernanibf	
  /	
  hernani.pt	
  

39

More Related Content

What's hot

Oxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your websiteOxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your website
hernanibf
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with WakandaBenefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
Alexandre Morgaut
 
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
Tech Liminal
 

What's hot (20)

Oxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your websiteOxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your website
 
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
 
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)
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8
 
Drupal
DrupalDrupal
Drupal
 
Containerdays Intro to Habitat
Containerdays Intro to HabitatContainerdays Intro to Habitat
Containerdays Intro to Habitat
 
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
 
Drupal 8 - A Brief Introduction
Drupal 8 - A Brief IntroductionDrupal 8 - A Brief Introduction
Drupal 8 - A Brief Introduction
 
Firebird meets NoSQL
Firebird meets NoSQLFirebird meets NoSQL
Firebird meets NoSQL
 
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
 
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
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable application
 
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
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with WakandaBenefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
 
Drupal 7
Drupal 7Drupal 7
Drupal 7
 
Introduction to the Drupal - Web Experience Toolkit
Introduction to the Drupal - Web Experience ToolkitIntroduction to the Drupal - Web Experience Toolkit
Introduction to the Drupal - Web Experience Toolkit
 
Upgrading to Drupal 7
Upgrading to Drupal 7Upgrading to Drupal 7
Upgrading to Drupal 7
 
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
 
IBM Connections Adminblast - Soccnx 12 Edition
IBM Connections Adminblast - Soccnx 12 EditionIBM Connections Adminblast - Soccnx 12 Edition
IBM Connections Adminblast - Soccnx 12 Edition
 
Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014
 

Similar to One drupal to rule them all - Drupalcamp Caceres

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
 
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
Acquia
 
Drupal status report for all staff day
Drupal status report for all staff dayDrupal status report for all staff day
Drupal status report for all staff day
sbclapp
 

Similar to One drupal to rule them all - Drupalcamp Caceres (20)

Drupal at the EBI
Drupal at the EBIDrupal at the EBI
Drupal at the EBI
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
 
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 in-depth
Drupal in-depthDrupal in-depth
Drupal in-depth
 
Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to Drupal
 
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
 
How Not to Be Conned by Your Drupal Vendor!
How Not to Be Conned by Your Drupal Vendor!How Not to Be Conned by Your Drupal Vendor!
How Not to Be Conned by Your Drupal Vendor!
 
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
 
Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs
 
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
 
72d5drupal
72d5drupal72d5drupal
72d5drupal
 
Drupal status report for all staff day
Drupal status report for all staff dayDrupal status report for all staff day
Drupal status report for all staff day
 
DrupalCon Austin - Absolute Beginner's Guide to Drupal
DrupalCon Austin - Absolute Beginner's Guide to DrupalDrupalCon Austin - Absolute Beginner's Guide to Drupal
DrupalCon Austin - Absolute Beginner's Guide to Drupal
 
Drupal: an Overview
Drupal: an OverviewDrupal: an Overview
Drupal: an Overview
 
WCM-9 WCM Solutions with Drupal and Alfresco
WCM-9 WCM Solutions with Drupal and AlfrescoWCM-9 WCM Solutions with Drupal and Alfresco
WCM-9 WCM Solutions with Drupal and Alfresco
 
Drupal In 1 Hour
Drupal In 1 HourDrupal In 1 Hour
Drupal In 1 Hour
 
Introduction to drupal
 Introduction to drupal Introduction to drupal
Introduction to drupal
 
Alfresco Day Stockholm 2015 - Rapid UI Development
Alfresco Day Stockholm 2015 - Rapid UI DevelopmentAlfresco Day Stockholm 2015 - Rapid UI Development
Alfresco Day Stockholm 2015 - Rapid UI Development
 
Making Multisite Work for You
Making Multisite Work for YouMaking Multisite Work for You
Making Multisite Work for You
 
Drupal -Introduction to Drupal
Drupal -Introduction to DrupalDrupal -Introduction to Drupal
Drupal -Introduction to Drupal
 

More from hernanibf

Fix me if you can - DrupalCon prague
Fix me if you can - DrupalCon pragueFix me if you can - DrupalCon prague
Fix me if you can - DrupalCon prague
hernanibf
 
Drupal + selenium
Drupal + seleniumDrupal + selenium
Drupal + selenium
hernanibf
 

More from hernanibf (7)

Drupal Europe 2018: Hackers automate but the drupal community still downloads...
Drupal Europe 2018: Hackers automate but the drupal community still downloads...Drupal Europe 2018: Hackers automate but the drupal community still downloads...
Drupal Europe 2018: Hackers automate but the drupal community still downloads...
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
 
Fix me if you can - DrupalCon prague
Fix me if you can - DrupalCon pragueFix me if you can - DrupalCon prague
Fix me if you can - DrupalCon prague
 
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 Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case StudyDrupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case Study
 
Drupal + selenium
Drupal + seleniumDrupal + selenium
Drupal + selenium
 
Drupal Recipe
Drupal RecipeDrupal Recipe
Drupal Recipe
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

One drupal to rule them all - Drupalcamp Caceres

  • 1. One Drupal to Rule them all ! Hernâni Borges de Freitas @hernanibf / hernani.pt
  • 2. About me! •  •  •  •  •  •  2 .PT     Technical  Team  Lead  PS   Drupal*  many  things   Travel  lover   Twitter.com/hernanibf   Hernani.pt  
  • 3. One Drupal to rule them all! http://buytaert.net/one-drupal-to-rule-them-all 3
  • 4. One Drupal to rule them all! “My organization wants to standardize in Drupal and use it to replace all the sites in our network”: -  -  They can be managed by different people but we saw them as a unique platform. -  4 They have different look and feel. They can share some common sections or content.
  • 5. This presentation! •  Manage a network of Drupal sites with same features / properties. •  Launch new sites and introduce new features. •  Minimal downtime allowed per site. •  Share data among sites (content/user login) •  Grow their infrastructure in number of nodes / number of clusters. •  Common software / common infrastructure. 5
  • 6. First challenge! What are several sites and what is one site? •  A site for maths department, another for physics, another for literature, another for computer science. All with same look and feel. •  Sites need to show news from all of those sites. •  Admins should just edit those sites from one place. •  One site => One Drupal site? •  Many sites => Many Drupal sites? 6
  • 7. Options! All sites in one Drupal site •  Same code. •  Same database. •  Contributed modules will recognize contexts and create sections inside the site. •  Same infrastructure. 7 All sites in different Drupal sites •  Same code (with some differences). •  Different databases. •  Same infrastructure / Different infrastructure.
  • 8. What’s the best?! Traditional consultant answer: It depends! 8 -  Sites’ differences. -  Shared properties/ info. -  Predicted evolution. -  Teams responsible for build/maintain/ admin.
  • 9. One Drupal site! Better fit for: §  Content present in several sites. §  Similar look and feel. §  Similar user base / admin workflow. §  Small differences between sites in terms of functionality, Mostly used for: §  Webs/Intranets with different sections / departments. §  Sections with different publishing workflow. 9
  • 10. One Drupal site! Organic groups §  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, og_workbench, og_workflow). 10
  • 11. One Drupal site! Other options •  Domain access module •  Access control modules •  Others… 11
  • 12. One Drupal site! Advantages •  Easier to create a unique experience of one single site/platform. •  Easier to share content. •  Easier to share users / roles / permissions. 12
  • 13. One Drupal site! Drawbacks •  Everything gets a bit more complicated. •  Codebase and structures are usually larger (more views/blocks/content types/panels for the different sections). •  Single point of failure. •  Harder to decouple in the future. 13
  • 14. Many Drupal sites! •  Multisites •  Different codebases In either case they always have •  A common base –  Common Drupal distribution (Features + Install Profile). –  Common infrastructure. 14
  • 15. Many Drupal Sites - Multisites! 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. Bad! •  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. Standards! “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 cluster of nodes where different sites are hosted. 19
  • 20. Solutions working in this space! •  •  •  •  •  20 Drupal Gardens Acquia Cloud Site Factory Pantheon One Aegir Custom solutions
  • 21. 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. 21
  • 22. 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. 22
  • 23. 23
  • 24. Acquia Cloud Site Factory! •  Several distributions are available (gardens, commons, commerce). New ones can be created. •  Control Panel (Gardener) 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. 24
  • 25. Acquia 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. 25
  • 26. Acquia Site Factory! •  Powering the largest network of Drupal websites in the world. •  Scalable. •  Support included. •  Best of Gardens + Acquia Cloud. 26
  • 28. 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 change. 28
  • 29. Aegir! •  Platforms have a code base and will host several sites. •  Platforms are associated with a a docroot (can be defined using drush make files). 29
  • 33. Aegir ! Good! •  Simple networks / simple sites. •  It can be self hosted. Drawbacks! •  Using a Drupal to manage infrastructure might be tricky. •  Install and configure Aegir is not straightforward. •  Deploy code to several servers is challenging. •  Update sites involves migrating them from platform to platform. •  Migrating sites involves copy all the database, files and code and swap the vhost (Hard to scale for larger sites). •  Harder to support the concept of several environments. 33
  • 34. 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 34
  • 35. Custom solutions! •  Management server –  Access to all hosts in the infrastructure via SSH. –  Database of sites. –  Issuing commands in all sites •  Drush •  Drush site alias –  Move databases/files directories between environments (drush sql-sync, drush rsync). 35
  • 36. Custom solutions! •  Everything should be created automatically: –  Databases, disk directories and virtual hosts: –  Config management (CM) tools / custom scripts. –  Drush site-install can install new (multi)sites. •  Deploy code to the servers –  Capistrano –  Drush deploy –  Custom scripts •  Graphic interface to view all the sites and their properties (custom development) and manage jobs (Jenkins?). 36
  • 37. Custom solutions! •  Infrastructure –  Easily launch new nodes to the infrastructure to support production and pre-production environments and configure them automatically (CM Tools). 37
  • 38. We are hiring! •  Consultants •  Support •  Sales •  Engineering 38