When layers become a problem

December 11, 2009

I have seen a lot of discussion on the subject of layering of software images to deliver virtualized client computing. There are some interesting opportunities here but also a number of serious potential issues. This is too big an area for a single blog post so I am going to look at this over a number of post in the coming weeks.

There are number of different ways the word ‘layers’ is used in client computing. Firstly, when we think of our software stack we unsurprisingly think of the layers that make up that stack. Those layers are typically operating system, applications and user environment. We then think about how we manage those layers, either as the complete unwieldy stack or individually. As  such we are thinking about layers as a handy shortcut for what we want to manage individually.

Another way that the word ‘layers’ is being used is as a way of splitting the stack into a large number of separate layers. A number of small vendors are launching early stage products to try and deliver solutions based on a layer per application with those layers being delivered selectively depending on the user. The problem here is that each of the layers then needs to be managed separately including the impact of every combination of layers. Many of the organizations I talk to have thousands of applications in use across the business, that means thousands of layers and a huge combinatorial problem.

The change between the two uses of the word ‘layers’ is dramatic: In one case we are referring to three layers that we want to manage individually in the other case attempting to manage thousands of layers in a way that may well prove to be impossible. As I think of managing all those layers I am reminded of the mess that usually results from my attempts at eating a Napoleon, also known to the French as a ‘Mille Feuille’ – thousand layers.



Virtualization Executive Summit Event Review

December 8, 2009

Last week I attended the Virtualization Executive Summit, a great event attended by almost 100 Senior IT Executives (CTO’s, CIO’s, CEO’s, VP’s, Director’s etc..) from very large, international organizations. As the name suggests, the event focused on Virtualization, with a large proportion of the end user interest being in Desktop Virtualization.

I have to say, it was a very well organized and thought-out event, with each of the delegates having individual time tables based on their areas of interest. These time tables accommodated both vendor boardroom presentation sessions along with 1:1 meetings with the vendors too, so a busy two days for all involved.

As part of our sponsorship package, I was presenting in the AppSense Boardroom Session. It appeared to be very well received (with some of the attendees saying it was the best session they had been to <- queue big ego boost for me lol). There was a great mix of people in the room, some who had deployed Desktop Virtualization and some that had also done stateless / non-persistent Desktop Virtualization with a user environment management solution (like AppSense ;-) ) which was a great validation for the others in the room who are still in their planning stages.

Nearly all of the many meetings we hosted focused on the attendee’s plans for desktop virtualization in 2010, and I am glad to say, they were also asking how AppSense could help enable them to adopt the non-persistent virtual desktop model.

Thanks to all of those who helped make this a great event, and thank you also to all those who attended and are driving forward with desktop virtualization..

Looking forward to the next one :)


Deleting Orphaned Disks in Citrix XenServer 5.5

November 24, 2009

Recently I ran out of storage space on a Citrix XenServer because a number of local virtual disks had become orphaned and deleting them proved to be a little difficult, so, I thought it might be useful to share what I found lest others suffer the same issue.

I think the problem occurred because I removed disks which were attached to some VMs which had been created from templates, because I was using them with Provisioning Server and had run the XenConvert stage to copy the hard disk to the vDisk. This was so I could test that they worked without local disks, but didn’t want to delete them in case there was a problem.

I found two methods – the “hard” way and the “easy” way.  Guess which I found first?! ;)

Method 1.

From a console shell prompt run the command:

xe vdi-list

Note that vdi is short for “virtual disk image” in this context. This should result in a display similar to the following with one entry per storage item so will include ISO images as well as virtual disks. Note that this will list all items, not just orphaned ones. Pipe the output to “more” or redirect to a file and use “vi” or similar on the file produced to find the oprhaned items.

uuid ( RO)                : cb5781e0-c6f9-4909-acd6-5fd4b509d117
          name-label ( RW): Vista master for UIA
    name-description ( RW): Created by template provisioner
             sr-uuid ( RO): 72cc0d44-bea7-6c15-cf8d-c2965ca495b2
        virtual-size ( RO): 25769803776
            sharable ( RO): false
           read-only ( RO): false

Fortunately, I knew the name of the disks that were orphaned so passed their uuid values as an argument to the “xe vdi-destroy” command thus:

xe vdi-destroy uuid=cb5781e0-c6f9-4909-acd6-5fd4b509d117

The storage space freed up by deleting the disks will eventually be realized but to force this, you can manually instigate a re-scan of the containing storage repository. For this, we need to know the uuid of the storage repository which we have in in the “sr-uuid” field in the original “xe vdi-list” command above:

xe sr-scan uuid=72cc0d44-bea7-6c15-cf8d-c2965ca495b2

Method 2.

Add the disk to an existing VM and then delete the disk from the “Storage” tab in XenCenter for the VM when it is powered down :)

I hope this is of use to someone?…