Jump to content
Welcome to our new Citrix community!
  • 0

Citrix High Availability Service & Broker Service - LocalHostCache - Event ID 3602


Peter Keller

Question

Hi community,

 

after updating our SFR,PVS & DDC's from 1811 to 1912LTSR we have problems with the LocalHostCache.
DDCs are based on WS12R2 running .Net 4.8.03761 on Citrix XenServer 7.1 CU2.

 

Event Viewer reports the warning 3602:

EventLog_CitrixBrokerService_LocalHostCacheWARN - The Citrix Broker Service has detected an issue with communication with the database. To preserve functionality, responsibility for brokering requests will be handed over to the Citrix High Availability Service using locally cached site configuration. (attached image).

 

What I have done so far, I have 

Fix Incorrect Service Endpoint in XA/XD sites -> no change was made

- Citrix Config Sync Service failed an import (Disabled and Re-Enabled the LHC on the BrokerSite) & Recreated the local mssql db on both DDCs.

 

Show output from the BrokerService and HighAvailabilityService:

PS C:\Program Files\Citrix\Broker\Service> .\BrokerService.exe /show
SDK Port: 80
VDA Port: 80
StoreFront Port: 80
StoreFront TLS Port: 443
Log File:
Command completed successfully
The following service endpoints must be identical between the BrokerService.exe.config and HighAvailabilityService.exe.config files but currently differ: <endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bind
ingConfiguration="WorkerWsHttpBinding" contract="Citrix.Cds.Protocol.Worker.ILaunch" name="WsHttpBindingILaunchEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttp
Binding" contract="Citrix.Cds.Protocol.Worker.IDynamicDataQuery" name="WsHttpBindingIDynamicDataQueryEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBinding" c
ontract="Citrix.Cds.Protocol.Worker.IConfiguration" name="WsHttpBindingIConfigurationEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBinding" contract="Citrix.
Cds.Protocol.Worker.ISessionManager" name="WsHttpBindingISessionManagerEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingWithLargeMessageSize" contract="C
itrix.Cds.Protocol.Worker.IQueryAgent" name="WsHttpBindingIQueryAgentEndpoint" />;<endpoint address="net.pipe://localhost/Citrix/HighAvailability/SecondaryBrokerControl" binding="netNamedPipeBinding" contract="Citrix.Cds.HighAvailability.IS
econdaryBrokerControl" name="NamedPipeBindingISecondaryBrokerControl" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.
ILaunch" name="WsHttpBindingILaunchEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.IDynamicDataQuery" n
ame="WsHttpBindingIDynamicDataQueryEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.IConfiguration" name
="WsHttpBindingIConfigurationEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.ISessionManager" name="WsH
ttpBindingISessionManagerEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingWithLargeMessageSizeLinux" contract="Citrix.Cds.Protocol.Worker.IQueryAgen
t" name="WsHttpBindingIQueryAgentEndpointLinux" />
PS C:\Program Files\Citrix\Broker\Service> .\HighAvailabilityService.exe /show
SDK Port: 89
VDA Port: 80
StoreFront Port: 80
StoreFront TLS Port: 443
Log File:
Command completed successfully
The following service endpoints must be identical between the BrokerService.exe.config and HighAvailabilityService.exe.config files but currently differ: <endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bind
ingConfiguration="WorkerWsHttpBinding" contract="Citrix.Cds.Protocol.Worker.ILaunch" name="WsHttpBindingILaunchEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttp
Binding" contract="Citrix.Cds.Protocol.Worker.IDynamicDataQuery" name="WsHttpBindingIDynamicDataQueryEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBinding" c
ontract="Citrix.Cds.Protocol.Worker.IConfiguration" name="WsHttpBindingIConfigurationEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBinding" contract="Citrix.
Cds.Protocol.Worker.ISessionManager" name="WsHttpBindingISessionManagerEndpoint" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingWithLargeMessageSize" contract="C
itrix.Cds.Protocol.Worker.IQueryAgent" name="WsHttpBindingIQueryAgentEndpoint" />;<endpoint address="net.pipe://localhost/Citrix/HighAvailability/SecondaryBrokerControl" binding="netNamedPipeBinding" contract="Citrix.Cds.HighAvailability.IS
econdaryBrokerControl" name="NamedPipeBindingISecondaryBrokerControl" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.
ILaunch" name="WsHttpBindingILaunchEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.IDynamicDataQuery" n
ame="WsHttpBindingIDynamicDataQueryEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.IConfiguration" name
="WsHttpBindingIConfigurationEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingLinux" contract="Citrix.Cds.Protocol.Worker.ISessionManager" name="WsH
ttpBindingISessionManagerEndpointLinux" />;<endpoint behaviorConfiguration="WorkerEndpointBehaviour" binding="wsHttpBinding" bindingConfiguration="WorkerWsHttpBindingWithLargeMessageSizeLinux" contract="Citrix.Cds.Protocol.Worker.IQueryAgen
t" name="WsHttpBindingIQueryAgentEndpointLinux" />

 

I stuck at the problem and we are standing on one leg.

 

Greetings

Peter

2020-03-04 11_05_49-Citrix-Desktop-ODBSST - Desktop Viewer.png

Link to comment

3 answers to this question

Recommended Posts

  • 1

Hi community,

 

our solution that the error does not occur anymore was to copy the client bindings from the BrokerService.exe.config to the HighAvailabilityService.exe.config (screenshot attached). 

I copied the green marked <client> --- </client> and replaced it with the bindings in the orange box.

1250558070_filecompare.thumb.png.ccb7e5f2fc9d76e7d1a4f986fc7dbee2.png

Even tho the config has a lot of more differences like you see on the right in the "Compare NavBar" but after the following tests I think thats okay.

 

The /show output from the services also are not reporting an error again.

261293825_serviceshow.thumb.png.d5f7b963cb45e15d258c9ba1304d8474.png

After reconfiguring the files I have restarted ddcs and there was no error again. I tested the lhc by using the Force an outage mode. So I set it on ddc2 to enabled and restarted the broker service -> VDAs registered on ddc1 and also on ddc2 so I think HA and LHC is working correctly.

 

Thanks for reading.

 

Regards

Peter

  • Like 1
Link to comment
  • 0

Shawn Barnard,  but how did you find out which one was the  correct endpoint address ??  

I have several different environments and they all show like information in the broker and HA config files.  on every server that address is different from one file to the other.

yet one doesn't work.  and three do. 

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...