As some of you have seen on my Twitter feed, I am playing with some home virtualization ideas. By Home Virtualization I am referring to running ESXi Hyper-visor at home for my “servers” as well as trying to see if I can virtualize the families computers. This is an interesting concept that comes with some unique challenges, and a few of them I am still trying to figure out!
The server part has been the easy one, just did a Physical to Virtual (P2V) conversion via the free tool VMware vCenter Converter at VMWare – link. The tool will allow you to take a currently running server and convert it to a Virtual machine on your ESXi server. I moved my families Domain Controller / DNS server over, powered it on in the VMware console application, then powered off the physical box. Once the IP address was moved to the new server, everything just worked.
Curious note on the P2V tool. I have also used this when I purchased a new computer or fix a friends computer. I will P2V the computer first, this way no matter what happens I can still spin up the old computer under VMPlayer – link. When I get a new computer I just copy the Virtual Machine to my new computer so that I can access all the old software and such whenever I need to. If I need to see how something was configured, just launch the VM and take a look. It is an snapshot in time of the old computer.
You might be wondering why I have a Active Directory domain at home, its because I use it for all my network authentication as well as hours of access for the kids. Our wireless authenticates with it, the VPN does as well, our computer accounts authenticate, the families home drives are mapped to the NAS boxes via their login accounts, etc. The DNS is also on this box for the family and that is because I can create aliases for sites I do not want the kids to go to. Might be a bit crude, but it does work when I need it to. Many times I have mapped their game sites to Disney.com IP address when they where either bad or not listening. Cruel, I admit it – but it does work 🙂
What else am I doing with the ESXi server at home? Easy – I have installed some OVF (open virtualization format) devices on the VM to test out different software. Infoblox has a copy of their DHCP/DNS/IPAM tool available for free download to try at the VMWare Virtual Appliance Marketplace – link, you can find hundreds of pre-built VMS/OVF to download and play with. There are Juniper SA appliances if you want to experiment/learn on that platform – link; there is BIG-IP from F5 as well; web filtering by Trend; there is even a copy of Back track available to download and use. It is a nice platform to be able to test different machines with without having to have a physical machine to do the testing on.
So, in a way, one of the real reason is for being able to experiment and learn with other platforms – not just Operating Systems, but networking gear as well as tools. I have mentioned the Juniper SA Appliance, and for those that are unfamiliar with it it is a Security Access Platform. It can be used for SSL VPN connectivity for remote access, it has Junos Pulse which is a multi-service network client for mobile (smart phones and such) and nonmobile devices, Secure Application Manager for accessing applications internal to your network via the Internet in a secure fashion, and a few other things. There is also a Cisco UCS Simulator available (link) where you can download a UCS simulator where you can learn and experiment with that product line without having the actual hardware. Then there is always the Juniper Olive which is a simulator that you can run Junos and learn, the standard GNS3 for Cisco, as well as the infamous Cisco IOU.
Now the other reason that I am playing with the technology is because I am trying to find a way that I can virtualize my families computers. In other words I would love to get rid of about 4 PCs around the house and replace them with “dumb terminals.” This would obviously reduce my power requirements since those would be disk-less workstations, all compute and storage would be on the server. This is a wonderful idea in my opinion, the thought of being able to “snapshot” the kids computers monthly, and when they get a virus, trojan, malware, install crap software, whatever – be able to rollback to the previous snapshot in minutes. Another benefit would be that I know the server performance and can monitor all the statistics from a central server. I would be able to identify where there is a problem and address it before it gets out of hand. Not to mention the idea that the server has redundant hardware, so I do not have to worry about losing a drive and all the data associated with it.
There is a problem with that idea though, there is no home model for VDI (virtual desktop) from VMware. All their pricing is geared to small businesses and enterprises. While I can see that there might not be that big of a market today, I can foresee one in the future. Computers are getting more and more powerful as well as cheaper, memory and disk drives are cheap, so quite often you have some serious overkill for a single computer. The thought of being able to use that money and power in a server has my attention – I would rather spend $1000-2000 for a decent home server then 500-700 on a computer 4 times over, and then again in a few years when it needs to be replaced. Server hardware and such is more geared for 24/7 use, and thus built for that. The servers have hot-swap drives, external storage that can be expanded, heck – you want to upgrade OS you can just create a new VM and then duplicate that install – no need to upgrade 4 or 5 computers, just copy the “gold” config for each of them.
I have also tried creating Windows XP/7 hosts on the VM and using RDP via Wyse terminals to access the computers; and this does work, and works well to be honest. There is one major drawback that I have run into, its Video performance. There is an audio lag when you are watching Flash (Hulu), Vimeo, YouTube, etc. I want to try PC-over-IP (PCoIP), but that requires a VMview license – and as I mentioned, there is no real home user pricing model available. From what I have seen at work with others where we have this, that might be the solution to get this to work – but there is a large cost barrier to overcome – $1800 for 10 licenses. Well, a home user might only need 2 or 3, perhaps 5 and, at that price, it is too much. If the cost was closer to $500 for 5 home computers, I would be all over it – and I think a few others would be as well. Perhaps there is room for another vendor to fill this market gap – Microsoft? Citrix? Someone new?
So what am I running for a ESXi server, it is a 1U server by a well known company, two physical CPUs with 4 cores each for a total of 16 logical processors, 24G memory (ESXi 5 free hypervisor supports 32G max fyi), an LSI RAID card for the SATA drives, 2x500G (RAID1) for the ESXi software and ISO images, and 2 x 1.5TB (RAID1) drives for the VMs. There are 4 NICs on this box all connected back to my home network as well as one Lights-out port for managing the server from the network. Below is a screen shot of the summary tab, it s a pretty basic setup – one anyone could do! It is really a basic 1U server that is just loaded with memory, you could run it on a i7 desktop just as easily!
That about wraps it up for this post, let me know what else you want to know and I would be glad to add it!
Bob McCouch said:
Jeff, I’ve looked at similar ideas with little success. You might want to check out NxTop from Virtual Computer (virtualcomputer.com). It’s a distributed VDI solution so it does NOT get around having some horsepower on each desktop/laptop, but it provides a bare metal hypervisor that handles VDI managament like backup to a central server, etc. I believe you can push updates or new images from the server as well. I have played with the stand-alone NxTop engine hypervisor and it’s pretty slick. They have a free copy of the management platform that manages up to 5 client machines.