So I think I've got the parts for the new server picked out. I haven't ordered yet, as I'm just being a little extra cautious to make sure everything on the motherboard I picked out will work with linux properly.
What I'm looking at:
Athena Power RM-2U2015SV40 case $130 (Yay a real server case!)
Intel MB BOXDG965WHMKR Motherboard $72
2GB DDR2 800mhz Ram $175
E6400 Core 2 Duo CPU $222
And 4 of these:
320GB Hard Drives $90x4
Total: $959 + Shipping
I'll also probably get a 2GB compact flash card and an IDE to flash adapter, giving me a solid state recovery "disk" for emergency use. It's about $30 for both. The 4 drives will be in a raid5 array, so total usable storage will be 960GB. The lost space goes to redundancy, so if any one drive fails, no data is lost.
The real question this brings up is how to go about the transfer. It'll take me several weeks to configure at test the new server once I get the parts, but when it comes time to actually replace the old one, I have to figure out the plan. See, it'll take about 3 days to ship the new one up there, and I won't have access to it during that time. That means that any data I have on it from users will be 3 days old by the time it gets there, and everyone will lose any updates they've done in those 3 days once the old server is powered down.
So I have a few options:
#1 I can lock the old server into read-only access when I sync the new one. This would happen right before I ship it to the datacenter. That would leave things sorta running while the new one is in transit, but no updates would be possible, no forum posts, no email, etc. But on the plus side, there would be nothing tricky to do once it got there. They'd just swap it for the old one, and everything would start running normally as soon as that was done.
#2 I can just warn everyone that as of a certain time/date, updates after that will be lost. People can still use forums and such for the intervening days, but everything will just "revert" back about 3 days once the new server comes online. Double trick with this is email. I don't think many people would be willing to lose 3 days of incoming email.
#3 Basically the opposite of #1. Leave the old server running normally, but new server would be read-only until I get the old machine back in my own hands and can get the data off it and send it to the new machine.
#4 Host the new machine somewhere else, and have some overlap time before I cancel the hosting on the old one. This would let me do a live sync, and would be nearly seamless. The downside is that I can't find the sort of bandwidth we need at anywhere near as good of a price. We basically need 3-5mbps connection, or around 1.5 terabyte a month, and space for a 2U box. Right now we've got 10mbps for $109/month I can't seem to beat that with a stick.
Anyway, I'm posting this here both as a heads up on what'll be happening in the next couple months, and also to ask for opinions and/or ideas. I think the server components are pretty much the right choice, but if someone's got a better idea, feel free to suggest things. As for how to do the transfer... I really do need some opinions on that. Also, if anyone can find me a good deal on server colocation that's even close to the price I pay now, I'd definitely like to know.