Hoe kiest u voor uw bedrijf het juiste Drupal multisite platform?

Posted by: 
Dominique De Cooman

Waarom Een Multisite Platform?

Als uw organisatie verschillende websites online heeft, dan kan het de moeite lonen om eens na te denken over een multisite platform.

Wat kan u winnen bij een multisite platform? U kan de inspanning die werd gedaan bij de verschillende projecten, groeperen.

  • Hierdoor kan u bijvoorbeeld dezelfde custom ontwikkelingen die op de ene site werden gedaan, hergebruiken op de andere.
  • U kan ook het analyse- en project-opstart traject verkleinen door met één partij te werken i.p.v. met heel veel verschillende partijen.
  • Uw mensen kunnen een vast systeem voor content management gebruiken i.p.v. een wirwar van verschillende systemen.
  • U kan ook stijlen & templating hergebruiken op al uw sites.
  • Ook het onderhouden van al deze websites moet niet meer op verschillende soorten systemen worden gehost. 
  • Ze moeten bijvoorbeeld ook niet door verschillende teams worden gehost.
  • Organisatorisch kan u binnen uw organisatie workloads verschuiven door verschillende diensten te laten instaan voor onderhoud van uw hele web vertegenwoordiging.

Kortom: u kan heel veel besparen indien u het voordeel van een multisite platform op lange termijn ziet. Hoe meer websites u heeft, hoe meer u kan profiteren van een kostendaling.

Wie Deed Het U Al Voor?

Er zijn bekende voorbeelden in België die van multisite platformen gebruik maken.

http://cooldrops.be, een KMO website provider die een multisite platform gebruikt om al zijn klanten van een website te kunnen servicen. Klanten profiteren hier van een geïntegreerde aanpak waarbij alle sites centraal worden onderhouden, en van updates die gemaakt worden over het hele systeem.

http://stedelijkonderwijs.be zorgde ervoor dat ongeveer 200 scholen hun eigen website kregen binnen één platform dat door één partij wordt onderhouden. Zij elimineerden voor elke school de kost om zelf een website te laten bouwen door één platform te bouwen waar de functionaliteit één maal werd gebouwd en 200x werd hergebruikt. Hier werd vroeger per site dezelfde functionaliteit ontwikkeld, opnieuw en opnieuw. Het team dat de site onderhoudt, kan de scholen zelf de inhoud op hun site laten beheren. 

Waarom Drupal Voor Een Multisite Platform?

Drupal is uitermate geschikt voor een reeks van multisite platformen. Omdat Drupal opensource software is, hoeft u niet te betalen voor het aantal installaties. Er is hier geen licentiekost. U hoeft dus niet te berekenen hoeveel sites u zal willen genereren. Wat geniaal is aan Drupal, is dat u dus één maal uw code laat ontwikkelen en dat u ze dan naar believen kan uitrollen, zoveel u maar wil.

Drupal is modulair opgebouwd zodat het mogelijk is om op het platform alle sites simultaan te upgraden. Het is ook mogelijk om aparte componenten simultaan te upgraden.

Drupal heeft een traditie om als multisite te kunnen worden geïnstalleerd. Al sinds versie 4.7 zat in Drupal een multisite installer die ervoor zorgde dat mensen op een shared hosting meerdere sites konden draaien op één Drupal codebase.

Waarop Moet U Letten Bij De Keuze Van Een Multisite Platform?

Er zijn 5 criteria om een multisite platform te kiezen.

  • Onderhoud van code base
  • Onderhoud van de database
  • Inhoud en gebruikers delen over de sites
  • Adminstratie per site
  • Custom coding mogelijkheid per site

Bij deze vijf criteria horen verschillende oplossingen

Domain Access

Domain access is een oplossing gebaseerd op het gebruik van de domain access module. Het is een aanpak waarbij u meerdere sites host vanop één code base, één database en waarvoor u één admin voorziet. Het is de meest eenvoudige vorm van multisite die beschikbaar is. 

