FOSDEM - Drupal Multi-site
This post could have also been called, "How to win friends and influence people" as part of my presentation included a give-away. I handed out ten free Flickr Pro account to each of the people who asked a question at the end of the presentation. That's right kids, I bribed people into asking questions by handing out schwag! These accounts came via a Flickr sponsorship of a HICK Tech event. Thanks Flickr, you rock!
With a couple of minor glitches my presentation on Drupal Multi-site at FOSDEM 2009 went really well yesterday. You can view the slides on slideshare.net and the video is now available as well (scroll down to see mine). If you want to understand how Drupal Multi-site works and you missed the presentation, please read the on-line documentation (instead of/as well as the slides). The talk itself was really short (about 20 minutes) with lots of time for questions afterwards. This presentation is a variation of the one I gave at DrupalCon Szeged Open for Small Business (video and slides are available for this prezzo) and also at FSOSS in Toronto. There will also be an article in the Open Source Business Resource later this year.
I had one little glitch in the presentation was because had the wrong permissions on the settings.php file when I was trying to demo an installation of Drupal. Let this be a lesson to all presenters: test ALL of your demo ALL the way through! Wim's screen cast was much more reliable for presenting and probably what I will use in the future. I forgot that my laptop didn't have the Web server in the same group as me so the settings of 664 should have been 666 to make the file read-writeable by the server. If you want to see Drupal installed, you can check-out the awesome Lullabot video on Installing Drupal 6. My apologies for not having tested all of the install beforehand!
There were some excellent questions after my short tour of Drupal Multi-site. I forgot to repeat the questions into the mic and they aren't necessarily covered in the slides or in the Drupal.org documentation. In no particular order, here are the ones that I remember.
What about backups? How often and what tools do you use?
The clients that I have on my multi-site install update their site about once a month. This means that weekly backups are more than enough. The module Backup worked well for Drupal 5; but moving forward check out Backup and Migrate for Drupal 6 and beyond. For more information on Backup and Migrate you can also read this quick tutorial.
Does Drupal Multi-site have an administration interface that allows you to jump into all of the Web sites from a single place (like WordPress's Multi-user)?
No. But I like it this way because some of my clients have full administrative access to their sites. More about WordPress MU is available on-line.
When is your book coming out and where can I buy it?
The current schedule shows that we'll be printing at the beginning of April. Konstantin and I are currently waiting to review the final PDFs before the book goes to print.
How much power do you give your users within their sites? Do they get full administrative rights?
My goal isn't to prevent my clients from having full access; but I do want them to be limited to asking questions related to the tasks they perform on a regular basis. This means I give them fairly limited "content manager" roles to start. As they grow into their site I reveal more tasks (for example: adding new categories). This controlled release of power has worked well for us.
What about Plesk/cPanel? Do you give your clients access to a Web admin panel?
Nope. For the most part these clients are using @gmail addresses and don't want another email address to remember. They are very happy for me to shield them from having yet another thing to learn. In fact all of this is hosted on a Dreamhost VPS. Of course I have corporate clients with much more rigorous needs. They typically host their site in-house, or have dedicated hosting. They are not part of the Drupal multi-site installation.
Do your clients know they're on a shared system? Do they care? Do you promote it?
I find clients are very happy to get free security updates during the year. This means they're on a shared code base, but they also know their site is completely unique (because it is its own database). I haven't been promoting the group as a marketing techique, because I'm at the maximum number of people I want to help in a single night. I may open up new help nights for other industries though. For example: right now they are almost all small businesses; but I have enough Not For Profit companies that I could add another monthly help night for just these clients.
How does multi-site work with multilingual Web sites?
Unfortunately, I'm not sure. I've played a little bit with the I18N functionality in Drupal 6, but I haven't tried it with a multisite install. Does anyone else have experience with this? Please leave it in the comments! There was also a question about different regions and domain access. Check out the module Domain Access if you want to know more about that.
Do you use any kind of version control system?
Yup! I download files directly from Drupal's CVS repository (brief tutorial) and local changes to themes are stored in Bazaar on my laptop and then pushed up to the server using bzr upload.
So you have to run update.php for each site individually? That's really annoying. Why don't you automate it?
I seem to recall someone mentioning a Drupal module that would automate updates across a multisite install; but I can't find a reference to it now. I personally do my updates by hand and one at a time because I want to know if something has failed as part of the update. The process goes as follows: check the sites directory for all domains that need to be pulled offline; pull all sites into maintenance mode; take a snapshot of the db and all core files; update from CVS to the latest stable version of Drupal; individually update sites and bring them back online. I have about 20 sites and this takes me about an hour to do. Your mileage may vary.
Please let me know if you have more questions and be sure to check out the documentation on drupal.org on how to set up multi-site.


Comments
February 9, 2009 - 5:49pm
Wim Leers
Damn Emma, now I still haven't met you :P I'll meet you in DC then :)
I created a screencast because I knew that the Wi-Fi network would be unreliable. And since my demos were on a non-local web site, I'd better find a way to make it reliable. A screen cast was the only sensible approach!
The disadvantage is obvious: you cannot answer questions about the thing you're demoing by showing something else after the demo itself, because it's "hardcoded". So it still might be better to use a normal demo :)
February 9, 2009 - 10:45pm
matthew
I'm looking forward to picking up a copy of your book when it comes out. I have glanced through much of it on Safari, but I still have a thing for dead tree editions.
February 11, 2009 - 10:04am
Jo Wouters
Thanks again for your presentation!
A video of your presentation (and 6 others) including the questions (and the little glitch :-) can be found at http://lvb.net/item/7098#more
July 13, 2009 - 5:21am
Freelance Drupal Developer
Thank you for providing nice information about drupal. Thank you for writing it's very userfull for me.
January 4, 2010 - 10:38pm
Charlie
Right on! Your q and a reveals that I'm not alone in most of my decisions. I feel the same way about client security, administration abilities, etc. Keep up the cool blog.
February 19, 2010 - 1:52pm
Streek
Flickr is a popular place where we share our photos & files which is known to most of us,but happy to learn about Flickr Pro from you.Thanks to you. flat panel tv stands
March 11, 2010 - 8:04am
fredj
Hy,
very good article! thanks!
is there a french translation of this tutorial ?
kit xenon
March 18, 2010 - 2:33pm
omar
great presentation! very helpful tutorial. I will pass this along.