Appsense and SQL database Best practice

Wednesday, 30. March 2011

We had another issue in our environment where the first users would would log into the Citrix environment would see long login times, plus sometimes his personalization settings won’t load and after that if helpdesk logs her off then next time user logs in they will not face any issue with the logon times or with personalizations being available.

When checking the event logs from the Citrix server we got these error Messages

Log Name: AppSense
Source: AppSense Environment Manager.
Date: 3/28/2011 7:10:40 AM
Event ID: 9661
Task Category: None
Level: Warning
Keywords: Classic
User: test1
Computer: test
Description:
A timeout occurred whilst trying to communicate with the Personalization Server.
Source: AppSense Environment Manager.
Date: 3/28/2011 7:10:44 AM
Event ID: 9660
Task Category: None
Level: Error
Keywords: Classic
User: HO\test1

Computer: test

Description:
Personalization for {8a594686-895c-4fcd-8fe9-4848dd9145e5} failed.

Ok further we looked in the logs of the database, which Indicated the Personalizationdatabase was for some reason closing and when the First user in the environment would log in it would open and you would see these messages and sometimes, which can lead to the timeout messages which I Indicated earlier.

Event Type: Information
Event Source: MSSQLSERVER
Event Category: (2)
Event ID: 17137
Date: 3/29/2011
Time: 7:07:36 AM
User: homelab\Appsense
Computer: DBserver
Description:
Starting up database ‘PersonalizationServer’.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Data:
0000: f1 42 00 00 0a 00 00 00 ñB……
0008: 0e 00 00 00 4e 00 54 00 ….N.T.
0010: 44 00 42 00 50 00 48 00 D.B.P.H.
0018: 32 00 32 00 39 00 30 00 2.2.9.0.
0020: 4d 00 30 00 30 00 00 00 M.0.0…
0028: 07 00 00 00 6d 00 61 00 ….m.a.
0030: 73 00 74 00 65 00 72 00 s.t.e.r.
0038: 00 00 ..

So as a best Practice please ask your DBA to set “database option AUTO_CLOSE to OFF “, this will surely help in alleviating some of the Inconsistent Personalization related issues.

Another thing to note is that this option to auto close is Enabled by default if you Created the Personalization DB as part of the Application Install.

Thanks,

Paras

Appsense and Citrix Provisioning Server Best Practices

Monday, 28. March 2011

I am writing this article based on my experience and Various issues which have come across during my project at a Client location.

Citrix Provisioning Server Bring it’s own advantages as we all know but at the same time what I feel it has it’s own disadvantages as well, especially for the fact it’s hard to find a way to get your enterprise applications/agents  working right. and same issues were true with Appsense.

So issue was how do you ensure that Appsense agents are recognized properly in their deployment groups.

 

Appsense Keeps tracks of the machines based on the their machine id and the Group Id in the registry

HKLM\Software\AppSense Technologies\Communications Agent

Value: Group ID

Value: Machine ID

Group ID is the deployment group GUID which helps keep the machines in the Appropriate deployment group and machine id is the GUID which defines the unique identity of the machine. All this information is further kept in the “dbo.machines” table in the management server database, which further has machines netbios name, location in the active directory and other things which are Visible to you in the Appsense Management Center Console.

So if you Startup actions based on the OU membership are not running right on the machines which are being streamed using PVS, please check this Table and ensure that proper active directory location is present in the Database Table.

 

So coming back to the point on ensuring Proper Deployment group memberships please ensure that, you blank out the above mentions registry values before converting the vdisk to the standard mode, basically when you run the Xenapp Configuration wizard to prepare the Server for imaging, you will have to remove GUID entries on the Above mentioned registry, what this will do is that when the server boot up next time, they will go to their respective Deployment groups if they are already part of one, else they will be showing as discovered if they are not part of any deployment group.

Also you will have to do this each time you update your vdisk, especially at a time when you are rolling a new server in the xenapp environment. if you don’t do this you can have different level of unexpected behavior where start-up actions won’t run and many others.

 

     So as a best practice to use CCA with PVS remove the values for the “GUID’s” for “Machine id” and     “Group ID”, also ensure that when you are blanking out the values, your CCA service is in stopped state.

PS: Doing this is also Important as not doing this might cause you few Issues with future upgrades of Appsense as well.

FAQ: Provisioning Services 5.1 Service Pack 2 through 5.6

Thursday, 2. September 2010

This is Probably the Best Kb article which I have ever come across on the Citrix Site.

It’s a no-nonsense Stuff, also Provide details about the questions which a project Engineer/Architect need to answer during their Design and Implementation phase, I have run across because of the Fact we need to Decide how to Size our Provisioning Server and I feel this is really useful

http://support.citrix.com/article/CTX125744

 

Along with the KB article Suggested above here’s an  additional Link which again Provide a Superlative Information about how to Size your Provisioning Server and what to consider from Memory and Storage Perspective and to a Certain Degree it talks about the Network and the data being Transferred over the Network.

 

Advanced Memory and Storage Considerations for Provisioning Services

