Wednesday, October 29, 2008

A Lesson In Caveat Emptor

I received a somewhat painful but memorable lesson this week on caveat emptor. As you probably recall, I’m in the process of switching from the world of PCs and Windows to that of Apple: specifically a new iMac and OS X. A challenge I’ve run into in the process of switching is that some of my heavily-used Windows apps don’t integrate well with apps in the Apple domain.

Microsoft Visio 2007 and Microsoft Projects 2007 are darn near irreplaceable for me. Most of that has to do with the fact that I know how they work and don't relish the idea of relearning the same functionality on new apps. So my idea was to simply bring those apps along with me. I could run a Windows XP virtual machine on my new iMac and happily cruise along with both Visio and Projects for some time to come. So I did some research, asked some Apple gurus, and discovered that VMware Fusion was the top-notch product for Apple-based VMs. About a week ago, I plunked down a few of my hard-earned dollars and purchased a copy of VMware Fusion 2.0 (“VMWF”). In retrospect, I should have known better than to buy any software in a version number ending with a zero – this was the ultimate triumph of enthusiasm over experience.

After my purchase of VMWF, I began working to convert my laptop data into a new virtual machine. My first clue that things were not going to proceed smoothly came early: the documentation and what I saw on the screen were not exactly the same. They were close, but not exactly the same. Still after some puttering, I managed figure things out and get the process going.

I encountered my second clue while converting the data on my PC laptop. According to the documentation, converting the data and moving it to my external hard drive should take about 45 minutes over a USB 2.0 connection for the amount of data I have. My experience was more like 6-plus hours. Now, I’ll admit that I push the envelope in my Windows environment…there are some pretty unique things I have going on there. Nevertheless, missing the documented target by a factor of over six is a pretty big glitch from my perspective.

Third clue: after moving the converted data to my iMac, VMware Tools won’t install. Without VMware Tools installed, the graphics and mouse movements are pretty jerky. In addition, there is almost zero integration between the apps running in the virtual machine and those running natively in OS X…not a good thing.

So after Clue #3, I hit the web to do a little more research. Turns out that there are quite a few VMware users having problems similar to those I’ve had…not all customers, but still a fairly significant number from what I can tell. In addition, there are quite a few virtual machine “experts” sharing the opinion that sometimes that’s just how things go with installing virtual machines; you just have to clean things out and try again. Fair enough – I’ve made cleaned off everything, freshly installed VMWF, converted my data, and so on four times in the past week. No success. I’m all done with “If at first you don’t succeed, try, try again” approach to these issues. Also tried various other fixes with no luck. In essence, I've burned the better part of a week on this little project without making any progress whatsoever.

So, finally admitting the ultimate geek defeat, I contacted VMware Customer Support. Got a service ticket number. Two days later, I’m still looking for a response. Seems they’re a little busy – no surprise there. So I’m pretty much done with VMWF other than trying to get a refund, although I’m not holding my breath on that. Realistically, I think I’m a few dollars poorer and stuck with some not-quite-ready-for-prime-time software. While that’s a sad story, it’s not really worthy of posting here. But that’s OK, because it’s not where this story ends. Sorry for the long setup, but here comes the good stuff now.

My experience with the desktop virtual machine thing got me thinking. I started wondering if enterprise customers running virtual machines were stuck in the same boat. The sales message is wonderful: save money by eliminating hardware, “Green IT”, and so on. But I wonder if those enterprise customers who bit on the message are really satisfied with what they got. So, I tap into my network by dialing up a few system administrator-types I know to hear their thoughts. While I did not build up a statistically significant sampling of all enterprise virtual machine users, what I heard from the folks I know was pretty interesting.

All the people I contacted stated that their use of virtual machines provided significant cost savings through the elimination of hardware and the reduction in power needs. However, there are trade-offs. I also consistently heard comments like “performance degrades quickly under heavy loads”, “requires more oversight to keep things stable”, and “works great as long as the apps configuration inside the virtual machine is standardized”. The latter comments have made me rethink my perspective on utilizing virtual machines.

The nature of the work I do with applications and technology pushes the envelope. I’m not much for standard configurations when I'm attempting to innovate. Nor do I personally have much tolerance for performance degradation or instability – those types of issues either get resolved through trouble-shooting (minor point: as a fine example of human inconsistency, in spite of my low tolerance for troube, I LOVE trouble-shooting work) or moving to another platform that’s more capable of getting the job done. The technology has to work for me…I don’t work for the technology. In regards to virtual machines, my opinion (and keep in mind that all of this is only my opinion – nothing more) is that they’re probably fine for basic work – standard, even repetitive stuff. Email, web browsing, spreadsheets, word processing, and other types of basic work or transactions. But I would probably be concerned about the viability of a virtual machine platform if I were doing anything too out-of-the-box: critical work with heavy loads or variety in the apps utilized in the virtual machine, for example.

Now I’m sure that virtual machine technology will evolve and get better as customer uptake increases. It could be that I'm just expecting too much too soon in the evolutionary cycle. However, on both a personal and a professional basis, I just can’t wait for the technology to improve.

