You are here: Home > Blog

In case you missed the announcement, about a month ago, Citrix announced the release of XenApp 6. This is the version of XenApp that will run on Windows Server 2008 R2 – but there are also a lot of features in XenApp 6 that will make your life a lot simpler if you have to manage a XenApp farm. One of those is the concept of “worker groups.”

Over the years, Citrix has added the ability to control more and more XenApp features through policy settings – either through Active Directory Group Policies or through Citrix policies. But some things were still fairly tedious to manage.

For example, when you published an application on your XenApp farm, the information of which servers that application was published on was part of the application properties. If you had a set of applications published on a set of servers, and you wanted to add (or remove) a server from that set, you had to edit the properties of each application in the application set.

With XenApp 6 on Server 2008 R2, you can now create a new AD container called a “worker group.” Settings like computer policies, load balancing policies, and even which applications are published can be set on the worker group, and will be automatically inherited by any server that is added to that group. This literally makes it possible to fully configure a new XenApp server and add it to the farm without even opening the XenApp management console! (And, of course, if you’re using application streaming to deliver the applications to the designated XenApp servers, you don’t have to install those applications – simply assign them to the worker group, and they will be streamed to any server that is part of, or added to, that worker group.)

For a better understanding of how this works, take a look at this “Citrix TV” video by Leo Singleton:

We here at Moose have been working with Web Interface 5.2 (hereafter referred to as WI 5.2) more and more these days, and the question was bound to come up, “Can I use the new WI 5.2 with my old Presentation Server 4.0 farm AND my new XenApp 5.0 farm at the same time?”

Yes, you absolutely can.  The Admin guide for WI 5.2 states that it is compatible with the Windows 2003 and UNIX versions of Presentation server 4.0 up through the current XenApp 5.0 versions.  However, it is not 100% compatible right out of the box.

You can configure your old Presentation Server 4.0 farm in the WI 5.2 farm properties and then login to the WI and see all of your published apps, but when you go to launch one you will receive the following message:

“An error occurred while making the requested connection.”

Citrix Web Interface Screenshot

Screenshot courtesy Citrix’s KB article CTX123003

The solution is detailed below.  These exact steps are from Citrix KB article CTX123003

  1. On the Web Interface 5.2 server, locate the WebInterface.conf file (\Inetpub\wwwroot\Citrix\XenApp\Conf) and open it with a text editor.
  2. Locate the following entry around line# 169:
    RequireLaunchReference=On
  3. Replace it with the following entry:
    RequireLaunchReference=Off
  4. Save the WebInterface.conf file and test.
  5. Users should be able to launch applications from the XenApp 4.0 farm successfully.

That said, it is important to note that Presentation Server 4.0 hit “End of Life” on Dec. 31, 2009. (Citrix lists product lifecycle information for all of their products on their Web site.) This means that product downloads and hotfixes are no longer available, and tech support is limited to whatever information you may be able to dig out of the Citrix on-line Knowledge Base. So we sincerely hope that the only time you would ever be using the information in this post is when you’re in the process of transitioning from Presentation Server 4.0 to your new XenApp 5 (or, very shortly, XenApp 6) farm!

As most of you know, XenApp 5 is not compatible with Windows Server 2008 R2. Citrix has been working diligently on an R2-compatible version. The “technology preview” has been out for several weeks now. Apparently the new product is sufficiently different that Citrix decided it warranted a major release number – so a few days ago, Citrix announced the release of XenApp v6. Here are some of the high points of the new release:

  • The biggie, of course, is compatibility with Windows Server 2008 R2. This means, among other things, that it will be a 64-bit-only release (since R2 is strictly 64-bit). And that has obvious implications for things like print driver and application compatibility.
  • New setup wizards reportedly cut installation time in half.
  • New “AppCenter” application management console. Includes the ability to manage and deliver streamed apps using both Microsoft App-V and Citrix application streaming from a single point.
  • Better integration with Microsoft management tools, including PowerShell.
  • “HDX” (High Definition User Experience) support for:
    • Real-time audio and video collaboration using Microsoft Office Communicator and VoIP soft phones
    • CD-quality audio with 90% less bandwidth
    • Plug-n-play support for USB devices like Point-of-Sale interfaces, webcams, microphones, scanners, digital cameras, etc.
  • Support for the new “Dazzle” self-service application storefront
  • New Citrix Receiver for Android mobile devices (and a promise that BlackBerry support is coming soon)

Along with the release of XenApp 6, Citrix is also releasing XenApp 5 Feature Pack 3, which will port as many of these features as possible back to Windows Server 2003 and Windows Server 2008 (non-R2) users.

Customers with current Subscription Advantage as of March 17 will be able to download XenApp 6 starting March 24. And, since XenDesktop 4 Enterprise and Platinum editions include full access to XenApp functionality, this applies to XenDesktop 4 customers as well as XenApp customers.

For more on the announcement, check out the following video from Citrix TV:


And for even more product information, see the XenApp 6 product page on the Citrix Web site.

To continue the discussion of “What is Virtualization?” that I started back on December 4, I bring you the next installment – Application Virtualization.

Application Virtualization is the isolation and separation of an application from its underlying Operating System (OS) as well as from other applications. The application is fooled into believing that it is working as normal, interacting with the OS and using those resources as if the application had been installed directly on the OS as normal.

Additionally, the application can be installed once within the datacenter and preserved as a “golden image” to be delivered out to the end users. This gives you one instance to manage, one instance to patch, one instance to maintain – all housed in one location. This will help cut IT application maintenance costs as well as help control licensing costs as it will be easier to track application utilization.

