Citrix Streaming Profiler Saves the Day & A Primer

Sometimes I get caught up in the daily work grind and I lose track of how awesome the technology I work with every day is, and how it enables me to solve very important problems, and sometimes even makes me look like a rockstar.

That sort of thing happened just yesterday so I wanted to take a couple of minutes to highlight a big win that XenApp, the Citrix Streaming Profiler, and streamed apps in general helped me achieve for our team.  Since I took the time to document it for later internal use anyway, I’m also going to publish a version of the primer here.  I’m sure most experienced XenApp admins won’t need this, but having been the guy searching the web for a little how-to help before, I’m also hoping somebody might find it useful.

I work at a large public university.  We have a lot of Mac users on campus, and the number increases every year.  Heck, I’m one of them.  We also run really huge systems for things like grades, registration, degree auditing, and payroll.  It may come as a surprise to you, but many of these large systems and applications don’t make a huge effort to be “Mac friendly” client-wise.  One of our first big wins with the rollout of our new system was publishing Internet Explorer so faculty using Macs could run a web application that required an ActiveX plugin, which meant it required IE.

Yesterday I was made aware of an issue involving another system, its Java-based web client, and Macs.  As both “the Citrix guy” and one of our main Mac guys, these problems naturally gravitate to me, and I’m happy to work on problems like this because they a) increase the utility and value of my Citrix systems and b) help out my fellow Mac users.  In a nutshell, something was going wonky on this system, rendering the text output on Macs, but only on Macs, too tiny to be read comfortably.  So the manager of our HelpDesk came to me and asked if we could use the published copy of IE to solve this issue.  The answer at that moment was no, as we were publishing a vanilla copy of IE and we don’t have a JRE baked into the PVS image it runs on.  But the answer quickly became yes.  I knew it was possible to profile plugins and stream them down to be used with a local (or published) copy of IE, and I even did it once or twice during our POC, but hadn’t had any reason to do so in production.  Another wrinkle was this particular web app needed a specific older version of the JRE, but that’s the sort of thing app streaming is made for.

To make a long story short, I jumped on my virtual server I use for profiling apps, fired up the Streaming Profiler, profiled the specific version of the JRE needed, and saved it to our App Hub.  From there, I published it, tested it on my Mac as both me and a couple of different test normal users, and then did a quick demo for our HelpDesk manager.  She was impressed, and we had a solution to offer our Mac users in case the font size wonkiness couldn’t be resolved in some other manner.

Was it amazing?  Not really.  Was it something only a veteran Citrix admin could do, and that only after hours of research and planning and painstaking work?  Not at all – it was practically a textbook example of a problem designed to be solved by application streaming.  But whether it was an easy problem to solve or a hard problem to solve, the important part is we solved the problem and helped out our users.  I’d call that a win any day.

That’s the end of the “Saves the Day” post.  Unless you need a primer or refresher, I’d suggest you stop reading now, because everything after this section is going to be kinda boring – just screenshots and instructions.

How to profile JRE (or some other IE plug-in) with the Citrix Streaming Profiler

This guide presumes you’re starting with a fresh profiling (virtual) machine running the same OS as the one to which you will be deploying the plug-in. It also doesn’t document every single Next click – but it should be obvious.
1.  Launch Citrix Streaming Profiler and click New Profile.  Give the Profile a name and click Next.

Csp 01

(You’ll be skipping past User Updates, Legacy Offline Plug-ins, Inter-Isolation Communication (unless needed).)
2.  Be sure to select the correct operating system(s) as the Target.  Our system is all 2008R2 at this time, so the default is fine.  Click Next.

Csp 02

3.  Select Advanced Install and click Next.

Csp 03

4.  Select Install IE Plugins, Web applications, or online updates (Microsoft Internet Explorer only) and click Next.

Csp 04

5.  Click the Launch Microsoft Internet Explorer button.

Csp 05

6.  Browse to the provided URL for downloading the specific version of the JRE, click to accept the license agreement, and click on the Windows x86 Offline (32-bit) download.  Do not save the file.

Csp 06

7.  Choose to run the installer, not save it.  This is necessary because the Streaming Profiler has to see the JRE installer running in the same context as the Internet Explorer process it launched.

Csp 07

8.  Walk through the JRE installer accepting the defaults.

Csp 08

9.  Once the JRE is installed, test it by opening the web app that requires Java.  You should be prompted to approve the running of the JRE.  Do so.

Csp 09

10.  Success!  Close any Java and IE windows that are open

Csp 10

11.  Click Next.

Csp 11

12.  Make sure Finish installations is checked and click Next.

Csp 12

13.  There are no applications that need to be run at this point, so click Next.

Csp 13

14.  Internet Explorer was run during the installation, and is the only application to publish, so click Next, then Finish.

Csp 14

15.  Save the JRE Profile to the App Hub.  If you click Browse, you will see the folder you last saved a profiles app to.  Select it and click Save.

Csp 15 1

16.  Once the save is completed you will see the full size of the JRE profile in the right-hand pane.

Csp 16

Now it’s time to publish the application.  Launch AppCenter and publish a new app.
17.  Give the application a name and description, and click Next.

Csp 17

18.  This will be an Application, Accessed from a server (this is for Mac users, remember?), and it will be Streamed to server.  Click Next.

Csp 18

19.  Browse to the App Hub and select the JRE Profile we just created.  Internet Explorer will be selected as the application to be launched.  We can insert the URL of the portal to save users a step.
Click Next, and go through the standard steps for choosing the servers to which the app will be published, the users, etc.

Csp 19

20.  Here’s a screenshot of the JRE running via Internet Explorer on my Mac.

Csp 20

This entry was posted in Applications and tagged , , . Bookmark the permalink.