?
Solved

Shutdown a rogue process in Citrix

Posted on 2011-05-11
19
Medium Priority
?
891 Views
Last Modified: 2012-05-11
I manage a citrix farm and 1 program is occasionally consuming 100% of the CPU. The program is used by most users of the server but only 1 bad process instance brings whole server to a crawl.
My question is how do I throttle or terminate a process that is consuming 100% of the CPU I know the name of the exe file too if that helps?

Cheers
Damien
0
Comment
Question by:ITAS01
  • 8
  • 7
  • 2
  • +1
19 Comments
 
LVL 37

Expert Comment

by:Carl Webster
ID: 35745597
What is the EXE?
0
 

Author Comment

by:ITAS01
ID: 35745737
JIWA.exe it is a SME ERP system that is not always stable. I think currently being rewritten in .NET

Cheers
Damien
0
 
LVL 11

Expert Comment

by:KrAzY
ID: 35761102
Do you monitor your servers and if so with what?  Is it that you want something to kill it for you or you just want to know when it is happening so you can check and then kill it?
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 24

Expert Comment

by:Dirk Kotte
ID: 35818425
you can use the CPU-optimization-feature to reduce problems resulting from Application-cpu-Spikes.
Also if you use published apps you can reduce the application priority while configuring the app.
0
 

Author Comment

by:ITAS01
ID: 35820063
I don't wont to reduce the priority as it is their main ERP program but occasionally 1 instance will spike when the program is left idle and consume 100% CPU. So yes would either like to be notified and / or kill Process that stays at 100% for more than 60 seconds.

Cheers
Damien
0
 
LVL 11

Expert Comment

by:KrAzY
ID: 35820674
Do you have a monitoring solution in place now (ex. SCOM)?
0
 

Author Comment

by:ITAS01
ID: 35820704
No? Any decent ones you can recommend? I guess monitoring will tell me but I also want a solution to fix without manual intervention as well?
0
 
LVL 11

Expert Comment

by:KrAzY
ID: 35820752
Microsoft SCOM is an Enterprise based monitoring solution.  I'm not sure on the size of your environment, but it may be to complex/expensive.  Depending on what version of XenApp you're running I believe you can use EdgeSight "light" for free which replaced Resource Manager.  I don't know if it has the ability to monitor or alert, but it is something you could look at.

As for no manual intervention... I'm not sure if I have a good solution for that.  I guess it could be scripted, but I'm not sure if I could whip something up that would be 100% accurate in killing a rogue processs.
0
 

Author Comment

by:ITAS01
ID: 35820754
KrAzY
Thanks for you input. But this requirement is nothing new just suprised there isnt a solution.
How do you manage a rogue process that starts peaking at 100% and stays that way until
1- Users say server is going slow
2- Administrator logs in an kills process manually

Cheers
Damien
0
 
LVL 11

Expert Comment

by:KrAzY
ID: 35820821
This is a tuff one.  The correct answer is to have the software company/developer fix their application ;-), but as we know that rarely happens.  Sometimes you can get lucky with multiple core systems where one rogue process can only consume one core (assuming single threaded).  Granted still not good, but the other users can use the cores not consumed by the rogue process.  It really depends on the applications, amount of servers, amount of cores per server, etc but on a four core system you could get away with the occassional rogue process.

After re-reading though... are you running 1 core systems (physical or virtual)?

0
 

Author Comment

by:ITAS01
ID: 35820868
VMWARE ESX 4 - I only use a single vCPU as most discussion including my training course suggest that a single vCPU is better and let ESC CPU scheduler handle the sharing.

LOL the ERP vender will be releasing a .NET version which will hopefully stop memory leak and CPU spike but until then I am amazed that there isnt a simple solution for automatically shutting down a rogue process?

Cheers
Damien
0
 
LVL 11

Expert Comment

by:KrAzY
ID: 35820933
My guess is that it is hard to determine what is rogue.  How can a monitor know that a process taking 100% is rogue.  Maybe a process is actually using 100% for minutes because it is processing a large "job".