http://support.citrix.com/article/CTX125126

 

Now if anyone has any information about how to Virtualize a Provisioning Server for Datacenter, then Please Pass is on, else I will Post what I find out in next Couple of weeks.

 

Thanks,

Paras

HDX Experience Monitor for XenApp

Wednesday, 1. September 2010

Finally!!!!  HDX Experience Monitor for XenApp is released, Long awaited and much needed.

What is does :-

This tool provides detailed information about the various HDX technologies, their performance, and diagnostics information. It is a similar tool as HDX Experience Monitor for XenDesktop. The HDX technologies covered by this tool are as follows:

     
  • Thinwire (Graphics)
  • MediaStream
  • Flash
  • USB
  • Branch Repeater
  • Printer

Prerequisites

• XenApp 6.0

• Citrix Receiver 11.0 or later

• This tool is installed on the XenApp Server

More on the Following Kb article.

http://support.citrix.com/article/CTX126491

VDI or TS, VDI and TS

Saturday, 24. July 2010

Here’s one of the best post I have ever come across, which basically points out that it’s more or like going to be in the same way :)

Here’s the Link to the post and it’s awesome how he compares the issues in TS being the Same you will have with VDI :)

http://www.jimmoyle.com/2009/05/why-is-vdi-changing-into-terminal-server/

Key points

So where does that leave us on our big VDI project?

 

  • Multiple users on an OS image
  • Application silos
  • Locked down desktops
  • Profile solutions from Appsense, RTO, RES etc.
  • Users limited to Task and knowledge workers
  • Oh yeah, print solutions from Citrix and ThinPrint.
  • Desktops accessed via RDP or ICA

 

And Shawn bass Comments are way too good as well..

Unfortunately, the VDI fanboys would like everyone to think otherwise.

Don’t Use Vmxnet3 Network card with Citrix Provisioning Server 5.1

Monday, 5. July 2010

As the title suggest, you should not use vmxnet3 network card with any of your target devices in the Provisioning server,reason being that if you try to use it, only thing you will get is a Blue screen error with the Stop code 0X7B and you won’t be able to boot up your Target Devices.

clip_image001[4]

Ok, So want to know the reason here it is http://support.citrix.com/article/CTX125361, Yes you might see that this article only applies to Provisioning Server 5.6, but no.. it applies to Provisioning Server 5.1 SP2 As well.

Another interesting fact is that error would come only with Windows server 2008 R2 running Xenapp 6.0 and not with Xenapp 5.0 running on Windows Server 2008, Although article says it applies for all version of windows 2008 and Windows 7, but it worked for me, until I decided to migrate My environment to Xenapp 6.

 

So guys to conclude, just stick with e1000 network Adapters,if you want to boot up your target devices running on the Vsphere 4.0 and CITRIX please update your knowledge article.

Paras

Issues Installing Provisioning Server Agent

Sunday, 13. June 2010

Just wanted to Document about the issue, which we faced while trying to create a Xenapp Template Server for our new Xenpp 6.0 Farm.Enviornment which we have is that we are running all our servers on Vsphere 4.0 U1 and we Generally Create our Basse windows 2008 R2 machine , using the tempalte created for Deployment.

So we got a new server and Started with the Install of the PVS Agent and here’s the error which we get:-

and then If I press “OK”, here’s the next error I get.

So after You press “Ok” here the installion will roll back and PVS agen’t won’t install.

So to Investigate what the issue was, I started Using Procmon and Found the I was getting Access denied while trying to update files In the Folder “C:\Windows\system32\Driverstore” and there are 4 file in this folder, which IN particular were getting access Denied.

These Files were :-

1. Infpub.dat

2. driveindex.dat

3.Infcache1.dat

Ok, i checked the permissions of the folder Listed above, and here were the ntfs permissions.

So i thought, lets give the permissions which it needs and then I can start the install, but everytime I would add permisions they would just vanish, and some further research tols me the this foler is a “Secure folder” in windows server 2008 and you can’t just Simply assign the permission.

I was almost thinking, what am I doing wrong, to see if there’s something wrong with the template, i build another windows 2008 Machine which was based out of the RTM and started the install of the PVS agent and as expected or should I say suspected…. Install went fine without any issue at all.

To further investigate, I unistall the agent from the newly build server and started monitoring the install, using Procmon, and to My surprise, the agent was able to update files in the “Driver store” without any issues, and that made me think what was different, then I spoke to our guy who created the template for windows 2008 Dpeloyment and he showed me the changes which were done to create the tempalte more secure.

One particular change which affected us was related to the members’s of the “user” group, by default all “Authenticated users” and “Interactive” are part of the user group as seen below in the screenshot

Whereas our Tempate had removed both these from the “users” group,so what is did that, considering that  bye default ” User group” has read permisions on the secure folder “driver store” and when I was trying to Install the agent, because I was not part of the user group or neither I could change permisisons for the secure folder I wasn’t able to read any files in that folder (Driver Store), so to test this theory, I changed the user group membership to be what it is as per the default install of the Windows 2008 and “waaalla” i was able to install PVS agent without any issue at all.

