All versions of Centrify DirectControl.
The following error message are seen in the logs. This behavior is observed on two different Linux servers (both were upgraded to 4.4.2) in two different domains. Both servers are running JVMs. When the timeout occurs the system hangs for a period of time.
Each time this happens I see messages similar to the following in the system logs:
WARN <fd:23 crond(10650)> Failed to send message: Timeout during operation DEBUG <fd:16 NSSGetGroupDataByName> base.osutil Module=Base : Unable to send reply message to client (reference ipcclient2.cpp:560 rc: 404) WARN <fd:16
NSSGetGroupDataByName> daemon.ipcserver Unable to send reply message to client -- disconnecting client.
Jan 20 04:07:31 dcpportav adclient: DEBUG <bg:ageBindings> base.bind.healing Binding 'yourcompany.org(GC)' idle for 300 seconds - closing Jan 20 04:10:01 dcpportav adclient: DEBUG <fd:16> PAMUserIsOurResponsibility> base.bind.healing reset SPPCOS.ORG(GC)
PAMUserIsOurResponsibility> disconnect state to connected
These exact messages don't always appear but there is always a "timeout or unable to send reply" message logged when the server hangs. What do they mean?
The reason is by default, adclient (the Centrify daemon) closes connection if idle for 300 seconds. We can disable this behavior, but there is no reason to hold on to a connection if it has not been used. We will
re-establish connection when we need it (hence the name base.bind.healing).
The following suggestions are provided for this specific customer and so it cannot be applied all the time. It is highly recommended to contact support before implementing any of the parameters.
1) Centrify suggest customers to enable nscd as this improves performance and reduces calls to adclient. (nscd is a name caching demon which caches usernames and password similar to Centrify).
2) We also suggest making the following changes in /etc/centrifydc/centrifydc.conf:
a) dz.enabled: false (what this means the DirectAuthorize component can be disabled if its not being used so that we can avoid making calls to check if DZ is enabled or not)
b) adclient.binding.idle.time: 60 (what this means is "this configuration parameter specifies the maximum number of minutes to allow as idle time when binding to Active Directory. Default is 5 minutes and we recommend customer to bump to 60 minutes).
Run adreload and adflush and one should not see these messages.
None as this is specific to customer's environment and not all the above parameters maybe needed.