Delivering Desktop Images at the School

In a previous post, I discussed how many different desktop images the ABC school district required for their desktop virtualization design: five. Read the previous blog to find out why five were needed. With 18,000 virtual desktops, the challenge now becomes on how to design/scale the Provisioning services environment. And even still, what happens if one Provisioning services server fails. What happens to the virtual desktops that server was supporting?

With the ABC School District, it was originally decided to use 8 servers, each with 6 NICs. However, since the release of the reference design, we are instead allocating 13 servers with 6 NICs each with the goal of being able to reduce the number to 8. Why the increase? Risk mitigation. The ABC School District wants to make sure there is no bottleneck on the virtual desktop streaming side of the architecture. That in turn made us modify the design to increase the number of servers with the hopes that during implementation we can reduce the number and utilize the servers for other purposes.

Estimating Provisioning services capacity is fairly straight forward. One can assume you can achieve 500 virtual desktop streams per 1Gpbs NIC. With 6 NICs in the server (subtract one for fault tolerance), we estimated 2500 streams. However, the ABC School District is unsure if their infrastructure is able to support that level of traffic coming from a single server, thus we increased the number of Provisioning Services servers. We will revisit if all 13 are required once production ramps up.

Regardless of the number of servers, we still need to figure out what happens in the event of a failure. First, some goodies about Provisioning services:

  1. Provisioning Services includes its own high availability option
  2. A Provisioning services high-availability grouping is not limited to 10 servers as many believe.

In order for high availability to function, the same vDisks must be available from each server. We could use a shared storage solution, but the school district is trying to keep costs under control. Instead, we will simply use the local storage on each of the Provisioning services servers. The servers will be configured with 2 spindles in a RAID 1 configuration. Will this be enough IOPS (we all know how much we love to talk IOPS)?

  • First, the Provisioning services servers will utilize many more read operations in comparison to writes (remember we are simply reading blocks of the vDisk, thus the higher read operations)
  • Second, we will reduce the overall IOPS requirements for the Provisioning services server by utilizing system cache. Because we are using Windows Server 2008 (and more importantly 64bit), we can have a large system cache. This allows us to keep many more blocks of the vDisk in memory, thus reducing the need to go to disk for read requests.

That is only a portion of the Provisioning Services design. If you want to know more you can

  1. Get the white paper. It is in the XenDesktop Design Handbook in the reference architecture section
  2. Attend the upcoming TechTalk

Daniel – Lead Architect


Lack of Application Virtualization Strategy

One app, two apps.

Red app, Blue app.

Old app, new app.

What a lot of apps there are (Based on the original by Dr. Seuss)

The pond is full of apps. And so is your organization.  And you are probably not even aware of 50% of your applications. How does this relate to desktop virtualization?  Well, many people fail in their desktop virtualization endeavors because they do not consider application virtualization, which is the 8th common mistake made when deploying virtual desktops followed by:

10.  Not calculating user bandwidth requirements

9.     Not considering the user profile

Continue reading Lack of Application Virtualization Strategy

Hyper-V and XenDesktop – What the School Decided

To cluster or not to cluster, that was the question for the ABC School District. For those of you that read through the ABC School District reference design noticed that the environment was based on Microsoft Hyper-V.  And not only that, it consisted of two distinct groupings:

  • Virtual Desktops
  • Infrastructure

Why the two groupings? Because we require different levels of availability for the virtual machines.  From the school district’s perspective, a desktop is not a server, it is a desktop. That means desktops do not require the same level of high-availability as server workloads.  The Infrastructure group is clustered, meaning that the virtual servers are critical and can be live migrated to another Hyper-V server if needed.  The Virtual Desktops group is not clustered. By splitting the components up into two different Hyper-V groupings, we can better align the technical functionality with the business requirements. Continue reading Hyper-V and XenDesktop – What the School Decided

The Virtual School Is In Session, Please Take your Seats

Once upon a time, there was a little school (70,000 users) with a  little problem (desktops over 5 years old) with a little idea. The school was trying to find a way to make the tax money go further. The newest desktops were 5 years old with many more approaching 10 years.  Depending on the school within the district meant different endpoints, different applications and even different quality.  With so many students having home PCs, the school was also interested in allowing these students to work with their applications while not at school.

The school decided to try something new… desktop virtualization.

But if you had to create a desktop virtualization design for a school or your organization, how would you begin? What would you focus on?  What do you think are the most important design components?  That is what we will focus on during a Ask the Architect TechTalk on June 18th at 1PM Eastern time.  Not only will we focus on the hypevisor, which is Microsoft Hyper-V, we will also focus on the three Citrix FlexCast models used, the image delivery solution, applications integration and how the XenDesktop farm is designed.

There will be many interesting points throughout the TechTalk including this one: Continue reading The Virtual School Is In Session, Please Take your Seats

My virtual desktop profile is important

Mark Twain said “When angry count to four. When very angry, swear”.  Unfortunately, I’ve heard many users swear. It is amazing how one little action can cause so much anger towards the IT organization or bring a new project to its knees.   Take the following, real world scenario, as an example:

An organization had a profile strategy in place.  Users started working in the new system. One day, a user had a profile corruption issue. To solve the issue, the profile was deleted.  This meant the user had to recreate their entire personalized environment. After the profile was deleted, the user quickly noticed all of their documents were deleted.  Upon closer inspection, the user stored their documents in the “My Documents” folder. When the profile was deleted, the My Documents folder was also deleted.  Can you say Bye Bye data?  Bye Bye 3 weeks worth of work.

Not convinced that profiles are important, then let me give you another example (You can’t make this stuff up):

An organization was running a hosted VM-based VDI desktop solution for a few months and decided the profile solution required modifications.  Upon the updates, every user lost all of their personalization configurations.  NOOOOO

The user’s profile is one of the major ways the pooled virtual desktop becomes personalized. Forgot about virtual desktops for a moment. The user profile is important for traditional desktops. Continue reading My virtual desktop profile is important

How many desktop images do I really need?

One of the main goals with desktop virtualization is to reduce the number of required desktop images. The fewer number of images, the easier it is to support and maintain the desktop environment, which makes desktop virtualization so promising when compared to the traditional desktop approach. The goal is a single image, but oftentimes, other factors play a role in slightly increasing that number. Take, for instance, the ABC School District.

The design called for 5 different desktop images, as shown in the figure.
Continue reading How many desktop images do I really need?

How Much Bandwidth Do I Need for My Virtual Desktop

Do you ever wonder how much bandwidth you need to do a desktop virtualization implementation? Regardless of the flavor of virtual desktop being implemented (hosted shared, hosted VM-based VDI, local streamed, etc), the network plays a critical role. That should not be surprising (if it is, we need to have an even bigger discussion). If you don’t plan your network bandwidth appropriately, you will have unhappy users, who will make you unhappy.

As we would expect, the user experience degrades as the latency increases and the bandwidth decreases. Proper network planning must be based on the type of work users are performing and the overall network topology. Back in the XenApp-only days, many people used 20 kbps as an estimate for network bandwidth requirements. Can we use that for virtual desktops? NO (although I could configure XenDesktop to only use 20 kbps).
Continue reading How Much Bandwidth Do I Need for My Virtual Desktop


My virtual desktop journey