The best way to run a Drupal multisite is Aegir, and my favorite way to run Aegir is with the Omega8 web host. I get no referral or kickback for recommending them. As I've explained elsewhere, I have several great reasons for choosing Omega8 for my own sites. I think they make managing a Drupal multisite almost as easy as is humanly possible.
However, nothing's perfect. Even with Omega8, you'll want to watch out for a few pain points. These are downsides, rather than criticisms. In almost every case, I can't think of how Omega8 could do otherwise. The complexity of managing Drupal multisites creates inherent limitations, difficulties, and tradeoffs.
1. Read the Manual! Please!
With most web hosts, you purchase your account, and they send you a short welcome email with a username and password. With Omega8, you get a lengthy email, with links to more documentation on their website.
Read whatever Omega8 tells you to read.
If you take nothing else from this article, please believe me and read their stuff. It won't take all that long, and you'll save yourself a great deal of headache.
2. Importing Can Be Tricky
When you first get your Omega8 account, your first task is probably to import your existing site from some other web host. Unfortunately, importing can be one of the trickiest tasks in Aegir. Yes, there's a button for
Import, but you need to do some preparation before that momentous click.
Fortunately, Omega8 carefully explains these steps, both in your welcome email and in their online recipe for importing your site into Aegir. Follow the directions, and you'll be fine. But you do need to follow the directions.
3. The Agony of Caching
Omega8 hosts fast web sites. They wouldn't be nearly so fast without caching. Without caching, the server has to rebuild every page from scratch every time a visitor views it. With caching, the server builds a page once, then saves a copy, and serves the copy to visitors for awhile. Caching is kind of like typing out a letter once, then using this a master for photocopies.
The problem is that, unlike a letter, your site changes. Most of your site traffic (hopefully) is from visitors, who usually aren't changing it much. But whenever you're visiting your site, you probably want to change something.
Now, the caching is sensible enough to notice ordinary changes, like posting comments or new articles. The problem comes when you need to make unusual changes, like tweak the site's CSS or add a block to the home page. This can be tricky even with vanilla Drupal, but Omega8 caching is much more finely tuned. If you don't know what you're doing, it can take ages for your changes to show up on the live site.
Solution? As usual, read Omega8's instructions, this time for disabling caching.
4. This Shell is *Secure*
Now, I can't really complain about this (much). I'm paying Omega8 to keep my web server secure, and if they need to lock down
ssh, I'm going to trust them on this.
But you might want to read my tips and tricks for using the Omega8 shell.
5. Oversight: Enabling and Disabling Modules
Just as you feel a certain oversight as you use the shell, you know that your choice of modules is not entirely your own. Omega8 automatically enables and disables certain modules. If you don't pay attention, you can break things. Omega8 will let you enable a disabled module, in case you need it. (One of them is
update.) They just automatically disable it later that night.
Now let us suppose, as a purely hypothetical scenario, that I once unwittingly included one of those to-be-disabled modules as a dependency in a Drupal feature. When the module got disabled that night, the entire feature got disabled, vanishing, among other things, a whole stack of custom content types.
How did I find this out? The client, of course. Yes, at least this was a development site. But still.
Do I blame Omega8? No way. It was my mistake to hypothetically include that module in the feature. Besides, the wrong module can break your site. I'm happy to let Omega8 use their expertise.
6. Inherent Limitations
Aegir lets you interface with the server, but you can't do quite everything. For instance, you can't write a bunch of custom redirects, because (without root access) you don't have direct access to nginx.
However, if you open a support ticket, Omega8 will set the redirects up for you.
7. SSL: Pay Per Site
Finally, one small catch. If you want a public SSL certificate (for instance, for a web store), you have to pay a separate fee to Omega8 to set it up. Every year.
There's no way around this. You can't do it yourself. But with all the free support they give me, I can't complain. Whenever I set up SSL certificates manually, it's tedious. I'm pretty sure they're only charging because they haven't figured out how to automate the process. Yet.
Small Problems, Really
This may be a longish list, but they're all minor issues. Remember, read their docs. Once you know their particular way of things, you can start enjoying Aegir pain-free.