Since each virtualized application is isolated from other applications it becomes possible to deploy, on the same piece of hardware, applications that typically didn’t play nicely together in the past. This cuts down on the time needed to test application compatibility since each application resides inside its own “bubble” (much like teenagers).application silos

Traditionally, both desktop admins and admins who were in charge of Terminal Servers (and XenApp servers) spent hours and hours on application compatibility testing. When a new application was added to the official desktop or server image, or an existing application was upgraded, regression testing was necessary to insure that the new or upgraded application didn’t break some other application by, for example, overwriting a shared DLL file. By providing a method for virtualizing Registry entries and calls to particular folder locations, application isolation overcomes most of these headaches.

The real trick with application virtualization is the delivery method, since the delivery methods of these virtual applications is what separates the different vendor solutions in this field. The big three application virtualization solutions are Citrix XenApp, VMware ThinApp, and Microsoft Application Virtualization (a.k.a. “App-V”). These three vendors use either one method or a combination of delivery methods to get the applications to the end users.

Application Streaming: This refers to streaming the application over the network to the client PC on demand. The “secret sauce” here is in figuring out how to stream down just enough of the code to launch the application and allow the user to begin interacting with it. The rest of the code can be streamed down when the user attempts to use a feature that requires it, or it can be simply streamed down in the background until all of the application code is cached locally. An added benefit of streaming all of the code down is that it allows the application to continue to be used when the PC is not connected to the network. (E.g., you can unplug your laptop and take it on the road.)

The application streaming technology you use will determine the control and security of the application once it has been streamed to the end user device. For example, Citrix allows you to administratively set a “time to live” limit on how long apps will run in a disconnected state. If the PC isn’t reconnected to the network within that time limit, the app simply stops working – giving you some level of protection if a PC is lost or stolen. For another example, ThinApp allows you to make an application completely portable – you could carry the Office Suite with you on a USB stick, plug it into any PC, use it, and leave no trace behind when you unplugged the USB stick. (Note: Doing this with the Office Suite could result in a violation of the Office EULA!)

Another “secret sauce” ingredient is the ability to allow limited communication between applications, even though they’re running in their own isolation environments (the “bubble” referred to earlier). For example, your accounting application may need to call Excel to render the output of a particular report. Early versions of application isolation required these applications to be “packaged” together, i.e., installed into the same isolation environment – otherwise, the accounting app wouldn’t know that Excel was available, and you’d get an application error. The latest implementations allow enough inter-isolation communication to take place to avoid problems like this while still avoiding application compatibility conflicts.

Application Hosting: This method can take a couple of different forms. The first is to virtualize the presentation of a typical Windows application by installing the application on a Terminal Server (in most cases, a Terminal Server with Citrix XenApp installed on it), and connecting to that Terminal Server using some kind of remote communications protocol (e.g., Microsoft’s RDP, Citrix’s ICA, etc.). We’ve been doing this for years, and thousands of customers and millions of users access applications this way every day.

Most readers of this blog are probably familiar with the advantages of this deployment model: centralized deployment and management, tighter security, granular control over what can be saved and/or printed at the client location, etc.

Application Streaming can work with this kind of Application Hosting by allowing you to stream applications to your Terminal Servers rather than having to explicitly install them or build them into your official server image. Citrix XenApp customers have the rights to use the Citrix streaming technology to do this, and Microsoft recently announced that the new Server 2008 R2 Remote Desktop Services CAL (formerly called a Terminal Services CAL) will include the rights to use App-V to stream applications to Terminal Servers.

Web-based applications can also be legitimately called “hosted applications” – whether they’re hosted in your own corporate data center, or by some kind of application service provider (e.g., Salesforce.com). In this scenario, all that’s required on the client PC is a browser – at least in theory.

In fact, the browser then becomes an application that must be managed! For example, you may find that you require a specific version of Java to access a particular hosted Web application – and if the user has local admin rights to the PC, the possibility exists that s/he will inadvertently install something that breaks its compatibility with your critical Web application. Some Microsoft applications require the use of Internet Explorer (e.g., Microsoft CRM is not compatible with Firefox). Some applications may even require a specific browser version. (When IE7 was first released, it caused compatibility issues for users of Microsoft CRM v3.0.)

Also, as a general rule, a Web application will require a more powerful client PC as well as more bandwidth between the client and the Web server to yield a good user experience, compared to an RDP or ICA client device connecting to a Terminal Server.

There is, of course, the option of installing an application directly on a device either by physically visiting the machine with installation media in hand or by using some kind of central management system to push the bits onto the client’s hard drive. These options, however, do not fall under the definition of application virtualization that we’re using here.

The important thing to take away from application virtualization is that no matter how you approach it, it will save you money:

  • Hardware – being able to host multiple applications on a single piece of hardware without worrying about application incompatibility. This can virtually eliminate the “silos” of servers with different configurations in large XenApp environments that used to be necessary to isolate those problem apps that wouldn’t play nicely with any others.
  • Licensing costs – with all your applications being housed in the data center you will have a better understanding of how many instances of each application you are using and will be able to better track your licensing needs
  • Maintenance – being able to update or patch a single instance of the application rather than needing to physically update and patch each machine.
  • Management – less hardware to look after, less time spent with helping end users with application issues, less time spent in application regression testing

Hope this clears up that “what is application virtualization” question. However if you have more questions feel free to use the comments or contact me directly.

Latest Blog Feeds
Testimonials
“Our business is all about process and margins; we rely on Moose Logic to install and manage network solutions that enable us to control both. Moose Logic created solutions that transformed our business relationships and processes.”
Ron Horowitz
Birchwood Park Homes
Read our Newsletter
Copyright © 2010 All rights reserved.
Wordpress Delicate template designed by NattyWP