I was lucky enough to receive a new HP EliteBook 8440p laptop last week and quickly realized it was a vPro machine. First thing that popped into my mind was ‘Is this on the HCL for XenClient?’ Sure enough it was, so I proceeded to download, format my laptop, install XenClient, and explore this new technology. I have been running this for almost two weeks now. Here are my thoughts so far.
First, for those not familiar with XenClient, it is a Type 1 Hypervisor from Citrix that runs directly on your laptop. I wont go into too many details as many people have written on it, including myself. Along with most people, my first post discussed how it seemed that this product was rushed when it was released at 1.0. Have things changed with SP1? That’s what I wanted to find out.
Installation was fairly simple. I downloaded the ISO from Citrix’s website, burned and was off. Well, or so I thought. First error I got was about my BIOS not being configured properly with VT. Reboot and into the BIOS I go to correct it. Once that was fixed however, things went off without a hitch. Installation was a simple text-based installer similar to any Linux-based Distro.
For the initial installation, I decided to forgo Synchronizer and just install XenClient and create VMs locally. I started off creating a Windows 7 x64 Professional box to house my work environment. Everything ran smoothly. The only caveat is peripheral devices such as Webcam and Fingerprint Scanner need to be added to the VM post boot. Webcam works fine, however FP scanner is still giving me some issues, but its more on the Windows side, so I need to tinker with the drivers some more. XenClient itself recognizes the FP Scanner.
Next I built another Win7 VM for personal use. Again, no issues. Then I decided I wanted to play outside of the box a bit. Currently, only 4 Guest OSes are supported: Win7 32bit, Win7 64bit, Win Vista SP2 32bit, and WinXP SP3 32bit. I’m sure Citrix is planning on expanding the support OSes, but until then, anything outside of that is unsupported. Well, I figured it couldn’t hurt to see what was capable.
I decided to build a Fedora 14 x64 Desktop Edition VM. Things went rather smoothly, aside from the large orange error triangle over the VM icon due to a lack of tools being installed. System runs fine and finds most of my items. The only thing not functional is the webcam and fingerprint reader, but issues are to be expected with unsupported technology. That said, none of the issues I found were major showstoppers. The VM runs great and I can certainly use it on a day-to-day basis. I hope this is a sign that Linux support is on the way since they are very close as it sits now with XenClient 1.0 SP1.
Day to Day Use:
Since I didn’t have as much time to complete this article in the time I wanted to, due to work and personal obligations, it did give me much longer hands on time with my XenClient laptop prior to publishing this. All and all this is a very viable solution. I did have to upgrade my memory as the standard 2GB just wasn’t enough. After installing 8GB of RAM, this became a lot more viable day-to-day product. I am now able to run 3 VMs at once with no issues. This allows me to run my work image, which consist of a Windows 7 VM, my personal desktop image, the Fedora 14 Desktop, as well as a test VM, usually an XP or Win7 machine, to install new products and lab stuff out as needed.
Swapping between VMs is a simple as pressing Ctrl + the number key corresponding to the proper VM. Pressing Ctrl+0 allows me to go back to the XenClient landing area and select between my VMs, modify them, or edit XenClient settings.
Overall performance of the VMs were excellent. Keep in mind my day-to-day work involves no crazy 3D graphics, or insane amount of CPU intensive applications. Things certainly perform up to my expectations for my day-to-day work. Office 2010 runs great on my Windows 7 VMs. Browsing is fast and responsive, and blogging works with no issues. I don’t notice any stuttering with watching videos online or listening to music.
On my Windows 7 work VM, all of my day-to-day items, such as vSphere Client, Office 2010 Suite, AD and Windows Admin tools, as well as all the other items I run throughout the day perform perfectly. I did notice if I enabled the ‘Experimental Feature’ for 3D Graphics Support, the Windows Experience Index went from a 1.0 to a 4.2. If someone performed a more graphically intensive task, this would certainly need to be a feature that they enable.
Issues and Complaints:
While overall I am impressed with XenClient, there are some issues. As I said in my last article, it seems sketchy that most of the good features that one would expect in this current technological climate with virtualization are all labeled ‘Experimental.’ The limited hardware and guest OS support does create few options and shrink the audience of users for this product. Also, the fact that the maximum amount of memory I can devote to a VM is capped at 3GB, which can be a hinderance for VMs with a heavier workload. Another issues I noticed was whenever a secondary VM shutdowns, the primary VM you are using flickers in an out for about 5-10 seconds. Things return to normal, but it is a bit of an annoyance, and caused some panic the first few times it happened. All and all minor issues, but things could certainly be more polished and less ‘experimental.’
After running XenClient for a week, I decided to install Synchronizer and give it a shot. The idea behind Synchronizer is a good one, but I think the execution is a bit off. It’s nice to be able to sync your VMs with a central store, but it seems more like a backup option than anything. Maybe its uses will continue to grow, and more features will be added. I also find it inconvenient that you must build a VM inside XenClient and then sync it up to the Synchronizer, and there is no way around that. It seems like I should be able to P2V a box and dump it right to Synchronizer. Maybe Citrix will add this feature, and hopefully add it soon.
All and all I think XenClient is a great product. It is what Citrix hyped it up to be? No. I think they rushed a product out just to have the bragging rights of being the first major Type I hypervisor on the market. In its current state, I see this as more of a tool that IT professionals, or tech savvy users will fully embrace and use. It certainly isn’t ready for primetime as a Virtual Desktop solution and is definitely more of a niche product in this stage. I hope Citrix continues to grow this product and increase its capabilities, such as more OS support, greater hardware adoption, and increased features, as well as expand the scope of the target audience. Synchronizer could use a bit more thought, work and polish as well. I think this product and technology has a lot of potential, and I do think its something I will continue to use and hopefully continue to upgrade often (hint hint Citrix 😉 )
Today is day two of VMworlds and VMware’s Keynote speech was atop the list of things to see. A majority of the info has already been rehashed all over blogs so I wont go into details, but I did want to touch on a major point that was mentioned. Paul Martiz, President and CEO of VMware, announced that for the first time ever, the number of virtual machines has surpassed the number of physical machines.
This is huge news in the field is systems administration and engineering. This means the tipping point has been reached, where virtualization is no longer just a cutting edge technology, but the norm. Admins and engineers will now be required to know the ins and outs of virtualization and shift from the standard practices of physical environments. The VCP will become, and is becoming, a more common certification, and one they may even be required. The impact of this though, is that admins and engineers will require more training and knowledge than ever before, because while physical servers just require systems to be racked and OSes installed, virtual environemnts require knowledge and planning of storage, networking and scalability and capacity planning.
All and all, this is a good thing and I for one and glad to see this technology that we all enjoy thriving so well. I hope to continue to see if and maybe even by 2012, see the numbers be 75%/25% for virtual to physical systems.
When talk performance with any virtualized server environment, CPU Ready is a common key indicator of how well your VM is performing. However, its not always a cut and dry explination as to why your CPU Ready times are high.
To start, for those that aren’t aware, CPU Ready is:
The amount of time a virtual machine waits in the queue in a ready-to-run state before it can be scheduled on a CPU.
This means that a VM is ready to process something, however, it has to wait because the CPU resources it requires are not available on the physical host.
Before we examine causes of high CPU Ready, lets try to look at what are acceptable values for CPU Ready time. Unfortunately, there is no hard set value to say ‘Yep, your CPU Ready has crossed the ‘its bad’ threshold.’ General rule of thumb is that your CPU Ready time not be higher than 200ms if being checked in the vCenter performance charts, or 5% if being checked using the esxtop command. Again, this isn’t a hard set value. Your VMs role may require less CPU Ready time for more critical functions, or may be more lenient to longer CPU Ready times as well. It all depends on your environment, and its up to you as an admin to determine what works in your individual environment.
After a delay, I bring you Part 2 in the discussion of Physical vs Virtual Provisioning. In the opening post of this series, I gave a few recent examples of VM request that had graced my screen and shocked my brain. In today’s post, I want to examine some of the reasons why the requirements differ from a physical to a virtual machine.
The main difference between a physical machine and a virtual machine is the lack of hardware. By lack of hardware, I don’t mean there is no hardware at all; we all know there has to be hardware somewhere. By no hardware, I mean the machine and OS itself aren’t aware they are virtual and don’t run on its own physical server. I don’t want to get too caught up on that discussion. The point to my comment is that the lack of the physical hardware means a lack of physical hardware drivers. We all know how much of a pain, and resource hog, drivers can be. No one really knows how much of your CPU cycles and Memory I/O activities are the work of drivers translating actions between the physical and application level.
Part of my day-to-day job is to deploy new virtual machines for the client. These VMs are deployed with specifications given to us by the client. Lately, I’ve noticed an increasing trend of over-powered virtual machines being requested, and it seems the mentality for these request is that the application states the physical requirements, so that is what is being requested of us. This increasing trend kicked off a debate between myself and a few of my co-workers on the topic of Virtual Provisioning versus the Physical Requirements.
First, let me start of by stating that my client is very new to virtualization. We are only utilizing about 95 Virtual Servers, 80 Virtual Desktops, and 13 ESX host, mostly in a non production environment. We are mid deployment of our largest, full production data center. The client is definitely eager to jump into virtualization, but still hasn’t fully grasp the concepts being virtualization.
My latest VM provisioning request was for a Windows Server 2008 x64 Enterprise Edition machine. The VM will be used as a Sql Server Reporting Services (SSRS) machine in a test/development environment. The VM will be used to assess the benefit and abilities of SSRS, and determine if it’s a viable solution to deploy into production. Given the use of this VM, I figured the required specs would run along the lines of 1 vCPU and 1-2GB of Memory, right?