Problem:
The following error message are seen in the 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[3170]: DEBUG <bg:ageBindings> base.bind.healing Binding 'yourcompany.org(GC)' idle for 300 seconds - closing
Jan 20 04:10:01 dcpportav adclient[3170]: DEBUG <fd:16> PAMUserIsOurResponsibility> base.bind.healing reset SPPCOS.ORG(GC)
Jan 20 04:10:01 dcpportav adclient[3170]: DEBUG <fd:16> 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?
Cause:
The reason is by default, adclient (the Centrify daemon) closes connections if idle for 300 seconds. This behavior can be disabled, but there is no reason to hold on to a connection if it has not been used. The connection will be re-established when it is needed (hence the name base.bind.healing).
Resolution:
1) Centrify suggests 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 (This means the DirectAuthorize component can be disabled if it is not being used so that making calls to check if DZ is enabled or not can be avoided)
b) adclient.binding.idle.time: 60 (This configuration parameter specifies the maximum number of minutes to allow as idle time when binding to Active Directory. Default is 5 minutes. It is recommend to bump to 60 minutes).
Run adreload and adflush and then those messages should not be seen.