Hey,
I just finished migrating several servers to a private rack, and overall things were pretty smooth... Being able to plan (in advance) which IPs we were going to use (and for what) was great!
1). 2 of the servers were new so we started out by having them setup on the rack first. 0 downtime
2). Another server (with moderate traffic, and one site) was moved to the rack from within the same data center. 30 minutes (+/-) downtime.
3). We then moved a large site (12GB w/hundreds of active mysql databases) from a server in another data center (to one of our new servers). We decided it would be less painful to shut this site down during the move. 2 hours (+/-) downtime.
4). Next we had 2 more servers from the same data center moved to the rack. Downtime was obviously unavoidable here, but the biggest contributing factor was the DNS updates required for the (roughly) 150 domains on these servers. We use DNS outside of EV1 (bulk updates are not an option), so this added an hour of downtime to some of the sites; even though I started updating the DNS records as soon as the servers were shut down... 1-2 hours (+/-) downtime.
Doh! This rack is now full...!
Optionally, we could have migrated most of the sites to new servers one-by-one (been there done that) with zero downtime, but no matter how much planning we do, there is always the chance that we'll miss some obscure setting related to one of our customer's sites (and of course that problem wouldn't be noticed by that customer for weeks)...
Nick