Wie Gebruikt Domain Access Voor Multisite?

Het wordt vooral gebruikt voor multisites die niet heel veel van elkaar verschillen.

Een voorbeeld is een firma die wijn verkoopt en voor elke wijnsoort een aparte site wil, bvb:

http://cabernet-sauvignon.wijnhandel.be

http://bordeaux.wijnhandel.be

Deze sites bevatten heel veel dezelfde soort functionaliteit en inhoud.

Deze sites worden dus door één admin beheerd.

Kenmerken

  • Mogelijkheid om één admin alle inhoud van alle sites te laten onderhouden
  • Er is een vrij sterke limiet aan hoeveel u per subsite kan customizen. Dit mede omdat het één codebase en één database betreft
  • Custom design en theming is mogelijk
  • Eén database en één code base = gemakkelijk onderhoud
  • Gebruikers en inhoud kunnen worden gedeeld over de subsites
  • U kan meer dan één url hebben
  • Single Sign On is mogelijk

Organic Groups Spaces Features

Deze setup is iets complexer maar dan ook krachtiger. Net zoals domain access heeft u één code base en één database maar u kan beschikken over een multisite systeem dat toelaat dat elke site zijn eigen rollen en permissie systeem heeft. Dit stelt u in staat om de verschillende websites hun inhoud te laten onderhouden door verschillende diensten of afdelingen in uw bedrijf of organisatie.  

Wie Gebruikt Dit?

Bijvoorbeeld een onderwijsorganisatie die 200 schoolwebsites heeft, maar wil dat elke school zijn eigen website kan onderhouden. 

Een organisatie die verschillende diensten heeft die zich allen afzonderlijk online willen profileren. Elke dienst kan van gemeenschappelijke functionaliteit gebruik maken om eigen content en gebruikers te beheren.

Kenmerken

  • Mogelijkheid om een administrator en een rollen/permissie systeem per subsite te configureren
  • Custom code per site is mogelijk maar binnen een aantal limieten omdat het nog steeds één codebase betreft
  • Custom theming en design per subsite is mogelijk
  • Er is maar één database en code base dus er is makkelijk onderhoud
  • Users en content worden gedeeld indien nodig
  • Er kan meer dan één url opgezet worden
  • Single Sign on is mogelijk

Multisite Drupal

Hier spreken we over een gemeenschappelijke code base, maar aparte Drupal installaties (verschillende databases)

Wie Gebruikt Dit?

Dit wordt gebruikt wanneer men controle wil hebben over elke installatie, en de configuratie sterk wil laten afwijken van andere subsites. Er wordt wel een centraal installatie profiel gebruikt waarbij een aantal standaard functionaliteiten kunnen worden aangezet. Deze setup vergt heel wat extra onderhoud en is alleen te kiezen als de verschillen in de subsites groot genoeg zijn.

Kenmerken

  • Verschillende databases
  • Eén code base
  • Mogelijkheid voor meerdere urls
  • Verschillende accounts per site
  • Gebruikers en Content zijn niet gedeeld standaard. Er zijn wel mogelijkheden om toch te delen.
  • SSO mogelijk
  • Custom code is mogelijk per site maar er zijn limieten qua development setup en onderhoud, en is niet aan te raden.
  • Door de vele databases is onderhoud moeilijker en is een systeem om onderhoud te automatiseren aan te raden.
  • Custom theming/design mogelijk
  • Moeilijk op te zetten dev-staging-live tijdens ontwikkelen per website

Aegir (Advanced Multi Site)

Dit biedt qua multisite hetzelfde aan als voorgaande maar er is een systeem beschikbaar om alle onderhoud en installatie te automatiseren. U kan meerdere installatie profielen gebruiken. Daarnaast is het mogelijk om meerdere platformen verspreid over meerdere servers (multiserver) te gaan onderhouden.

Wie Gebruikt Dit?

Partijen die één of meerdere verschillende multisite setups hebben draaien. Het betreft meestal meer dan 10 verschillende websites.

