We're proud to announce the first alpha of the 0.2 release of the Aegir hosting system for Drupal.
Ægir is a set of contributed modules for Drupal that aims to solve the problem of managing a large number of Drupal sites. It does this by providing you with a simple Drupal based hosting front end for your entire network of sites. To deploy a new site you simply have to create a new Site node. To backup or upgrade sites, you simply manage your site nodes as you would any other node.
This release is the first alpha release of our 0.2 development cycle, which has been focused on complete support for running multiple concurrent Drupal releases, and managing upgrades of sites between Drupal releases. This release has also primarily been focussed on improving and simplifying the back end system, by incorporating a lot of our custom API's upstream into the Drush 2.x project.
Update: Check out this screencast for a quick walkthrough of the features available in this release.
Since the previous release, we have fixed all known critical bugs, and implemented the majority of the critical features for the 0.2 final release.
We have spent considerable time refactoring both Drush and the Provision project, to simplify and standardize the process of developing contributed modules for Aegir. The amount of code used has decreased significantly, and the system has been made more fault tolerant.
Changes in this release:
- Our back-end is Drupal version agnostic.
Provision is now built as an extension to Drush 2.x, and is no longer a Drupal module. It offers full support for Drupal 5, Drupal 6 and Drupal 7.
- The HostSlave install profile has been deprecated.
It existed solely as a work around to Drush 1.x's requirements, and 2.x no longer needs a fully bootstrapped Drupal site to operate.
- The Platform feature is no longer experimental.
Aegir now fully supports managing multiple concurrent Drupal releases.
- Aegir now understands 'packages'.
The system now fully maps exactly which modules, themes, install profiles etc. are available on the platforms and sites, which allows us to do dependency checking for managing upgrades.
- Added the Migrate feature.
The system is now capable of migrating, or upgrading, sites between Drupal platforms. This also includes the execution of update.php and a fully working recovery path, in case anything goes wrong
- Added functionality to the Clients feature
You can now automatically register Drupal user accounts for new clients, and choose to send them a (configurable) welcome mail.
- Improved the node access implementation
Allows multiple users to the system far more easily and safely.
- Refactored almost the entire back-end system
All drush commands are now re-usable in provision, and some of the provision commands have been moved upstream to Drush.
- Experimental support for multiple servers.
Aegir and Drush are now fully distributed. This is an 0.3 feature, and will remain experimental until we've improved the user experience related to managing multiple servers.
To install Aegir you need
- A unix based operating system.
Aegir will not work on windows.
- Full access to your own server or machine.
Shared hosting will not give you enough permissions to install new sites
- A Drupal installation that is web accessible with it's own hostname.
It is not possible to install Aegir in a subdirectory. You may need to add entries to your /etc/hosts file to test Aegir, as it does not provision DNS yet.
Installing Aegir
Aegir's architecture provides the ability to manage multiple backends through a single front end.
Each server that Aegir is installed on, needs to have it's own backend.
- Installing Drush
The Aegir backend is an extension to the Drush 2.x release, which needs to be installed first.
- Download Drush 2.x Alpha2
Extract it somewhere your user has access to it. I always extract it to
/home/adrian/drush.You may also choose to create an alias to it, or symlink the drush.php file into your /usr/sbin directory. More information on this is available in the Drush readme. - Installing Provision
Provision is the backend of the Aegir hosting system, as with Drush, there should only be one instance of provision per server.
- Create the .drush directory in the home directory of the user Provision is being installed as.
Use this command :
mkdir -p ~/.drush - Download Provision 0.2 alpha1
Extract it into the
~/.drushdirectory, so it is located at~/.drush/provision
- Create the .drush directory in the home directory of the user Provision is being installed as.
- Installing Hostmaster and Hosting
Hosting is the front end to the Aegir hosting system. The Hostmaster install profile initializes a new Drupal site with all the information
that Hosting requires to operate, and provides the installation wizard for configuration.- Download the Drupal 5.16 release
Extract it to the location you host sites from (example:
/var/www/aegir/drupal-5.16). You may also use an existing Drupal 5.x directory instead. - Download Hostmaster 0.2 alpha1
Extract it into the profiles folder of your Drupal installation (example:
/var/www/aegir/drupal-5.16/profiles/hostmaster) - Create the profiles/hostmaster/modules directory.
(example:
mkdir -p /var/www/aegir/drupal-5.16/profiles/hostmaster/modules) - Download Hosting 0.2 alpha 1
Place it inside the newly created profiles/hostmaster/modules directory.
- Create a new database for the site, and create a new virtual host entry for it
This should be the last time you need to do this.
- Install a new site using the HostMaster install profile in sites/default
You will be directed along the server configuration process, and importing your sites.
You should also check out the install.txt file of the hostmaster profile if your run into issues.
- Download the Drupal 5.16 release
important note: Drush 2.x is not a module, and it should not be installed inside a Drupal directory. Any existing instances of Drush 1.x or the deprecated Drush Extras module should be deleted from the filesystem, to avoid PHP function name collisions.
Upgrading Aegir
If you are a user of the 0.1 release, you can find complete upgrade documentation in the Upgrade.txt file of the hostmaster profile.
If you have any problems, don't hesitate to contact us, by either making a support issue on the hosting project, or getting a hold of us on irc. We are trying to make the project as easy as possible to install, but we simply can't test every configuration possible. At the very least we would be able to provide more adequate documentation for such cases, so please let us know.

Comments
Link corrections
Those ftp.drupal.org/project links are dead for me. I used
http://ftp.drupal.org/files/projects/hosting-5.x-0.2-alpha1.tar.gz
http://ftp.drupal.org/files/projects/hostmaster-5.x-0.2-alpha1.tar.gz
http://ftp.drupal.org/files/projects/provision-5.x-0.2-alpha1.tar.gz
those links are the same as the ones i posted
the packaging scripts probably hadn't picked them up yet.
D6?
You may have covered it elsewhere but I didn't see it in the Roadmap or other main pages.. is there a particular reason to wait so long to port to D6 rather than pushing that now? Thanks.
Stability
We decided to focus on the back end for this release. The related discussion is here : http://groups.drupal.org/node/19094
Aegir fully supports provision Drupal 5, Drupal 6 and Drupal 7 sites, the front end is the only part that is Drupal 5 only.
Got it installed, loving it but now confused
Thanks for 0.2 guys!!!
One question:
"The HostSlave install profile has been deprecated."
So... how do I install a drupal 6 platform? Following the 'old way' doesn't seem to make sense if hostslave's been depreciated.
I had the same questions
Most of this is explained in profiles/hostmaster/INSTALL.txt. (I didn't think to look there either until nudged ;-)
simple
just download it through whichever mechanism you prefer (http, cvs, using the drush.php dl command), and create a new platform node on your hosting site pointing to that path.
Check out the screencast, where i do exactly this : http://www.developmentseed.org/blog/2009/apr/20/aegir-in-action-first-al...
You don't have to install
You don't have to install anything on the D6 platform. You put drush and provision under your home directory. Then you go into aegir (hostmaster) and define a D6 platform by entering the drupal root dir of a valid D6 installation.