Posts Tagged XenApp
Documentation for creating custom load evaluators in Citrix has existed for some time. Articles detailing the folly of using the “Default” load evaluator have been around for a while as well. Citrix even has an excellent whitepaper titled “Top 10 items found by Citrix Consulting on Assessments” that lists improper load management as the 2nd overall most common misconfigured item found by Citrix consulting and even gives an example baseline custom load evaluator. Despite all this, environments using the Default load evaluator are still prevalent and make up at least half the Citrix assessments I’m involved with. When words fail to make an impression, sometimes a visual can help:
The problem with the Default load evaluator is clear, it takes user distribution into account but not actual server resource consumption. Citrix load indexes are calculated on a 0-10,000 scale (you can see the value for each server with the “qfarm /load” command), with 10,000 being a “full” server. As you can see above, Server03 is the least busy from a Citrix perspective (since it has the least amount of users logged on), despite being the most busy from a server perspective. Further, the Default load evaluator sets the maximum amount of users per server at “100” while the environment above will not support more than 25-30. So from a load distribution and capacity perspective, the Default load evaluator is clearly ill-suited for any production environment.
A custom load evaluator that accounts for resource consumption takes less than 5 minutes to create and apply to the appropriate servers in your farm. As mentioned previously, the Citrix whitepaper I linked to above has a good baseline custom load evaluator that should get you started. So, take the time to make this simple farm optimization, your users will thank you!
Citrix Provisioning Server (PVS) has been a vital component in the Citrix technology stack for years. Allowing for the rapid provisioning of machines through OS streaming, it has been the bedrock provisioning mechanism for XenDesktop and is also used in provisioning XenApp servers and streaming to physical endpoints. Even though PVS provides all these benefits and has been so integral to various Citrix technologies, its days are clearly numbered. Fundamentally, streaming an OS over the network is inferior to provisioning machines and delivering the OS locally in some way. As an example, technologies like Machine Creation Services (MCS) can be used to provision an OS without the additional streaming component. And while the initial scalability numbers for MCS were lower than PVS and is currently limited to the XenDesktop technology stack, MCS is new and its scalability estimates are improving all the time and there’s no reason to think it can’t or won’t be integrated with other Citrix products. Indeed, there has been talk for years of merging XenDesktop itself with other Citrix products. So, what other possible reasons will there be for holding onto PVS in the future?
- “PVS can use the caching capabilities inherent to the local OS, this reduces IOPS”
When a target devices boots up or accesses portions of the base image, those portions of the OS are then cached in RAM on the PVS server. Subsequent attempts by additional target devices to access those portions of the OS will be read from RAM, thereby reducing the amount of IOPS required on the backend storage. Since IOPS are one of the biggest concerns for VDI deployments, this has been a major selling point for PVS. However, with the rise in popularity of VDI over the past couple of years, storage vendors have really focused on optimizing their array’s for IOPS, with many having terabytes of caching capabilities in them. So, if you now have enough RAM to cache at the storage level, is there really much benefit in being able to cache at the OS level? In addition to that, you have emerging technologies like Intellicache and whole distributed storage models being developed for VDI that should make IOPS less of a concern in the future.
- “MCS will never be able to deliver an OS to a physical endpoint”
This is true. You will never be able to use a locally delivered OS solution for remote endpoints. However, what is the purpose of streaming an OS to physical endpoints? Two use-cases come to mind. The first involves streaming the OS to desktop PC’s outside the datacenter. Companies usually choose this option as a first step into the VDI world. It’s cheap because it uses already existing hardware and it gives you the single-image management and security benefits of VDI without purchasing thin-clients, hypervisors and backend storage arrays. But the important thing to point out here is that this is usually just a stepping stone towards much more robust VDI rollouts. Once their currently functioning PC’s reach end of life, these companies start to replace them with thin-clients and are more willing to invest in hypervisors and backend storage rather than a hardware refresh, thus eleminating the need to stream the OS over the network. The use-case for this in the future will become extremely “niche” as companies move away from purchasing fat-clients as a standard. The second use-case involves streaming to blade PC’s. This is usually done when high performance desktops are a “must”. Like the previous use-case we examined though, there is limited need for this today and as hypervisors continue to advance, there will soon be very little reason, if any, why a desktop cannot be run as a virtual machine and still expect optimal performance.
Now don’t get me wrong, PVS today is still a great solution and should be the main provisioning mechanism for most XenDesktop deployments. For the reasons listed above however, the next few years should see PVS use-cases diminishing rapidly. MCS or some future locally delivered OS solution will take it’s place.
Introducing the XenReference card for XenApp!
Click on either of the images to access the full PDF. Forbes Guthrie has been producing excellent “vReference” cards for VMware for a long time now and I’ve always thought something similar was needed for Citrix as well. The purpose of the card is to be a quick reference guide for basic XenApp 6 information and a useful tool for studying for the “Basic Administration for Citrix XenApp 6” (1Y0-A18) exam. I created the categories based off the XenApp 6 exam prep guide and used Citrix eDocs to create some of the content.
I fully intend to create updated versions of this document with more content and a more polished presentation. If anyone has any feedback, let me know. Content or category suggestions/alterations/deletions would be helpful as well as any suggestions regarding formatting. If you have an opinion on how to improve the document in any way, I’d love to hear it!
Stay tuned for the XenReference cards for XenDesktop and XenServer as well…