Heh...
So, I figured I'd post an update to this (yeah, it's long, but honest.)
Things went fine in our VPS for a while. I even initially got "wow, this is the fastest it's ever been" comments.
THEN...
Things got slow.
So, I started poking around. It turns out (JAISP is laughing right now - I bow to his knowledge and experience) that the disk I/O was just flat out too slow. I mean, when iostat is reporting 90%+ iowait times for minutes on end, you know you've got problems. I wanted to get some bonnie++ numbers, but it wouldn't compile - I can only assume because of being in a virtual environment.
So, it took an act of congress to get FH to move us to another physical box, but they did it eventually. (They kept blaming the slowness on the SQL saying it was bad SQL and that we needed to fix that.) So, while I was writing back and forth with one of their techs one night (luckily, I was in New Zealand at the time, so the middle of the US night stuff was no big deal for me) I just gave up and shut down mysql completely. Once he saw that loading 400k worth of static images from apache took 30+ seconds, it was mostly downhill from there.
So, sure enough, a few days later, we're back to being slow. I was busy (you know, being in New Zealand for my day job and all...) so I just figured I'd shut off the post counts on the front page. We like to have the unread post counts on the front page. Yes, it's a resource hog but it's a resource hog we're not really willing to live without, but it seemed an acceptable short term fix. And it was. For maybe a day. But then things got slow. Again.
If I never see the following error again, it will be too soon:
UBB Message
We encountered a problem. The reason reported was
Database error only visible to forum administrators
Please click back to return to the previous page.
When things were fast, they were fast. When things were slow, pages took 10-20 seconds to load (according to the debug line at the bottom). Posts were taking 30-40 seconds to post and then refresh the page. I tuned the heck out of mysql - all to basically no avail. (I learned a LOT about mysql tuning as I'm more of a Caché or Sybase guy.)
So, I basically gave up on the VPS at that point. To just be quick and dirty, I moved the mysql database to my home server but left apache on the VPS - mainly to avoid any further configuration changes. That worked surprisingly well. (Keep in mind, I have a 10Mbps U/D fibre connection at home.) I purposefully put the mysql db on my boot drive (7.2k SATAII) instead of my RAID to see what the I/O load would be like. Unsurprisingly, I never saw I/O usage over 2% on that disk, but load times were typically right around 1 second (which is honestly not bad with apache in Chicago and mysql 110ms away in Utah.) I would have just hosted the whole kit and caboodle from home, but I don't want the responsibility.
So, suffice it to say, I moved our board to ServerBeach last night. We're paying $109/mo (or 10% off that with a 1 year contract) for an Opty 1218, 2x500GB SATAII HD with a HW RAID1 and 2GB of RAM and unlimited bandwidth on a 10Mbps connection with off-server backup via ftp and a 3 hour HW SLA. It's not managed, but any one of our admins can open a ticket with SB for $15/call (if I'm not available) and they'll troubleshoot the mysql or the OS or whatever. Considering that's a LOT cheaper than what we were paying to colo a 2xP4 we owned, we're still happy even though it's more than the VPS. The front page unread numbers are no longer an issue and times are back down in the 0.00x second range (bad SQL and all

) and searches no longer scare me.
Anyway, such was our foray into the world of VPS's. I know not all VPS's are gonna be like that. I was courted by a local ISP for the business on one of their VPS's, but since it was roughly the same price as a dedicated server, it didn't make much sense to me.
A couple of side notes:
• I initially developed a real bad taste in my mouth for CentOS, but since SB won't support Solaris unless I jump through hoops, I gave Cent another chance. So far so good.
• I never did get CAPTCHA working on the VPS, but it's running fine (having done the same thing) for me now.
• I'm pretty sure that a somewhat modern single core CPU would have been absolutely fine for our needs, so even though the 1218 is not the fastest chip on the block, it's more than adequate.
• If you ever have to move a mysqldump, don't forget to compress it before moving. Our db is around 1GB including indices and the dump compressed from 760MBish to 130MBish using bz2. The other 2GB or so of data didn't compress nearly as well (as would be expected with images that are already compressed.)
I'm getting WAY too good at moving this website around... I hope once I upgrade to 7.5.3 that I don't need to touch it again for a good long while.