From: Marcin Siodelski Date: Thu, 14 Jun 2018 10:26:18 +0000 (+0200) Subject: [5649] Added section in the HA about timeouts. X-Git-Tag: Kea-1.4.0~1^2~3^2~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=680ff0071885d9658e5d6890c63bdbb92024ea67;p=thirdparty%2Fkea.git [5649] Added section in the HA about timeouts. --- diff --git a/doc/guide/hooks-ha.xml b/doc/guide/hooks-ha.xml index 672b31f83c..8cb193fd93 100644 --- a/doc/guide/hooks-ha.xml +++ b/doc/guide/hooks-ha.xml @@ -977,6 +977,75 @@ +
+ Discussion about Timeouts + In deployments with large number of clients connected to the + network, lease database synchronization after the server failure + may be a time consuming operation. The synchronizing server needs + to gather all leases from the partner which yields a large response + over the RESTful interface. The time required for generating the + response and sending it to the synchronizing server may take from + several seconds to tens of seconds. The default timeout value for + such communication is set to 60 seconds. However, the server + administrator may need to extend this timeout of necessary. The + following configuration snippet demonstrates how to extend this + timeout to 90 seconds with the sync-timeout: + +{ +"Dhcp4": { + + ... + + "hooks-libraries": [ + { + "library": "/usr/lib/hooks/libdhcp_lease_cmds.so", + "parameters": { } + }, + { + "library": "/usr/lib/hooks/libdhcp_ha.so", + "parameters": { + "high-availability": [ { + "this-server-name": "server1", + "mode": "load-balancing", + "sync-timeout": 90000, + "peers": [ + { + "name": "server1", + "url": "http://192.168.56.33:8080/", + "role": "primary" + }, + { + "name": "server2", + "url": "http://192.168.56.66:8080/", + "role": "secondary" + } + ] + } ] + } + } + ], + + ... + +} + + + + + It is important to note that extending this value may sometimes + be insufficient to prevent issues with timeouts during + lease database synchronization. The control commands travel via + Control Agent, which also monitors incoming (with synchronizing + server) and outgoing (with DHCP server) connections for timeouts. + The DHCP server also monitors the connection from the Control + Agent for timeouts. Those timeouts can't be currently modified + via configuration. Extending these timeouts is only possible by + modifing them in the Kea code and recompiling the server. The + relevant constants are located in the Kea sources: + src/lib/config/timeouts.h. + +
+
Control Agent Configuration The describes in detail the