Friday Jul 25, 2008

Planes, Virtualization Pools and Automobiles

The readers of the previous blog entry will remember that our brave xVM CTO was flying out to battle the denizens of user experience and UI implementation for xVM. Armed with the trusty weapon (sharp tongued wit) battle ensued.

It actually turned out to be a total anti-climax. Meetings that were thought to take a few days were over in hours, consensus was reached, understanding was had and people left happy.

Which brings me to think of how did we get to this point? The obvious reasons are around the ability to communicate across distance effectively, while these days we are armed with many forms of communication, webex, remote whiteboards, video conferencing.... how many of these really work in day to day communication. If I were to rationalize this particular case the problems were probably based in context and background. I was trying to explain things from a context and background that the engineering team probably didn't have or appreciate, so no end of phone calls or emails were going to get us through it. So how do we avoid this in the future? <sigh> You need to communicate more Mike!

One of the subjects of much UI discussion was a concept in Ops Center 2: Virtualization Pools. 

A virtualization pool is one of the critical constructs in Ops Center 2, it allows you to gather a number of xVM Servers together in a resource pool and apply resource configurations to them as a pool. These things are actually pretty cool, you are constrained by a number of rules as to which xVM Servers can be added into a pool, but once configured, the pool and its operations will look after many of the features of virtualization that otherwise a user would have to specifically manage. To be added to a virtualization pool an xVM Server must meet the following constraints:

  • Be on the same physical network as other xVM Servers in the pool. The xVM Server may be on many physical networks (multiple NICs) but one has to be common across all of the xVM Servers in the pool. Good practice suggests that this is often a dedicated physical migration network.
  • Be able to see the same storage source for guests. A really great feature is that Ops Center will manage and track the location of all of your guest storage, it will even move it around for you (cold migration) if you so desire (more on this in a future blog). These storage sources in Ops Center are called Storage Libraries, storage libraries are associated with Virtualization Pools and guests, ISOs, virtual appliances are all managed within storage libraries.
  • Be of the same same chip architecture, its pretty difficult to live migrate between an Intel instruction set with its extensions to an AMD instruction set with its extensions

If these are all fulfilled, Ops Center will manage all of the live / warm migrations between the guests and they can be done in confidence as all of the relationships are being managed that help such migrations succeed. Once you have these setup you can apply policies to the Virtualization Pool to load balance, pack load etc. These can then recommend or automatically enact migration actions across the pools.

How does this relate to UI design? Well consider the fact that Ops Center is designed to manage physical and virtual aspects of your environment, it can manage the Lights Out Management features of your hardware as well as migrate your virtualized operating system between xVM Servers. Original UI designs had all of this information bundled together in a navigation pane. So effectively from the same UI construct you could view the health of your blade and be able to migrate a windows operating system. I argued that they should be split up, as they were in fact two very distinct user interactions. One was related with status, configuration and organization of hardware and software, the other with the runtime resource management of your virtualized environment - I won :-)

Obligatory disclaimer: all screenshots are from development systems and are incomplete.

Both of these images are from the navigation pane in Ops Center 2. The image on the left shows a navigation tree sample for the hardware and software inventory. You can view all of the assets in a natural hierarchy, e.g. System Chassis -> Blade -> OS -> Applications, or you can create your own groups at whatever level you wish. Groups can be homegenous (e.g. all Operating system entries) in which case you can take actions across assets or they can be heterogeneous for organizational display purposes. Groups can obviously include other groups.

On the right, we have the afore-mentioned resource management view. Here we are showing Virtualization Pools containing xVM Servers running guest operating systems. Note: the naming structure of the tree nodes is not up to specification in these images. Selecting any item in the navigation panes will change to reveal the details in the content panel, together with actions that can be taken.


 The image above gives an overall view of a selected virtualization pool for context.

Which brings me back to communication: emails with inclusions. My email volume seems to be on the continuous uptick and no amount of filtering and smart email boxes is helping. In fact my main pain point is email conversations where people always reply to the entire email message including their comments inline through the email. Do this enough times and try and read this on your iphone and you will be quickly looking for the local padded cell. I was going to include such an email example here, but decided not to for obvious reasons ;-)



