Commit 680ff007 authored by Marcin Siodelski's avatar Marcin Siodelski
Browse files

[5649] Added section in the HA about timeouts.

parent aa53aca3
......@@ -977,6 +977,75 @@
</section>
<section xml:id="ha-syncing-timeouts">
<title>Discussion about Timeouts</title>
<para>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 <command>sync-timeout</command>:
<screen>
{
"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"
}
]
} ]
}
}
],
...
}
</screen>
</para>
<para>
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:
<filename>src/lib/config/timeouts.h</filename>.
</para>
</section>
<section xml:id="ha-ctrl-agent-config">
<title>Control Agent Configuration</title>
<para>The <xref linkend="kea-ctrl-agent"/> describes in detail the
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment