XenApp Server Virtual Machine Processor Specification (Citrix Blog repost)

In this blog series I’m taking a look at scalability considerations for XenApp 6.5, specifically:

  1. How to estimate XenApp 6.5 Hosted Shared Desktop scalability
  2. What’s the optimal XenApp 6.5 VM specification?
  3. XenApp 6.5 Hosted Shared Desktop sizing example

My last post provided guidance on how to estimate XenApp density based on processor specification and user workload.  In the second post of the series, I’m taking a look at the optimal specification for the XenApp virtual machines themselves.

In an ideal world, every project would include time for scalability testing so that the right number of optimally specified servers can be ordered.  However, there are various reasons why this doesn’t always take place, including time and budgetary constraints.  Architects are all too often asked for their best guess on the resources required.  I’ve been in this situation myself and I know just how stressful it can be.  If you over specify you’re going to cost your company money whilst under specifying reduces the number of users that can be supported, or even worse – impacts performance.

XenApp Server Virtual Machine Processor Specification

In most situations, testing has shown that optimal scalability is obtained when 4 virtual CPUs are assigned to each virtual machine.  When hosting extremely resource intensive applications, such as computer aided design or software development applications, user density can sometimes be improved by assigning 6 or even 8 virtual CPUs to each virtual machine.  However, in these situations consider using XenDesktop rather than XenApp so that you have a granular level of control over the resources that are assigned to each user.

Number of XenApp Servers per Virtualization Host

When determining the optimal number of virtual XenApp servers per virtualization host, divide the total number of virtual cores by the number of virtual processors assigned to each XenApp virtual machine (typically 4).  For example, a server with 32 virtual cores should host 8 virtual XenApp servers (32 / 4 = 8).  There is no need to remove server cores for the hypervisor because this overhead has been baked into the user density overheads discussed in the first blog.

One of the questions I get asked most is whether the total number of virtual cores includes hyper-threading or not.  First, what is hyper-threading and what does it do?

The Citrix XenDesktop and XenApp Best Practices whitepaper states:

Hyper-threading is a technology developed by Intel that enables a single physical processor to appear as two logical processors. Hyper-threading has the potential to improve the performance of workloads by increasing user density per VM (XenApp only) or VM density per host (XenApp and XenDesktop). For other types of workloads, it is critical to test and compare the performance of workloads with Hyper-threading and without Hyper-threading. In addition, Hyper-threading should be configured in conjunction with the vendor-specific hypervisor tuning recommendations. It is highly recommended to use new generation server hardware and processors (e.g. Nehalem+) and the latest version of the hypervisors to evaluate the benefit of Hyper-threading. The use of hyper-threading will typically provide a performance boost of between 20-30%.

Testing has shown that optimal density is obtained when the total number of virtual cores includes hyper-threading.  For example, a server with 16 physical cores should host 8 XenApp VMs – 32 virtual cores (16 physical cores x 2) / 4 virtual CPUs per XenApp virtual machine = 8 XenApp virtual machines.

A common mistake is to perform scalability testing with one virtual XenApp server and to multiply the results by the number of virtual machines that the host should be able to support.  For example, scalability testing might show that a single XenApp server virtual machine can support 60 concurrent ‘Normal’ users.  Therefore, a 16 physical core server with 8 XenApp server virtual machines should be able to support 480 concurrent users.  This approach always overestimates user density because the number of users per virtual machine decreases with each additional XenApp VM hosted on the virtualization server.  The optimal number of concurrent normal users for a 16 physical core server will be approximately 192 with around 24 users per virtual machine.

User Density per XenApp Server Virtual Machine:

The user density of each 4vCPU virtual XenApp server will vary according to the workloads that they support and the processor architecture of the virtualization host:

  • Dual Socket Host: You should expect approximately 36 light users, 24 normal users or 12 heavy users per XenApp virtual machine.
  • Quad Socket Host: You should expect approximately 30 light users, 20 normal users or 10 heavy users per XenApp virtual machine.

Depending on your worker group design, you may have a blend of light, normal and heavy users on each XenApp virtual machines.  In these situations, adjust your density estimates based on the overhead of each workload type (light=1.5, normal = 1, heavy =0.5).  For example:

Dual Socket Host –

  • 30% light : (36 / 100) * 30 = 11
  • 60% normal : (24 / 100) x 60 = 14 users
  • 10% heavy : (12 / 100) * 10 = 1 user

Total number of users per XenApp virtual machine = 26

Memory Specification

The amount of memory assigned to each virtual machine varies according to the memory requirements of the workload(s) that they support.  As a general rule of thumb, memory requirements should be calculated by multiplying the number of light users by 341MB, normal users by 512MB and heavy users by 1024MB (this number includes operating system overhead). Therefore, each virtual machine hosted on a dual socket host should typically be assigned 12GB of RAM and each virtual machine hosted on a quad socket host should be assigned 10GB of RAM.

The following table shows typical memory specifications for each processor specification:

Don’t forget to allocate memory for the Hypervisor.  With XenServer, this is 752MB by default.

Depending on hardware costs, it may make sense to reduce the number of XenApp server virtual machines per virtualization host.  For example, instead of purchasing a virtualization host with 80 virtual cores and 256GB of memory you could reduce the number of XenApp server virtual machines per host from 20 to 19 so that only 192GB of memory will be necessary (2GB for the hypervisor).  Although this reduces user density by approximately 30 light /20 normal/10 heavy users per host, it also saves 64GB of memory.

Depending on the hardware specification selected, you may find that your hardware specification allows you to assign more than 12GB of memory to each XenApp virtual machine.  It makes sense to use all of the memory available.

Disk Input Output Operations per Second (IOPS)

Regardless of whether local or shared storage is used, the storage subsystem must be capable of supporting the anticipated number of IOPS.  As a general rule of thumb, each light user requires an average of 2 steady state IOPS, each normal user requires an average of 4 steady state IOPS and each heavy user requires an average of 8 steady state IOPS.  Therefore:

Dual Socket Host –

  • Light users: 36 users x 2 IOPS = 72 steady state IOPS per XenApp virtual machine
  • Normal Users: 24 users x 4 IOPS = 96 steady state IOPS per XenApp virtual machine
  • Heavy users: 12 users x 8 IOPS = 96 steady state IOPS per XenApp virtual machine

Quad Socket Host –

  • Light users: 30 users x 2 IOPS = 60 steady state IOPS per XenApp virtual machine
  • Normal Users: 20 users x 4 IOPS = 80 steady state IOPS per XenApp virtual machine
  • Heavy users: 10 users x 8 IOPS = 80 steady state IOPS per XenApp virtual machine

It is hard to estimate the number of IOPS generated per user during logon because the logon rate, logon actions and logon time varies significantly between implementations.  Also, it is not possible to provide estimates based on user workload type because this is unrelated.  Some businesses may experience the majority of their logons between 08:30 and 09:00 while others may have multiple shifts.  Regardless, a hard disk write-cache on local (at least 1GB) and shared storage can be used to help soak up short periods of heavy disk utilization.

I realize that some of these recommendations can be hard to follow for first timers which is why the last post in this series will walk you through an example XenApp sizing exercise.  Stay tuned!

For more information on recommended best practices when virtualizing Citrix XenApp, please refer to CTX129761 – Virtualization Best Practices.

What’s new for XenApp and XenDesktop with UPS 7.6!

Source: Citrix Blog

Citrix XenDesktop 7.6 included the release of a new version of the Citrix Universal Print Server, UPS 7.6; with this release our test results showed very significant improvements in the software, including:

  • Stability at a sustained load of about 50 print jobs per minute
  • Excellent recovery from periods of stress/overload
  • Protocol efficiency optimizations (reduced chattiness) resulting in a better user experience (opening the Print dialog is about 6 times faster) and better performance over WAN connections
  • Increased protection from faulty printer drivers, including when UPS is used in conjunction with printer driver isolation

Better Documentation

To accompany this release of UPS we have also improved the documentation available in the Citrix XenDesktop Handbook, with a new revised section on printing from our consultancy teams based on their field experience. Although in the XenDesktop” Handbook this advice is also relevant to those using UPS for XenApp Printing. I’d recommend reading Ed Duncan’s great blog overviewing the solutions available, here, for great insight into what UPS can do and a guide to the documentation available.

Citrix does printing solutions?

Yes, and now very well! Citrix spent many years developing enterprise printing technologies; whilst delivering cloud SaaS is becoming common, most businesses still need basic, core functionality. Hotfix UPS 7.1.100 (Q1 2014) addressed a number of stability and scalability issues:

UPS 7.6 has continued this drive for quality and we recommend those using UPS 7.1.100 also upgrade to UPS 7.6 for further enhancements.

Printing files can inflate and place a very high load on bandwidth. Transferring our expertise in compression techniques from our other products and HDX has resulted in some nice compression technology between the client and the UPS, which mean that this is genuinely a WAN suitable solution.

The Future

UPS 7.6 has been about reworking the core architectures for robustness and scale to ensure the platform is future-proof. This will provide the platform ongoing on which we can provide newer features and support for newer versions of Windows Server.  We have spent a lot of this development cycle changing our development tools, automating testing and stress testing.  I’ve blogged about why I’m particularly excited to be the Product Manager for this product.

One of our key focuses has been ensuring printer driver faults can be identified by our own test tools. Printer drivers can be wrapped in pretty strange ways and protecting our infrastructure from leaking and faulty drivers has been a key focus. I’m hoping we’ll be in a position to open our in-house tools to our partner vendors and also customers so they can also identify and isolate faulty drivers easily in the future.

I’m also currently planning our roadmap for new server OS support and new printing features.

Is UPS expensive to get?

It’s free! Citrix is the only virtualisation vendor to provide such a comprehensive solution and as part of our core product. So no dealing with third-party support nor any additional licensing costs! We’ve been analyzing the strengths of the technologies and Mayank provides an excellent overview, here, where you can get ideas on how to assess and compare printing solutions, quality, bandwidth and capacity planning.

Are these improvements available for XenDesktop 5.6, 7.x and XenApp 6.5 Users?

Yes they are! The new components of the UPS 7.6 are currently included in the main XenDesktop/XenApp 7.6 download. With hindsight this is not the most convenient place for XenApp customers to look for new components (UPSClient and UPD) and the need to download the entire download is simply inconvenient. We are working to repackage those components in a more convenient format in the future.

Update (27/Nov/2014): The components are now available for independent download (login to downloads with Citrite ID):

XenApp 6.5 Upgrade Details

There is a caveat for installation on XenApp 6.5 owing to a driver versioning mismatch associated with HRP004 (HotFix RollUp Pack 4 detailed in CTX138366). We are revising our processes to ensure such a mismatch does not occur in the future. And we aim to resolve this with a later HRP (so if you are reading this when HRP005 or higher is available, this information is not relevant and should not be applied to any HRP other than 004 without explicit advice from Citrix to do so).

  • The recommended order of installation is: HRP004 first, followed by UPS 7.6
  • The driver versioning mismatch will result in a dialogue box asking if you wish to install an older driver version when you install UPS7.6, which you should agree to do
  • The dialogue box will interrupt automatic install
  • We are working on a KB article detailing a WA for those users for whom unattended/scripted install is required (if your need is pressing please do contact Citrix Support). Update (3rd Nov 2014): A tool to avoid this issue is now available, see http://support.citrix.com/article/CTX200268

HTML5 and Chrome Receiver Printing!

We are aiming to continue to have the broadest range of printing options available for our XenDesktop and XenApp users allowing them to use the widest range of end-points and to allow people to work where they want and how. Aligned to the XenDesktop 7.6 release, we also released new receivers for HTML5 and Chrome that support local pdf. This is a smart feature whereby if you open a word document on your client, you can choose to print to our new Citrix PDF driver, this then sends the document up to the server and the PDF is sent back to your end-point over ICA and opened on your PDF viewer of choice e.g. CutePDF from where you can print to your printers of choice. It’s a really flexible generic solution which avoids the need to install and maintain local drivers on end-clients. You can read about the HTML5 receiver printing functionality, here, and about the Chrome receiver and its support for the Google Print Cloud, here. Thomas Berger covers some of the security and usability benefits associated with these printing solutions, relative to competitive solutions, in this great overview.

Other Information

  • Citrix Printing Solutions for XenApp and XenDesktop, a review by West Monroe Partners, a Citrix partner enjoy customer success with UPS
  • Details of Canon’s investment in drivers optimised for Citrix printing, here
  • Marek Dressler’s printing focused blog series from Citrix Support, a great place to keep up to date with the latest information, here
  • Independent Consultant Dave Bretty’s blog on how UPS has simplified and resolved driver management for XenApp customers is a nice read, here
  • CTX136332, advice on printer driver isolation

The Citrix Blog repost: The Eagle has Landed: Citrix XenApp is now available on HP Moonshot with Intel graphics!