You've probably come to the conclusion that a process from this application at 100% for x minutes is actually rogue which again is probably hard for a monitor to determine.

I don't know what type of hardware you're running, but I would never suggest a single vCPU for a XenApp/Terminal Server environment.  Windows Server/Terminal Services is inherently a multi-user, multi-threaded, multi-process environment.

As for "let ESX CPU scheduler handle the sharing", I'm not sure if that makes sense. For example if you have a 2 CPU system (Core or Physical) and 4 VMs @ 1 vCPU then the scheduler would determine when to give 2 of the VMs "rights" to use the CPU (i.e. switch back and forth).  That doesn't help with what is happening within the OS.  As I state below I believe Windows is more efficient when it has more CPUs.

I would at minimum suggest a 2 vCPU setup.  More than 2 is debatable.  If you're running newer hardware Intel Nehalem or newer then possibly 4 vCPU.

I'd suggest it on W2K3 and even more on W2K8.  I believe Windows if more efficient with multiple cores since multiple cores have been around for 4/5+ years so it is built with that in mind.

It doesn't really answer you question... although I would suggest a multiple vCPU setup.
0
 

Author Comment

by:ITAS01
ID: 35820944
KrAzY
My VMWARE 4 classroom was full of professionals and we had about an hour discussion on this as most where of the opinion of 2 vCPU but it can lead to racing and scheduling problems for other VMWARE machines and has in some instances lead to poorer performance of the VMWARE machine. Anyway a rogue process could be easily defined as a process taking X% of CPU for X seconds and needs either throttling or temrminating.

Cheers
Damien
0
 
LVL 11

Accepted Solution

by:
KrAzY earned 2000 total points
ID: 35820993
I would suggest reading this... I think you have to sign up to dowload the white paper:

http://projectvrc.nl/index.php?option=com_docman&task=doc_details&gid=11&Itemid=

Personal opinion is to raise vCPU and scale back the hosts.  As for killing a process after taking X% of CPU for X seconds, I don't think I have a solution except for dkotte's suggesting about implementing the "fair scheduling" built into XenApp which can be tweaked via registry keys.
0
 

Author Comment

by:ITAS01
ID: 35821029
Hmm have to register to get document.. I'd love to read but hate registering :)

Dkotte can you provide more information on this please?
0
 
LVL 11

Expert Comment

by:KrAzY
ID: 35821049
They produce some good whitepapers... I hear ya though.  Hate signing up for stuff, but I did in this case.

I"ll provide this:
http://support.citrix.com/proddocs/index.jsp?topic=/xenapp5fp-w2k8/ps-maintain-enable-cpu-ut-man-v2.html

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

0
 
LVL 24

Expert Comment

by:Dirk Kotte
ID: 35824524
you need information to the CPU-optimization-feature ?
0
 
LVL 37

Expert Comment

by:Carl Webster
ID: 35824763
I disagree.  You need to sign-up for the free Project Virtual Reality Check white-papers.  They are they #1 experts in this area of how many vCPUs and RAM to assign to VMs for the 3 main hypervisors.  I would highly recommend you read and digest their independent work.

In case you are wondering, VMware, Microsoft and Citrix all have standardized on the testing methodology used by PVRC and make changes to their products based on issues found and raised by PVRC.

http://projectvrc.nl/
0
 

Author Closing Comment

by:ITAS01
ID: 36211819
Didn't really solve my problem but some good performance tips in article reference.
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Citrix XenDesktop 7.6 Citrix Policies Audio
CITRIX XENAPP 6.5 FARM CUSTOM POLICY - CHANGE MANAGEMENT WINDOW REBOOT SCHEDULE
How to install and configure Citrix XenApp 6.5 - Part 1. In this video tutorial we have explained step by step installation of Citrix XenApp 6.5 Server on Windows Server 2008 R2 is explained in this video. We have explained the difference between…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

850 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question