While there are many Aegir related tips and documentation available, including scripts for complete Aegir system install on LAMP stack, we often have clients using Aegir the first time on their new VPS, but with enough experience to manage and transfer Drupal sites, and they often tend to overlook some required steps, they still make simple mistakes, or feel lost in a too detailed how-to, so I think it can be useful to post also some simple check-lists to make the work easier for others and to help enjoy Aegir power and simplicity.
I'm creating this as a discussion rather than wiki page to give you an easy access to comment, share experience, contribute your own tips and tricks so later we will be able to improve Aegir main documentation, using real world experience from many sources instead of one or a few.
To start it, I will share our standard checklists we are using to help our clients, when they know Drupal enough and just need some handy advise to avoid going through all this basic stuff in documentation.
Some of my tips refers to our standard Aegir setup, where separate Aegir platform lives in /data/aegir, while all platforms and sites live in /data/distro. Your setup may be diferent.
Import your live sites to Aegir system in 8 easy steps
1. Upload all old files as a new platform in Aegir root dir
and change owner:group on the new platform if you
were logged as root (however try to avoid this and
always 'su - aegir' first):
chown -R aegir:www /data/distro/myplatform
2. Rename sites/default to sites/importeddomain.name in this platform.
3. Create new database/dbuser manually (not via Aegir).
4. Import your old database to db created in step 3 above,
also manually (truncate all cache* tables first).
5. Adjust database details in sites/importeddomain.name/settings.php
to match database access details from step 3 above.
6. Go to Aegir and create new platform using root dir
of your imported site: /data/distro/myplatform.
7. Now Aegir will create new platform, will import your site,
will record its database details and will verify the site,
everything automatically.
8. Now you can log-in to your imported site as always.
If you see any errors, clear all caches now. Done!How to keep your Aegir install crash-proof
1. Never touch /data/aegir - it is the heart of your Aegir system
and you need to familiarize with Aegir documentation first
before trying to update/touch there anything.
2. Never use core Aegir platform to create new sites, if you
need basic 6.x install, there is Pressflow 6.x
3. If you don't know how to do what you want, check documentation
first, and if that doesn't help, ask for assistance.
4. If you want to import existing site to Aegir, use 8 easy steps
you can find above.
5. Don't try to update Aegir itself before you will create,
crash and restore your first 10 sites.
Comments
Thanks Grace, I've some
Thanks Grace, I've some thoughts below
Why create an entire platform just for a site? That seems like a terrible amount of work, especially when it comes to upgrading/migrating, and the amount of added disk space taken up by so many cores.
If the site is a drupal 6 site, you can just set up a drupal 6 platform (see below) and move the site into sites/yoursite, run another Verify of the Drupal 6 platform and it should automatically import the site: no need to create a platform each time.
If you really are installing one platform per site, isn't this step rather redundant? There is no advantage to having the site in its own site specific folder inside sites/, rather than in sites/default, if you are not going to take advantage of Drupal's multisite design.
Why not just install a separate Drupal-6.x package and use that? And then install your multiple sites inside sites/ of that platform per my above comments. If you're doing it this way, one platform per site, you're creating yourself a lot of work!
@mig5
It is always better to import live site as a separate platform, since it is easier, faster and more secure (less trouble with dependencies, contributed modules versions, changes etc.).
In reality most of the time it is faster path than importing only database to vanilla platform. We and our clients tried that many times.
But it doesn't mean you have to stay with one platform per imported site - that would be against entire idea of making managing simpler and unified.
I tested it many times - first import the old site as a separate platform and next migrate all these sites to one, new platform, with fresh codebase - of course if these sites share most of modules/themes, for example there is no point to create one platform for e-commerce and intranet sites etc.
You have to rename sites/default to sites/imported-domain.name or Aegir will not recognize the site at all as something to import and verify automatically. This is not redundant, rather required.
This tip about not using Aegir initial platform as a base for created/imported sites is based on our live experience. It's easy to break Aegir install if not experienced user tries to use it, will try to update its modules, will start messing manually with sites/all/modules/* etc.
Again - all those points are taken from real world experience with real users, who are familiar with Drupal but they are not devs of any kind.
~Grace
Aegir does not import things when verifying new site
Hello,
I am having problem with the above tutorial, it does not work here. My Aegir works fine, all new sites I create can be verified, migrated, etc. But if I try to create/verify new platform based on my previous drupal, or even when I download a fresh drupal and add my site to it's sites folder, the same thing happen. The site, nor the modules in the sites/all/modules/*, nor the themes in sites/all/themes/* do not get imported. No error message, just they do not get imported. What might be wrong?
I am following your tutorial step by step, exactly.
I think you should move all
I think you should move all folders from sites/all to your sites/domainname.com. This should be the key reason why they are not imported.
I just posted updated and
I just posted updated and simplified site import how-to for Barracuda/Octopus users: https://gist.github.com/802945