Planes: flying back from Colorado was tortuous, which leads to a question: what is the difference between these two airlines?

The one on the right is proud of its name? Maybe. The one on the left is late? Probably.

Actually the airline on the left managed to cancel my first flight out, reschedule me on a flight 6 hours later and then cancel that flight. The airline on the right managed to keep all its scheduled flights that day and got me home. Somehow, like many I expect, I remain tied to the airline on the left through years of frequent flyer miles, a credit card that builds up frequent flyer miles etc. etc.  The conflicting part of this, is that I seem to have lost my status with United, which is good from the perspective of I obviously haven't been doing that much business travel recently, but bad because I get to enjoy the rear of the plane where my 17" MacBook Pro can't physically open. This however appears to be on the change as next week I set off on a business trip to Europe, when we will be playing where in the world will this blog come from next?


Automobiles: A passion, I recently bought a Lexus ISF, even more recently its been tuned and modified. I took it to Laguna Seca, 0-60 in 3.9 seconds.

More from Europe....... 


Monday Jul 21, 2008

UI whirlwind

Tomorrow, I head out on the 7:34am (ugh) flight out to Broomfield, CO to have a whirlwind meeting about the Ops Center UI currently in development. User Interface design has always been one of my passions, like may others I appreciate well structured, well designed user interfaces and in xVM Ops Center and xVM Server its something we are focusing on.

We are now at a point where opinions and concepts have diverged, so phone and email doesn't work, so face to face it is!

Our hosted inventory service was our first attempt to bring a more usable experience to the browser, it was built using mostly server side technology which generated client side javascript.

Sun Inventory UI

One of the main challenges was scale, the Inventory service at Sun is intended to be a simple asset management service, that is free, that reflects the software and hardware you have registered with us. Of course success has its problems in terms of scalability and some pretty fast footwork had to be done to allow some of the normally most basic UI components to scale up to the real use. For example having a table scale into thousands of entries is no big deal when the UI client is local or across a persistent network connection, putting it in a browser required some thought in terms of protocol and memory management. Overall it came out pretty well but like all early attempts of this style of interface, there is room for improvement which is happening release after release.


xVM Ops Center 1.x attempted to build on the inventory service, using the same concepts and taking advantage of some of the work that was done in scalability. From a style perspective we deliberately kept it very similar to the inventory service hoping that the synergy would be appreciated between the two applications. The richness of functionality and layering of user interaction in the flows however caused us significant design challenges and compromises were made to make things operational that turned out to be far from ideal. The core challenge has always been around the user model. Ops Center is a systems management application at its core and many of these applications struggle to identify with what leads from a user experience the hardware / software under management or the action the user wishes to take. Obviously both are needed, but ultimately which leads, asset or task. In Ops Center 1.x we tried to apply a task based model but instead ended up with a hybrid model, where at times the hybrid nature was inconsistent. Overall the user experience was a great step forward but we knew we had to something more in the next release.

xVM Ops Center 2 is a major upgrade and re-work of Ops Center 1.x. At the outset we had the core objective of adding virtualization management and a high performance user interface that would be familiar to users and would hopefully require minimal training to operate. I will comment about the functional capabilities and how we achieved some of them in future posts, but from a UI perspective we have completely reworked it.

The first basic decision was to place considerable more focus on information segmentation and the general flow in which a user operates. Next we had to develop the UI in a way that we knew we could make perform. Creating AJAX applications still seems to be much more towards the art end of the computer science scale and we made the decision to focus much more on Javascript expertise and development.  Leveraging open source toolkits we are able to create sophisticated user interfaces that are actually looking really good. These interfaces are a complete departure from the Ops Center 1.x interfaces although we have been careful to ensure that the concepts are similar to someone who has used the previous versions.

The screenshots here are far from final and represent some views into our ongoing work on Ops Center 2. The left hand side of the browser window offers a familiar accordion  style category selection model, where the user can select from the category of information they are looking for. Within a category, the user may select their area of interest, this could range from a group of virtual guests to a physical network configuration. The Center pane reflects the relevant content about the selection and optional content tabs are available based on the amount and type / category of content. The right hand of the user interface reflects the contextual tasks or workflows the user can undertake. What is great is that all of this works in the browser and is pretty "snappy".

