There are pros and cons to working on any kinds of projects, and a setting up a home virtual server is one of those projects that you really need to weigh each and see if you’re up for it. Having started well down the path of implementing one in my home, I think for me it’ll be worth it in the long term going this route. I’ll tell you some of the benefits and drawback I think I’ll have as well as some of the requirements I started out with in my head.
So in my house, I try to keep the running computers to what I think of as necessary, for the sake of both my wife and electric bill. As far as desktop machines go, I’ve really just been running one or two for at least the past 4 years. I have my “main” desktop rig that is mostly for general purpose and a little gaming. I also tend to run a home server machine that has mostly served it’s life as a file server. I’ve wanted to look at running other services for my house, but never want to mess up what might be considered “core” services for the server. This is probably the biggest reason I decided to implement a virtual server as my home server replacement. With virtual servers you literally have the ability to play around with installing and implementing test packages and services without having to worry to much about your “core” services being taken out of commission. If you heard about a new whiz-bang piece of software that you want to try out; just start up a new virtual machine, install it and test it out. If it ends up that it’s unstable or doesn’t do what you want it to, you can just delete the virtual machine and never have to worry about it again, and the entire time your “core” services stay up and running.
This is probably the biggest benefit for me and is worth the added complexity; and trust me, there can be plenty of added complexity. For all intents and purposes, each VM shows up to the network and other computers as a distinct computer. They also act and feel like a distinct computer, and with it being them being fairly simple to create, you can quickly find yourself going from managing 2 computers to managing 12 “computers” and all the updates and tinkering that come with them.
I’m fairly light with my requirements. I have a computer that I am planning on converting to do this and I have a small budget for anything I might need to add. I’m planning on it being just a stand-alone server since I just have one spare computer, so I”m not planning on separating out storage and no plans for high availability yet.