Citrix Netscaler VPX – High CPU usage – 50% – One Core


Seeing high CPU utilization on a Netscaler VPX (one core dedicated?) which is running on a hypervisor platform? (vmware, hyper-v, xenserver). I did some investigation, and found the following Citrix Statement:

This is normal behavior and NetScaler appliances exhibit the same behavior. To see the true extent of NetScaler VPX CPU utilization, use the stat cpu command in the NetScaler CLI, or view NetScaler VPX CPU utilization from the NetScaler GUI. The NetScaler packet processing engine is always “looking for work,” even when there is  no work to be done. Therefore, it will do everything it can to take control of the CPU and not release it. On a server installed with NetScaler VPX and nothing else, this  results in it looking like (from the hypervisor perspective) that NetScaler VPX is consuming the entire CPU. Looking at the CPU utilization from “inside NetScaler”  (by using the CLI or the GUI) provides a picture of NetScaler VPX CPU capacity being used.

From a Netscaler Command Line, (not from the BASH shell) run the command ‘stat cpu’
It should result in:

ID      0

NOTE: Utilize the ‘stat cpu’ command in the Netscaler Command Line. Don’t utilize TOP within the bash shell, or look at hypervisor monitoring solution’s, etc… They give a ‘wrong view’ on Netscaler CPU utilization. The NS-PPE process is utilizing a lot of CPU resources. This is for TCP/UDP/IP packet processing (even if there is no work load) and this is ‘default behavior’. If this is behavior is ‘not done’ then invest in a Netscaler MPX or SDX.

So that’s cleared,