Wizards are used when complex configurations with many steps are required and we have really tried hard to make the most complex actions as simple as possible, although granted this is an area for continual refinement. 

The wizard to the left shows a virtual guest being created through xVM Ops Center. The great thing about this, is that if you were creating a virtual guest using our standalone xVM Server interface, it would look exactly the same (except for the name in the top right hand corner).

Airline travel beckons followed by many discussions around user interactions, layout style and modality.

Thursday Jul 17, 2008

Soggy day in the homeland

"SOUTHPORT, England - Forget the leaderboard. No one dominated at Royal Birkdale like the whipping wind and soaking rain.

The British Open got off to a chilly, soggy start Thursday, with storms rolling off the Irish Sea turning the historic links course into a house of horrors."

And to think, I used to live 8 miles away from here, makes me feel all the more comfortable dealing with the Northern Californian summer.

Interestingly enough, Tim Marsland, one of the Software CTOs actually did grow up here, his comments of life in this area, not to different from Mine, "Pleasant enough". Hardly the nexus of computer science or technology though, more focused on potato farming. I remember the importance stressed on "Glacial Erosion" at school as the one thing the area was famous for was its soil quality, I'm surprised I didn't become a geologist.

Golf however is a passion in these parts and the British Open this weekend is being played on one of the hardest golf courses I have ever played on, its actually verging on the insane at times, unless you hit that perfect shot you'll be lucky if you can see the green.

Golf handicap at age 15: 4,  Golf handicap at age 40: errr no idea, but a lot lot higher than 4, the toll of a career in high tech.

Tuesday Jul 15, 2008

Virtual Sanity: xVM

My day job is guiding the technology aspects of xVM, my official title is Chief Technologist xVM, what that means can be left to the readers interpretation.

xVM from a naming perspective has had somewhat of an uneasy birth, it being unclear what it really was, this slide provides a high level marketing perspective on the product line as it has evolved.

The xVM products are real (or nearly real) and offer significant capabilities in the virtualization space, their functionality and fit is however at times confusing and I'll cover some of this in future blogs.

The next two major releases on the roadmap are xVM Server 1.0 and xVM Ops Center 2.0 both are considerable software engineering efforts and will offer significant functionality to the customer looking for virtualization solutions.


 The other part of the puzzle is openxVM this is where we intend to release the open components of the xVM code and allow interested people to download code and binaries.

The site is still in its early stages and as more product and code becomes available we will release it here.







That covers a brief introduction to xVM and all of the high level content I plan to replay, for more information at this level visit the following websites / blogs:




Monday Jul 14, 2008

Technology Insanity

I like many others suffer from gadget / technology insanity. Although I'm sure 

I don't rank that high in the overall worldwide rank, my wife would suggest otherwise.

A couple of  weeks ago, after an interesting utility bill, I decided to see how many operational computers were in the house. For the purpose of this count, operational computers is scoped  

[Read More]

Virtual Sanity or Insanity

Virtual (In)sanity: not a totally original name for a blog, but like all things means something strange to me and somehow applies as you may or may not understand as time goes on.

The name evokes memories of walking through London Heathrow Terminal 4 waiting for a British Airways flight back to San Francisco. 

I was bored and my plane was late, so shopping occurred at the many overpriced (but tax free) stores. I remember hearing this song I couldn't get out of my head: "Virtual Insanity", it turned out to be by a band called Jamiroquai, a band I was somewhat familiar with from when I was living in the UK.

I eventually found a music store where I bought the album and proceeded to etch it into my brain courtesy of a sony walkman (yes it was 1996) during the 10 hour flight back to San Francisco

Wikipedia informs me that the first 15 seconds of the album version of the song contains samples from the film Alien ... ok then. 

At this point I was going to post the classic photo from the Virtual Insanity music video, but after looking at the Wikipedia page I got very scared at all of the copyright protection warnings, any wonder the music industry is in trouble. Here is the link if you are feeling intrigued. The legal disclaimers on a free website are worth looking at just for amusement.


Perspectives on Systems Management, Virtualization and a whole host of other things, mostly related to technology of some sort which kinda of defines life for me.


« October 2016