Zone Servers Monitor (>512)

Citrix.PresentationServer.NumOfServersInZoneTooHigh512.Monitor (UnitMonitor)

Monitors and detects when the number of servers in a Citrix zone is greater than 512

Knowledge Base article:

Citrix ® Management Pack

Summary

A zone has been found to contain more than 512 member servers. With default settings, data collector performance can be seriously affected if the number of member servers exceeds 512. Citrix recommends you make registry changes to optimize data collectors for large zones.

 
Causes

The data collector maintains all load and session information for every server in its zone. A single zone supports up to 1000 member servers. However, if a zone has more than 512 member servers, each zone data collector and potential zone data collector must have a new registry setting. This new setting controls how many open connections to member servers a data collector can have at one time. To prevent the data collector from constantly destroying and recreating connections to stay within the limit, set the registry value higher than the number of servers in the zone.

 
Resolutions

To increase the number of connections a zone data collector can handle efficiently in a large zone, you must modify the registry. Read the information listed below for important considerations on zone design in a server farm.

WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved.

To modify the maximum number of connections to member servers in a zone, add the following value, expressed in hexadecimal notation, to the registry:

HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\RUNTIME\MaxHostAddressCacheEntries (DWORD)

Value: 0x200 (default 512 entries)

Note that this value must be added for all potential data collectors in the zone, not just the current data collector.

When you are satisfied that the registry has been modified on all potential data collectors, you can disable this alert. Note, however, that this disables potential alerts for all other zones.

 
External Knowledge Sources

The following sources of information can be helpful when dealing with this error:

  • Citrix Presentation Server Administrator's Guide - English
  • Advanced Concepts Guide for Citrix Presentation Server - English

Or search the Citrix knowledge base for more information.

 
© 2002-2008 Citrix Systems, Inc. All rights reserved.

Element properties:

TargetCitrix.PresentationServer.ZoneDataCollector
Parent MonitorSystem.Health.PerformanceState
CategoryAvailabilityHealth
EnabledTrue
Instance NameCitrix_Zone
Counter NameNumServersInZone
Frequency86400
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.WmiBased.Performance.ThresholdMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Number of servers in a zone is too high (>512)
The number of servers in zone {0} is high, suggest registry change on data collector.
RunAsCitrix.PresentationServer.CitrixAdministratorAccount

Source Code:

<UnitMonitor ID="Citrix.PresentationServer.NumOfServersInZoneTooHigh512.Monitor" Accessibility="Public" Enabled="true" Target="Citrix.PresentationServer.ZoneDataCollector" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" RunAs="CtxLibrary!Citrix.PresentationServer.CitrixAdministratorAccount" TypeID="Windows!Microsoft.Windows.WmiBased.Performance.ThresholdMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Citrix.PresentationServer.NumOfServersInZoneTooHigh512.Monitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type='Citrix.PresentationServer.ZoneDataCollector']/ZoneName$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="OverThreshold" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<NameSpace>\\$Target/Host/Host/Property[Type='Windows!Microsoft.Windows.Computer']/NetworkName$\root\Citrix</NameSpace>
<Query>SELECT * FROM Citrix_Zone WHERE ZoneName="$Target/Property[Type='Citrix.PresentationServer.ZoneDataCollector']/ZoneName$"</Query>
<Frequency>86400</Frequency>
<ObjectName>Citrix_Zone</ObjectName>
<CounterName>NumServersInZone</CounterName>
<InstanceName>$Target/Property[Type='Citrix.PresentationServer.ZoneDataCollector']/ZoneName$</InstanceName>
<Value>$Data/Property[@Name='NumServersInZone']$</Value>
<Threshold>512</Threshold>
</Configuration>
</UnitMonitor>