[development] Drupal Multi-Site Management

Tim Jones tones at toneland.net
Wed Jul 19 22:39:07 UTC 2006

Hi Devlist,

I'm working with Green Media Toolshed to set up a system for managing  
multiple instances of Drupal on the same server and sharing  
information between them.

We're very keen on sharing this and collaborating on it with anybody  
who's interested in something similar. I'm trying to figure out which  
of these functionalities are too specific to our use-case to be  
useful to others, and which the community would benefit from  
developing a standardized and well-supported way of doing.

So, I've included a list of our target functionality below. Send  
feedback! Especially if you're interested in collaborating on this,  
or are working on something similar, or if you have ideas about how  
to implement it in a way that will be in-line with Drupal Core's  
future direction, or if you think it's crazy and can't be done. If  
there is enough interest, we'll set up a Drupal Group to coordinate.


Green Media Toolshed
Multi-Site Hosting Requirements Document, v0.3
Tim Jones - tim at tjones.cc - 19 July, 2006

1. Site management
     - Provide GMT admins with a "dashboard" list of all current GMT  
       including partner information.

     - Automatically deploy new Drupal sites based on site-template  
       via web interface.

     - Track database, client and domain data for all sites.

     - Allow and manage multiple domains/subdomains for each site.

     - Manage cron.php runs across all sites.

     - Run database queries across all sites simultaneously.

     - Manage and synch site filesystems.
       (I think this is only relevant if the setup it not using
        the Drupal "/sites/foo" convention.)

2. User / Client management
     - Users and clients have a many-to-one relationship.
       Clients and sites have a many-to-one relationship.

     - A user may log in to any site owned by that user's client.

     - Users have roles per-client that affect their permissions on
       client sub-sites.

     - Standard ("Authenticated") users are not shared between sites.
       (e.g. for Forums, Blog Comments, etc.)

     - Clearly the specifics of this need to be thought through more

3. API
     - Modules on a given site should be able to access contextual
       multihost information. For instance,
         - What client is this site for?
         - What other sites for this client are hosted on this system?
         - Any other relevant client/group data

4. For the Future:
     - Taxonomy sharing
     - Better mailing lists (possibly og2list?)
     - Multisite statistics aggregation
     - Other stuff?

More information about the development mailing list