The Pacific Cup is a yacht race from San Francisco to Hawaii, run every other July. What this means is that the site is pretty quiet for 23 months and then goes crazy with spectators (90k hits per day) for a month.
In 2008, our Drupal site overwhelmed the mySQL server on the dedicated host and brought the site to a crashing close. Since the Drupal-friendly webmaster was 1000 miles offshore at the time, the traditional co-webmaster quickly replaced the site with a static version, per agreed plan, and all was well.
But we knew we could do better. For 2010, I decided to try this thing I heard about at Drupalcon and installed a Pantheon/Mercury stack on a Rackspace instance. As there was no prebuilt avaiable there, I had to roll my own. This took a few tries, as some of the steps are pretty lengthy and I had terminated them early. With persistence and a little coaching from this site, I got it done. We started out at 512 MB and gradually increased the size to 4 gig as the race drew near.
The site makes heavy use of views, images, ubercart, panels and more Drupal eye candy than we probably should have, but you know how that goes.
Well, we got through the heavy period without the slightest glitch. Probably did not need to upsize the site so much. User experiences and comments were very positive.
I am now having trouble downsizing, which is a separate issue, I think.

Comments
Well done, Cayenne! I'd
Well done, Cayenne! I'd love to see a white paper or write up of the steps you took, in particular any rackspace-specific quirks. Congratulations on the success!
Fair Enough
I will try to put one together...
Downsizing
Not sure if this is relevant or what, but on Linode you can move your plan up and down with a simple checkbox and a reboot. Also there's a Linode stackscript for pressflow/pantheon/mercury available so you're up and running immediately with no setup required.
Maybe instead of downsizing you could attempt to move the site to a $19 512mb linode and if it goes smooth at the IP, then you can just switch DNS, and if it's a fail, switch back. :)
Maybe you can do the same thing at Rackspace or whatever, I dunno.
I used the stackscript on the 512mb plan, and just upgrade to 768 as I figured it might loosen the memory requirements and use less swap.. Totally unnecessary I'm sure. It does keep some available ram though this way. If I switch back to 512 they issue a credit for unused days too.
I use the same theme as you, I'll send you my site if you don't mind seeing naked people. ;)
Rackspace has the same kind
Rackspace has the same kind of thing. I imagine it's pretty standard. What I found worked for downsizing was:
I have been recently informed that the Pantheon script pre-configures for a fixed memory size at install time. I am presuming that the rebooting deals with this problem. As a Varnish n00b, I have not checked or verified the Varnish settings, so that may or may not be related to the issues I had.
re: Rackspace has the same kind
The Pantheon memory config occurs when bcfg2 -vq is run, not on server reboot (except first reboot since that launched bcfg2 -vq automatically).
Hope this helps,
Greg
--
Greg Coit
Systems Administrator
http://www.chapterthree.com
@greg Oh, I feared that might
@greg
Oh, I feared that might be the case. So, let's see. I spun the darned thing up at 256M, fooled around with it for a while, upgraded to 512M, then in steps to 4gig, and now down to one gig. Sounds like I got lucky and should run some command, either in bcfg2 or perhaps directly in Varnish.
Okay, wandering around the bcfg documentation like a kitten in a hardware store, I am guessing that I am on the wrong track. For those of us who are self-administered, can you aim me in the right direction here regarding such things as where the memory instrumentation and settings might lie?
Yeah would be good info if
Yeah would be good info if you have to do something to have it re-understand how much memory the machine has, if it indeed needs to know.
re: Yeah would be good info if
Running:
sudo bcfg2 -vq
will cause bcfg2 to re-check the system memory, recalculate the appropriate memory settings for varnish, mysql, apc and apache, and apply those settings.
Greg
--
Greg Coit
Systems Administrator
http://www.chapterthree.com
Great thanks Greg. Do I need
Great thanks Greg. Do I need to put my site into maintenance mode or anything while I run this command? Can everything be running and it still work?
re: Great thanks Greg. Do I need
I don't think the server needs to be in maintenance mode and bcfg2 is very good about restarting a service if the config file changes, so just that command should work fine.
Greg
--
Greg Coit
Systems Administrator
http://www.chapterthree.com
I ran it. No harm.
Maybe it helped. There is so little load on the system now that i could run it on Dreamhost and not care. Okay, that's a lie.
But thanks for that.
My results were a bit weird,
My results were a bit weird, but my website is still running so maybe it did what it was supposed to do. At your suggestion in another thread I ran it twice, and the second time I didn't have to ^C out. Just posting this here in case someone cares.
Note I am using the Pantheon Stack Script available for Linode.
sudo bcfg2 -vq
Running probe groups
Probe groups has result:
i386
Loaded tool drivers:
APT Action DebInit POSIX
Package klogd not installed
Package sysklogd not installed
Phase: initial
Correct entries: 570
Incorrect entries: 13
Total managed entries: 583
Unmanaged entries: 43
Installing ConfigFile /etc/php5/conf.d/apc.ini
Installing ConfigFile /etc/default/varnish
Installing ConfigFile /etc/tomcat6/server.xml
Installing ConfigFile /etc/php5/apache2/php.ini
Installing ConfigFile /var/www/profiles/mercury/mercury.profile
The Following Bundles have been modified:
mercury tomcat6 ubuntu-karmic varnish
Failed to manipulate service killprocs
Failed to manipulate service ondemand
Failed to manipulate service rc.local
Failed to manipulate service single
^C
sudo bcfg2 -vq
Running probe groups
Probe groups has result:
i386
Loaded tool drivers:
APT Action DebInit POSIX
Package ubuntu-minimal not installed
Package rsyslog not installed
Phase: initial
Correct entries: 581
Incorrect entries: 2
Total managed entries: 583
Unmanaged entries: 43
The Following Bundles have been modified:
rackspace
Phase: final
Correct entries: 583
Incorrect entries: 0
Total managed entries: 583
Unmanaged entries: 43