Getting back to my iMac and me, we’ll probably junk the virtual machine idea altogether and try out some different alternatives: OmniGraffle as a Visio replacement and Open Proj as a MS Projects 2007 substitute. Worse comes to worst, I’ll keep my Windows PC around for awhile until I get this figured out...guess that could make me an "adder" rather than a "switcher".

On an enterprise basis, I’ll be following and recommending the following guidelines for now: 1) virtual machines offer great value so long as you can standardize configurations, stick with fairly basic work, and control the load; 2) if you don’t fit into these constraints, be careful about expecting too much too soon from what is still an emerging technology…caveat emptor.

6 comments:

Anonymous said...

Hi Floyd,

Thanks for the interesting post. Sorry to see that VMware Converter (I assume that's what you were using?) treated you so poorly. I haven't used that particular tool myself; rather than convert my work machine, I took the opportunity to "start fresh" with a new XP VM install and dropped in the few bits of software I couldn't get on my Mac. But I'm guessing our respective Windows usage patterns are very different, and telling you what worked for me is probably both low-leverage and annoying, so I'll stop now. ;-) It's too bad that you've had such a lousy VMware customer experience, though; VMware have really dropped the ball there, and missed a chance at some user-generated evangelism.

Your observations about enterprise-level virtualization are consistent with my experience (disclosure: as a DBA, I was more of a consumer of the enterprise VM tech than an administrator). It's easy to buy into the promised benefits of server consolidation through virtualization, but without careful planning, it's also easy to just move problems around: All of those "wasteful" servers go away, and CPU and memory utilization go up to reasonable levels. But the usual performance-management whack-a-mole game still exists; more often than not, it's the I/O and network subsystems that take the hit. What's often missing from the marketing material is the fact that you still have to plan to deal with spikes in demand, and that determining how much overhead is needed to relieve those spikes can be tricky. At my last job, we were fairly successful running most of our Oracle test servers in a VMware cluster, including several E-Business Suite instances. It probably didn't make us an exotic implementation, but it went a little beyond the typical "consolidate your file/email/print servers" example. While not without its occasional headaches, the prevailing opinion was that the net management burden was lower.

I don't mean to sound like an apologist, but it probably reads that way. :-) I'm just a usually-happy VMware user who's bummed to see someone get burned by the product. I hope the remainder of your "Switch" goes more smoothly, and I'd be interested to hear your take on OmniGraffle as a long-time Visio guy.

Regards,

John P.

fteter said...

@john piwowar: no need to be so apologetic; I'm sure mileage will vary quite a bit among various virtual machine users, VM customers or otherwise. In fact, I'm very grateful for your perspective on this. You're giving exactly the kind of feedback I hope to get here - the discussion and exchange of ideas is much more important than having readers agree with my worm's-eye view of the world. Thanks for sharing your experiences with virtualization.

Anonymous said...

Floyd,

I have been using Parallels 3.0 for Mac on Leopard (10.5.5) with my macbook pro and on my wife's iMac for more than a year now. No issues and it runs Windows XP with Visio 2003 and MS Project 2003 without issues.

Also, it has a convergence mode where windows apps seem integrated in the OS X environement (I don't use that mode personnally, but it seems to work fine).

I also sometimes access EBS R12 in firefox 3 in this virtual machine just fine.

Hope this helps,

François
http://eyeonapps.gendron.ca

Mohan Dutt said...

My company has started using VMWare in a big way. However, in one of our recent projects of implementing a third party solution with Oracle EBS 11i. We had an interesting experience. There was the "performance degradation" scenario with high memory swapping and so on. The ISV suggested that we eliminate the VMWare config since that was the culprit. It turned out some of the ISV codes were not tuned but in the end VMWare took the fall as the project never back to VMWare config. Seems from your blogpost and our experience, VMWare have to get more success stories to have bigger faith on it by the system administrators/implementors.

Pete Scott said...

Omni Plan could be a Mac alternative to Project - it does read MS Project files only can save back to Project as XML. This is no big deal for me - being to read other people's plans is more important than me sharing an updateable plan.

I am running Fusion 2 without problems - but for me I already have the VMs on the previous release so this was just a matter of opening the existing VM and let it upgrade.

effendi said...

Different people, different experiences I guess. I switched over a few years ago to a Linux based laptop from Windows and started using vmware workstation to run the few Oracle Apps / developer tools, etc that I didn't have a comparable linux version for. I used vmware converter to make my own physical machine into a VM so I'd have little to no downtime as I learned a new OS. This worked ok, but i found that all the crap I had on my old physical machine really slows down a machine -even if it's virtual. Now I just (when needed) make a new windows VM and install my few apps into it.

I still use vmware converter to support when our users upgrade machines - they get their old machine as a VM so they can keep working while setting up their new machine.

Vmware, just like Oracle or any other complex software, can be challenging and have issues to get it up and running.

I've been impressed with VMWare over the years though - extremely extremely impressed. So much so that at my main client where I am the primary Apps Oracle DBA and Linux admin, we're virtualizing all of our Oracle Apps environment into VMware (ESX).

I guess my point is, you've had a bad experience - vmware is probably my favorite bit of technology.