ZDNet publishes some wonderful articles and have some very talented and knowledgeable technically savvy writers. Having said that, they get the award for most ridiculous, the silliest, the most off base and seriously flawed article I've read in a very long time. In a piece published this morning called Don't Throw Away Your Physical Servers Just Yet, the author, Ken Hess, wrote a piece that ridicules and derides anyone who doesn't virtualize literally all, as in every last one, of their servers. No, I'm not exaggerating. Here is a particularly striking part of this gem of technical writing. It's the summary for the entire article, no less:
You'll need to keep some physical systems around for those workloads that can't go virtual. And, be sure to keep a horse and buggy around when that whole automobile thing doesn't work out too.So, physical servers are as obsolete as the horse and buggy? Is that so? To emphasize the point the article features a photo of a dumpster diver pulling out old PC hardware. All our physical servers are nothing more than garbage to Mr. Hess.
Mr. Hess points out that he is a virtualization advocate. So am I. He says he is a Cloud advocate as well. That is one distinction we don't share. There is nothing new about the Cloud. Virtualization has been around for a very long time. Both have their places. I'd even say that they make more sense in more roles than ever before. They aren't a panacea, Ken. May I call you Ken? I mean, I must be on a first name basis with someone who obviously knows my business and my customers' business better than I do or they do. Nah... I'll stick with Mr. Hess. I don't want to seem too disrespectful, do I?
My little consulting firm supports mainly small and midsize businesses. For some of them virtualization is just an added layer of complexity. If they use VMWare, as you suggest, rather than Open Source solutions like KVM or Xen, it's an expensive layer of complexity too.
Virtualization is great for compartmentalizing applications and server functions. Let's say I have a LAMP stack with multiple domains hosted and rather complex websites. In that scenario it makes sense to consider virtualizing each domain rather than configuring them as virtual hosts within a single Apache configuration. It also makes sense to separate the database server from the web server. It may also make sense to separate distinct databases back-ending different sites. Virtualization is often the best way to do that in order to leverage the full power of a large and well provisioned server or cluster of servers. It makes each site, each database and each application easier to manage.
Even in the example I just gave, where I advocate virtualization to simplify the management of the web stack, there are costs. Virtualization always adds overhead which means it requires more powerful hardware than old fashioned physical servers for the same level of functionality. After all, each instance of the operating system, database and applications requires a certain amount of resources just to run at near idle. The additional server resources cost, whether they are on physical machines in a corporate server room or rented off in the Cloud.
Speaking of cost, refreshing the hardware regularly is often cheaper than renting it off in the Cloud when you take depreciation into account. Keeping physical servers around doesn't mean maintaining old junk as the article claims.
Let's take a look at Cloud based solutions for a moment. What Richard Stallman warns people about the Cloud for the desktop applies even more so to servers. My readers know I often disagree with RMS but in this case he gets it absolutely right. Here is a case in point: a former client decided they didn't need physical web servers anymore and moved everything to Amazon and their Cloud, all nicely virtualized, against my advice and the advice of the other consultants involved. Guess when that happened? Were they hit when Amazon lost oodles and bunches of customer data? You bet they were. It also is more expensive than just keeping the very nice physical cluster they had.
We all know that Cloud providers are all brilliant when it comes to security and keep all your data safe, don't we? We know that a certain Cloud provider whose main business is really data mining would never, ever mine your confidential data in their Cloud, right? I mean we are all certain that we can really trust them no matter what. None of the Cloud providers ever get hacked, do they Mr. Cloud virtualization advocate? Your customers' credit card and financial data is always safe with them.
If you don't mean the Cloud then you must mean do-it-yourself virtualization. All those nice virtual servers have to run on physical hardware at some level as well, Mr. Hess.
Keeping all that in mind, why should a specialty retailer who is a client of mine with just a single website on a physical server virtualize? What would it do for them other than robbing CPU cycles and memory from their critical apps? I recommended virtualizing their development environment to isolate it from production at a relatively low cost, which they did. I did not and do not see value in virtualizing the production environment. It's too simple to need to be compartmentalized and broken down. There just isn't any real benefit to doing it.
Yes, I am a virtualization advocate. I heartily recommend KVM to my clients. Now that the last patches for Xen are being incorporated into the mainline kernel if the enterprise Linux vendors support that I will recommend it as well. It's actually more mature than KVM and the paravirtualization features are really slick.
I recommend my customers do a real cost/benefit analysis before jumping on any new, hot technology bandwagon. How will it benefit the business? What will it cost? What, if anything, will it add to the bottom line? How long will it take for the business to see a return on the investment? How will the change impact security? That's how real, sensible companies should make business decisions. Just because some know-it-all tech writer is all hot and bothered about virtualization and makes fun of physical servers is not a rational reason to make any decisions. Not only is your article not humorous, Mr. Hess, but it is seriously misguided. Virtualization is not a panacea and physical servers will have their place for a very, very long time to come.