The Eagle has Landed: Citrix XenApp is now available on HP Moonshot with Intel graphics! | Citrix Blogs<!– –>// // // <![CDATA[
jQuery(document).ready(function() {

Object.size = function(obj) {
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};

var customOrder = new Array("Filter by Language", "English" ,"Russian" ,"Spanish", "German", "French", "Japanese", "Chinese","Dutch", "Not Listed");
var dataArray = new Array();
for(var i = 0; i 0)
{
var strHTML = “”;
for(var j = 0; j < customOrder.length; ++j)
{
if (j == 1) {
strHTML += "
“+ customOrder[j] +””
} else {
strHTML += ”
“+ customOrder[j] +””
}
}
jQuery(“#cf-post-ajax-filter–language”).html(strHTML);
}
});

// ]]>

By Tony Sanchez · Published October 23, 2014

Hi Everyone,

My name is Tony Sanchez (@TonySanchez_CTX) and I work on the WW Alliances teams as principle solutions architect focusing on the HP Moonshot platform.

Citrix XenApp is now available on HP Moonshot with Intel graphics!Previously, I wrote a blog on the first Citrix and HP Moonshot offering with AMD called the CS100 for Citrix XenDesktop. Since then the HP Moonshot and Citrix family has grown and now for the first time Citrix XenApp 7.5 is available on the HP Moonshot platform! XenApp is powered by the new ProLiant m710 cartridge which is driven by Intel E3 chipset with integrated Iris Pro Graphics!

Many may ask what is so unique about Moonshot and what makes XenApp so special for this new hardware platform? Those are great questions that I’ll answer in this blog. Earlier in the year at Citrix Synergy 2014 we demonstrated the Moonshot ProLiant m710 for the first time publically with our partners HP and Intel. If you didn’t get a chance to see the demo I highly recommend that you check it out.  There was an immense amount of interest from customers and partners and since Synergy we have been working around the clock testing and building our new offering to enable a solution that is available today.

What’s impressive about HP Moonshot and this new ProLiant m710 cartridge is how we can enable an out- of-the-box experience to leverage the Intel Iris Pro Graphics for each XenApp user –all without having to use a hypervisor. This bare-metal architecture simplifies the setup time and deployment for XenApp without waiting on the underlying management platform to be enabled or a GPU to virtualized. With all that in mind let’s take a look at the ProLiant m710 and its Moonshot components and also share with you the secret sauce that technical people will care a lot about, the scalability performance data for medium and rich applications workloads.

Compute and Graphics

The HP ProLiant m710 is the first Moonshot cartridge that is powered by the Intel® Xeon E3-1284Lv3 processor with integrated Iris Pro Graphics P5200 graphics. With integrated on board processing and graphics you can now easily deliver on demand graphics for rich applications with Intel’s Iris Pro and for intense number crunching leverage the Turbo boost technology with speeds up to 3.2 Ghz. Delivering graphics in the past for rich applications or content that call for OpenGL, OpenCL, and Web GL has always been a challenge when graphics cards were not present. Now with a solution like the HP Moonshot ProLiant m710 for XenApp, a user has on demand enablement of graphics for those scenarios. In the past, IT needed to schedule time to take down servers and insert a GPU to enable that workload. With a micro server architecture like HP Moonshot and ProLiant m710 cartridge those challenges fade away.

With such a powerful and compact cartridge it surprising in how little this cartridge uses for watts. The ProLiant m710 cartridge requires only 19 watts to power it on which is about what a regular appliance light bulb uses so hopefully the light bulb is going on in your head about how power savings can start to come into play. For those that want all the processor data additional information about the Intel E3 chipset can be found here and Intel has a great blog about you should read as well.

Memory

Each ProLiant m710 is enabled with 4 SODIMM Slots with 8GB of DDR3L-1600 low voltage memory per slot for a total maximum configuration of 32GB RAM per cartridge. While 32GB of RAM is a smaller amount of memory than a full size blade, it enables you to create micro XenApp instances similar to what you would use in virtualized VM instance of XenApp, but without the hypervisor. Previous scalability tests performed by Citrix show that many virtualized instances on XenApp on a hypervisor have around 8GB to 32GB of virtual RAM assigned so having 32GB of physical RAM is not too far off from the hypervisor world. Of course mileage may vary as some customers choose higher amounts of virtual RAM for applications which require it so keep that in mind. With the RAM being physically assigned to each cartridge it simplifies the design and scalability process as there is no need to worry about overcommitting virtual RAM and impacts it may cause.
Additional Quick Specs information about the ProLiant m710 cartridge can be found here.

Network

Do you have a need for speed? The ProLiant m710 cartridge delivers integrated 2x 10gb Mellanox ConnectX®-3 network adapters with which also support RDMA over Converged Ethernet or RoCE. These adapters seamlessly integrate into the Intel QM87 chipset on the ProLiant m710 cartridge. With two 10gb adapters, the transfer speed for users accessing content such as videos, high resolution images, and large files are instantaneous.

The HP Moonshot-45XGc Switch Module

The HP Moonshot-45XGc Switch Module is designed to provide high speed, low-latency connectivity while dramatically reducing cost and complexity of deploying solutions at scale. The 45G Switch Module, together with the HP Moonshot-4QSFP+ uplink module, provide 10GbE network connections to cartridges within the HP Moonshot 1500 chassis. Up to two switch modules are supported in each chassis. Multiple modules can be stacked to eliminate the cost of TOR switches and provide failover in the event of a switch or uplink failure.

More Quick Specs information about the 45XGc switch module can be found here.

Storage

Each ProLiant m710 is enabled with a Micron M500 120GB M.2 NGFF or Next Generation Form Factor NAND, drive for fast reads and writes for the operating systems while only consuming around 3.3 volts of power. Each M.2 also leverages the adaptive thermal throttling technology which allows the drive reduce its temperature if it’s being stressed. The maximum random reads for the M.2 is rate around 500 MB/s with the writes at 130 MB/s and a total MT/s of 6.0GB/s. The screenshot below shows a few SSD tests from Blackmagicdesign, CrystalDiskMark, and ATTO Disk Benchmark applications.

Scalability

Of course the question on everyone mind is “how does it scale”? As I mentioned earlier the performance data gathered from the HP Moonshot chassis manager, as well from Perfmon counters, are critical when analyzing the overall chassis and XenApp user experience. Performing scalability tests are mandatory to see how well a system handles from a steady state to fully loaded active state for XenApp. Each test gathered data from common areas such as CPU, RAM, IOPS, network and of course power. For this test Citrix and HP leveraged industry standard tools from Login VSI version 4.1 to help with creating a 2400 user synthetic test. We attempted to ask 2400 people on Facebook if they would participate, but everyone was busy so we created 2400 friends of our own to test ☺. There were two types of workloads leveraged for the tests, the medium and the rich application workload. An explanation of each workload and its applications are below. Each test was executed using 1, 15, 30, and 45 cartridge loads to ensure that a partially to fully loaded chassis was utilized. For this blog we will only focus on the 1 and 45 cartridge scalability numbers. All of the information below can be found in the technical whitepaper  HP for Moonshot for XenApp coming soon which I highly recommend that you read.

Medium Workload

This section describes the medium workload profile, used to evaluate XenApp performance on HP Moonshot with HP ProLiant m710 Server Cartridges. The medium workload is the default workload in Login VSI. This workload emulates a medium knowledge worker using Microsoft Office 2013, Microsoft Internet Explorer, PDFs, and Java/FreeMind.

Rich Application Workload

A separate application workload was designed to evaluate XenApp performance on HP Moonshot with HP ProLiant m710 Server Cartridges when running rich and graphics-intensive applications. This workload executes the GPU-enhanced features of Adobe Photoshop CC 2014 and manipulates a 3D model in eDrawings Viewer. The GPU-enhanced features of Adobe Photoshop include the Blur Gallery, Smart Blur, Upscale, Smart Sharpen, Lighting Effects, Rotate, and Scrubby Zoom, to name a few. The GPU uses OpenGL (Open Graphics Library) to render and accelerate 2D and 3D graphics and OpenCL (Open Computing Language) for parallel processing acceleration.

The rich application workload consists of three segments:
• Segment 1 runs OpenGL, OpenCL, and Zoom tests (via Adobe) in Photoshop CC 2014.
• Segment 2 opens a 3D assembly file and rotates, expands, and collapses the file multiple times.
• Segment 3 uses Scrubby Zoom to zoom in and out of an image multiple times.

The OpenGL test loads an image, applies Lighting Effects and Smart Blur, rotates the image, scales the image, applies Motion Blur, and finally applies Lighting Effects again. The OpenCL test loads an image, and then applies the Field Blur, Iris Blur, and Tilt Blur filters from the Blur Gallery. The Zoom test loads an image, and then uses Scrubby Zoom to rapidly zoom in and out of an image for 30 seconds. The image manipulated is a 17-megapixel, 48-MB TIF file. The 3D assembly file is a 63-component, 2-MB EASM file.

Single Cartridge Performance Data

Figure 4 shows the baseline response time vs. the number of user sessions for a single HP ProLiant m710 Server Cartridge in the XenApp delivery group. A VSI max of 50 XenApp users was achieved for this test.

Figure 4.

Figure 8 shows that the number of user sessions increases linearly as the number of cartridges increases, with response time remaining almost constant. This shows a high scalability of over 2,300 XenApp users in one chassis!

Figure 9 characterizes processor utilization of the HP ProLiant m710 Server Cartridge. When the number of sessions approaches 49 or 50, CPU utilization goes up to 100 percent; when the user sessions start to log off, CPU utilization goes down.

Figure 10 characterizes power utilization of the HP ProLiant m710 Server Cartridge. The maximum power rating on each cartridge is less than 75 Watts at peak load. However, with the XenApp medium workload, the power utilization is ~60 Watts per cartridge at peak load.

Figure 12 characterizes main memory utilization of the HP ProLiant m710 Server Cartridge. Notice that 32 GB memory is not saturated, even at peak workload (when the maximum number of user sessions is running). Also note that 6–8 GB of memory is free at peak workload.

Figure 13 characterizes network utilization of the HP ProLiant m710 Server Cartridge. Notice that the network does not create a bottleneck. Even at the peak workload (when the maximum number of user sessions is running), the network utilization remains below 130 Mb/s. The ProLiant m710 Server Cartridge has a 10 Gbps network.

Rich Application Workload

Figure 16 through Figure 19 show an indicative test from each data point in Figure 15. Note that the numbers do not match exactly, as Figure 18 contains averages across multiple tests. Figure 20 through 25 plot the system-level parameters— power consumption, GPU utilization, CPU utilization, memory utilization, and disk operations—during the execution of 100 percent rich application workload on the HP ProLiant m710 Server Cartridge.

Summary

Throughout all these tests the performance was very predictable and the results scaled linearly which provides validation and confidence that the HP Proliant m710 cartridge can handle a multitude of XenApp applications even up to intense graphical applications that leverage the GPU on demand. It’s important to note that while a single Moonshot chassis can easily accommodate 2,000 or more XenApp users, “mileage” may vary so performing your own tests will help you decide the scalability limits in your own environment. Of course all this great testing and information that is provided to you today couldn’t have been done without the help of some great guys at HP.

I would like to acknowledge Supreeth Venkatesh (@SupreethPSV) and Zach Bitting (@Zachbitting) for all their dedication on working on this project. You can reach the Moonshot solutions team at HP via @HP_MSE as well. We hope that this blog was informative and will allow you to see that HP Moonshot with XenApp can deliver and impressive user experience with break through economics. In my next blog we will look at the architecture building blocks for the infrastructure such as PVS, NetScaler, WDS, HP CMU, and other key components. It’s definitely been one small step for man, one giant leap for mankind with this new architecture so stay tuned for more…

MyXenApp

A blog dedicated to Citrix technology

There's More to the Story: a blog about LIFE, chronic illness, and Mental Health

I’m the loud and relentless "patient" voice and advocate they warned you about. I happen to have type 1 diabetes, ADHD, anxiety, OCD, PCOS, endometriosis, thyroid issues, asthma, allergies, lactose intolerance (and more), but there’s more to story.

DeployWindows

Learn Troubleshoot and Manage Windows

Dirk & Brad's Windows Blog

Microsoft Platform How To's, Best Practices, and other Shenanigans from Highly-qualified Windows Dorks.

Ingmar Verheij

About Citrix, Remote Desktop, Performance, Workspace, Monitoring and more...

Virtual to the Core

Virtualization blog, the Italian way.

CloudPundit: Massive-Scale Computing

the business of Internet infrastructure, cloud computing, and data centers

UCSguru.com

Every Cloud Has a Tin Lining.

speakvirtual

See no physical, hear no physical, speak no physical - speakvirtual.com

IT BLOOD PRESSURE

IT can be easy

Ask the Architect

My workspace journey

blog.scottlowe.org

The weblog of an IT pro specializing in virtualization, storage, and servers

akosijesyang

a place under control of his big head

this is... The Neighborhood

the Story within the Story

Yellow Bricks

by Duncan Epping

THE SAN GUY

Enterprise Storage Engineer

My Virtual Vision

My thoughts on application delivery