We recently made the decision to upgrade our network and virtualization environment. Thanks to Matt’s careful engineering and configuration, Greg has been able to migrate some serious client data. One of the things that I think is cool about our setup now is that we have the ability to move IP addresses around that might be assigned to some of our clients websites.
As I have mentioned before, Matt Critcher is one of the most brilliant server administrators / engineers that I have ever had the opportunity to work with. He recently blogged about our migration to VMWare ESXi 4.0 on his blog, I have posted excerpts and links to both of his posts below…
VMWare ESXi 4.0 migration
As I posted last time, we decided to move over to ESXi and so far, its been pretty smooth. ThePlanet installed ESXi 3.5 on our servers, which I quickly upgraded into 4.0. When you install the vSphere Client there is an option to install the host update utility. Run it, point it to the zip file you’ve download from VMWare’s website, and wait a bit. It works like a charm (put the machine into maintenance mode first!!). Since the servers had no clients running on them, I did it during the day (which let me sleep last night! lol!!) I’ve been copying over the VM’s from our VMWare Server machine with good ol’ scp and using the vmkfstools command on the ESXi box to convert them into ESXi format. Takes about 30-40 min per server for the whole process, which isn’t exactly quick, but we’re moving low-traffic boxes in very off hours. I moved the server that this website runs on during lunch today….;o)
2 days later Matt added another post regarding the migration…
VMWare ESXi 4.0 Migration, Part Deux
As I wrote about last time, Pleth’s move from VMWare Server to VMWare ESXi has been very successful thus far, but in the process we’ve discovered a couple of "neat tricks" and have proven to ourselves that the technology choices we made a few years back were indeed the right ones.
When you copy a .vmdk (vmware disk image) over from a VMWare Server machine, you have to convert it over to ESXi format. This process makes the resulting disk image the whole size that you’ve allocated. This isn’t necessarily a bad thing, but if you had it set to thin provisioning in VMWare Server your disk usage just went up. WAY up.
We were working off of a template that we could clone into a new VPS rather quickly, so we settled on a default VPS size of 20gb. There are definite benefits to provisioning the entire disk at creation, but when you sell several to different customers using thin provisioning allows you to minimize the total size of the datastore because most of them are never going to use the whole 20gb we’ve allocated. In fact, most never use more than a few hundred megabytes that their website actually takes up. We’ve got plenty of space available even if all were fully allocated because we don’t believe in overselling disk space even if some other providers do. Having smaller disk images makes moving the machines from one ESXi server to another much easier and faster if the need ever arose, thereby limiting downtime. Now, you can avoid all of this by running your VMware environment on a SAN with tons of disk space and using vCenter and VMotion but given our small size, budget, and very small number (7) of VM’s we just can not justify the extreme yearly costs associated with it.
So how do you get around this? You leverage the technology you have to the fullest extent. We spent a lot of time evaluating different products and have tried to make the decisions that allow us to provide the absolute best service given our budgetary constraints. This led us to purchase a private rack at ThePlanet, an entire class C of IP addresses, and lease some extremely powerful machines for our hosting environment. We’ve chosen great software to help manage our hosting customers, and probably our best decision was to invest in a product called R1Soft CDP. It has the ability to make multiple block-level snapshots of servers per hour and can Bare-Metal Restore one in just a few minutes. I can not say enough how well R1′s CDP works. Over the past two years it has saved us HOURS of downtime and tons of headaches more times than I can mention. The ability to make so many snapshots so quickly lets you look like a rockstar when a customer calls and says "I accidentally deleted all changes I made this morning" and you can put them back in 30 seconds.
So how did I use R1Soft to pull this off? I created a new Virtual Machine with 20gb of thin partitioned space. I then assigned the CD-ROM to a ISO image of the R1Soft Restore Disk and booted the machine. We shut all services off on the old VMWare Server VM, made a quick backup with R1Soft CDP, and shut off the VM. On the newly created ESXi VM, I did a bare-metal restore of the old one. It took about 10 min to restore about 4gb of data. One quick reboot, and voila! It’s running again. We could have used VMware vCenter Converter to do this job. It will convert almost any disk image into almost any other disk image format. It also has some distinct advantages over our chosen method namely in creating virtual appliances, but the problem for us to use it was that we didn’t have a server in our rack we could dedicate to the task — only a VPS. We would have to import the data (ie copy it to the machine running Converter) and export it to the new server, which is basically copying it twice (ESX/i to ESX/i doesn’t require this step). Our chosen method meant no copying over the data, doing a conversion, and then recreating the image. Just 10 min and it’s done (which also means only 10 minutes of downtime). Not only that, we got thin-provisioned disks back on the machines we needed it on, while the other servers got to keep their fully provisioned disks. I love technology….
I am happy (bordering on giddy) that our server engineer / administrator 