If you also face this issue related to “Access Denied” Just while running the install, just add admin group as part of the users group, or make your “domain users” group part of the “users” group on the local server and once you are done with the install just remove the group of keep it if you want to.

It was a difficult issue to resolve considering lot of things have change from windows 2003 to windows 2008 R2 and you are not always aware of all the changes, which has gone it.

Plus if anyone else has any other suggestions for the issue I faced please ping back, I would be interested in learning that.

Thanks,

Paras

My Experience with Wyse Xenith (Zero Client)

Thursday, 3. June 2010

Well, just want to give a brief intro about the project I am working on for my client.

We are in a process of defining a strategy around thin client in our organization, and are looking to build up and environment where we can give xenapp6 with a fully Published Desktop Mode and with Streaming the applications using citrix’s streaming technology, along with this I am also evaluating various thin client available in the market.

So today I will talk about “Xenith” the latest offering from Wyse which is supposed to be the first HDX ready Zeroclient.

Well, when I received xenith I was super excited about getting this device which to me looked like a perfect solution for our citrix environment and I plugged it in and got it connected to our Xenapp web Service site (PN Agent Earlier) which is of our existing Xenapp  5.0 Environment.

Till this point I was still super excited and then I got connected to my session and I was  running my regular tests with any thin clients like accessing a downloaded video in “*.wmv” format, then running couple of our internal companies videos they also worked fine, in fact the video resolution and quite a bit better than regular C class thin client from Wyse with thin OS on it, things were going fine till this point and then came the time where I would test our regular user training videos, which are made in Flash and this is where I encountered a Problem, well the problem was the “Sound” of this video was so Choppy that it was basically “inaudible”.

Now I started thinking what’s going on, isn’t this HDX ready :) , then I checked the application logs of our windows environment and too my surprise I got an error message  which basically indicated that “client device does not support HDX for client so it’s going to switch to server side rendering” I said ok, that’s fine.. But why Xenapp 5.0 is recognizes it as a device which does not support HDX for flash.

I then called up a Wyse engineer about this audio issue and he said server side rendering is a normal behavior but such poor audio quality isn’t as expected and he told me to replicate the issue in his environment and then come back to me with his findings.

But in the mean time, I happen to read SBC Guru’s blog and especially his blog about “XENITH”  where he does technical analysis about the device and then I came to know about this entire thing about what components of HDX are  supported and what’s not, following is an excerpt  from brian’s blog :-

How much “HDX” does the Xenith support?

  • HDX Plug-n-Play: USB 2.0, printing, true multi-monitor, smartcard, isochronous USB 2.0 (webcam, etc.)
  • HDX RealTime: VOIP on LAN, client audio recording
  • HDX Mediastream: CD quality audio on LAN
  • HDX Mediastream (via client-rendered multimedia redirection): WMV, H.264, DIVX, MS-MPEG4
  • HDX Mediastream (via host-rendering): Flash, Quicktime, and everything else.
  • HDX WAN Optimization (Branch Repeater, etc)
  • HDX Broadcast (Session Reliability, etc)
  • other: Access Gateway (in CSG mode), Progressive Display, desktop restart, auto-connect, ICA ping, etc

As you can see that everything about flash is host side rendering, ok.. so I said fine, may be something wrong with my citrix server as to why I am getting such a bad quality for the flash Audio, so I testing it on an another citrix server which was also running Xenapp 5, the results were same, a very very bad audio and also there was a significant amount of lag sometimes between audio and video, I was still wondering what’s going on… until… until.. I came across this citrix webpage which indicated citrix Ready thin client devies and as indicated Xenith is only tested for or is ready for :-

Wyse Xenith™ is verified to be compatible with

Citrix Product Version Operating System
XenApp 6 64-bit
XenDesktop 4.0

So I said wow!!!, how come no one specified about it and why is that it’s only ready for Xenapp 6, so to put this to test I changed my Connection Broker to point to the Pnagent site which pointed to the “Xenapp 6″  environment which is still under construction :) , and I started the same Flash training lessons and got the same warning message in my event log on the servers, but……..… I got a very nice and great Audio and Video, it was a great user experience almost like accessing from a device which was rendering the flash locally.

Important thing to note is that why there is such a big difference, in the quality of audio, I think it got to with the way server side rendering is being done by Xenapp 6 as opposed to Xenapp 5 and wyse has worked with citrix more tightly than ever before to get Xenith ready for Xenapp 6 and Xendesktop 4, so they have optimized this device for these environments and it looks like Wyse will continue to add New feature into their Zero clients as Citrix continue to grow their products around HDX.

Conclusion:-

Use Xenith only if you plan to use Xendesktop 4 or Xenapp 6, don’t think that Xenapp 5 with FR1/2 or Xenapp 4.5 with FR3 would not give a decent performance.

Xenith is a great product and I would love to use it if I have a Citrix Environment, be it be Xendekstop 4 or Xenapp 6.0.

Thanks,

Paras Chopra