Bijvoorbeeld een organisatie heeft een multisite aegir voor al zijn producten. Elk product krijgt zijn eigen installatie maar wordt daarna toch steeds net iets anders gelayout en heeft misschien een net iets andere functionaliteit. Verder kan diezelfde organisatie ook nog eens een platform hebben om al zijn diensten in de kijker te zetten.

Kenmerken Surplus Aan Multisite

Zeer moeilijke set up van staging workflow omdat het platform alle code van alle projecten bevat.

Dit systeem automatiseert een heleboel taken: migrating, updating, backups, ...

Een aegir kan meerdere install profiles uitrollen.

Multiserver support

Dropsolid Ultimate Platform

Door jarenlang met platformen te werken heeft Dropsolid ook een eigen platform uitgebouwd met als grote voordeel, nog boven op alle andere platformen, dat men op elke site apart custom kan ontwikkelen zonder met de andere sites te interfereren.

Wie Gebruikt Dit?

Organisaties die zelf een development team hebben die kunnen ontwikkelen aan hun Drupal sites en die zelf functionaliteit willen hergebruiken. Zij kunnen toegang krijgen tot het Dropsolid Shared platform waar zij code kunnen ontwikkelen en uitrollen per site. Zij hebben alles onder controle. Elke letter code, elke deploy, elke commit en elke transfer van data.

Doordat elke site een eigen setup heeft, kan je heel gelijkaardige code uitrollen, maar ook helemaal custom gaan indien nodig. En toch kan alles door een centraal systeem onderhouden worden. U kan werken, onafhankelijk van andere sites in de multitsite.

U leert werken aan de Drupal standaarden en leert code driven deployen. U houdt uw projecten onder controle en maakt maximaal gebruik van code reuse.

Kenmerken

  • Verschillende database per site. Het onderhoud wordt echter geëlimineerd door het geautomatiseerd systeem
  • Verschillende codebase per site. Het onderhoud wordt echter geëlimineerd door het geautomatiseerd systeem
  • Verschillende repository per site. Het onderhoud wordt echter geëlimineerd door het geautomatiseerd systeem
  • Verschillende deployment pipeline per site. Het onderhoud wordt echter geëlimineerd door het geautomatiseerd systeem. Op elke site kan onafhankelijk vanuit de repository code driven worden ontwikkeld
  • Custom code vrijheid is onbeperkt
  • Meerdere omgevingen per site is mogelijk. Dus dev, staging, live en meer is mogelijk per site
  • Alle maintenance gerelateerde taken zoals cron, backups, updates, monitoring worden door het centrale systeem gedaan
  • SSO mogelijk
  • Meer dan één url mogelijk
  • Geen shared content. Wel webservices voor datauitwisseling mogelijk
  • Geen users content. Wel webservices voor datauitwisseling mogelijk
  • Multiserver support

Waarop Moet U Letten Bij De Keuze Van Een Provider Van Een Multisite Platform?

Een multisite provider moet aan een aantal zaken voldoen.

  • Ze moeten kunnen aantonen dat ze een aantal platformen hebben gebouwd. Het is niet eenvoudig om dit te doen. Alles lijkt zeer logisch maar de complexiteit van een multisite project is niet te onderschatten.
  • Zorg dat de provider ook weet hoe zo'n platform moet worden gehost. Men zit meestal met meerdere servers en dat is niet altijd eenvoudig om dit op te zetten.
  • Zorg dat de provider genoeg Drupal kennis heeft om verder te ontwikkelen op uw platform

Besluit

Voor bedrijven met veel sites zijn multisite systemen dé manier om kosten te besparen. Als u het nog niet aan het doen bent, kan u er maar beter beginnen over na te denken. De denkoefening doen, kan nooit kwaad en hoeft zelfs niet eens ingewikkeld te worden. Hopelijk heeft deze post u wat bijgebracht rond multisite mogelijkheden en weet u wat uw organisatie er aan zou kunnen hebben.

Reactie toevoegen