From: Andrei Pavel Date: Tue, 28 Mar 2023 16:38:59 +0000 (+0300) Subject: [#2749] document default HA+MT X-Git-Tag: Kea-2.3.7~35 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c86d0745905ee5e6ac8614c136111d5d06415ed6;p=thirdparty%2Fkea.git [#2749] document default HA+MT --- diff --git a/doc/examples/kea4/all-keys-netconf.json b/doc/examples/kea4/all-keys-netconf.json index 2f63bf6943..3220d76984 100644 --- a/doc/examples/kea4/all-keys-netconf.json +++ b/doc/examples/kea4/all-keys-netconf.json @@ -637,10 +637,8 @@ // Multi-threading parameters. "multi-threading": { - // By default Kea processes packets on a single thread (default - // 'false' value for this option). To enable multi-threading, this - // option can be set ('true' value). - "enable-multi-threading": false, + // By default, Kea processes packets on multiple threads if the hardware permits. + "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a // number of multiple threads configurable through this option. The diff --git a/doc/examples/kea4/all-keys.json b/doc/examples/kea4/all-keys.json index 98dc9a431b..0ac496eb12 100644 --- a/doc/examples/kea4/all-keys.json +++ b/doc/examples/kea4/all-keys.json @@ -687,10 +687,8 @@ // Multi-threading parameters. "multi-threading": { - // By default Kea processes packets on a single thread (default - // 'false' value for this option). To enable multi-threading, this - // option can be set ('true' value). - "enable-multi-threading": false, + // By default, Kea processes packets on multiple threads if the hardware permits. + "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a // number of multiple threads configurable through this option. The diff --git a/doc/examples/kea4/ha-load-balancing-server1-mt-with-tls.json b/doc/examples/kea4/ha-load-balancing-server1-mt-with-tls.json index 3f22ccee75..66afc3238e 100644 --- a/doc/examples/kea4/ha-load-balancing-server1-mt-with-tls.json +++ b/doc/examples/kea4/ha-load-balancing-server1-mt-with-tls.json @@ -30,7 +30,7 @@ // Multi-threading parameters. "multi-threading": { - // To enable multi-threading, this option can be set to 'true' value. + // By default, Kea processes packets on multiple threads if the hardware permits. "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a @@ -139,6 +139,7 @@ // processing packets on multiple threads, the High Availability module // must have multi-threading enabled. "multi-threading": { + // Enable High Availability to benefit from multi-threading. Default: true. "enable-multi-threading": true, // When running in MT mode, the dedicated listener is used to handle // lease updates. diff --git a/doc/examples/kea4/ha-load-balancing-server2-mt.json b/doc/examples/kea4/ha-load-balancing-server2-mt.json index 040d43e9dd..4cc712a439 100644 --- a/doc/examples/kea4/ha-load-balancing-server2-mt.json +++ b/doc/examples/kea4/ha-load-balancing-server2-mt.json @@ -29,7 +29,7 @@ // Multi-threading parameters. "multi-threading": { - // To enable multi-threading, this option can be set to 'true' value. + // By default, Kea processes packets on multiple threads if the hardware permits. "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a @@ -138,6 +138,7 @@ // processing packets on multiple threads, the High Availability module // must have multi-threading enabled. "multi-threading": { + // Enable High Availability to benefit from multi-threading. Default: true. "enable-multi-threading": true, // When running in MT mode, the dedicated listener is used to handle // lease updates. diff --git a/doc/examples/kea6/all-keys-netconf.json b/doc/examples/kea6/all-keys-netconf.json index 646253064b..ef7e9c0415 100644 --- a/doc/examples/kea6/all-keys-netconf.json +++ b/doc/examples/kea6/all-keys-netconf.json @@ -578,10 +578,8 @@ // Multi-threading parameters. "multi-threading": { - // By default Kea processes packets on a single thread (default - // 'false' value for this option). To enable multi-threading, this - // option can be set ('true' value). - "enable-multi-threading": false, + // By default, Kea processes packets on multiple threads if the hardware permits. + "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a // number of multiple threads configurable through this option. The diff --git a/doc/examples/kea6/all-keys.json b/doc/examples/kea6/all-keys.json index 5863e2d6f0..34fdb61cf6 100644 --- a/doc/examples/kea6/all-keys.json +++ b/doc/examples/kea6/all-keys.json @@ -616,10 +616,8 @@ // Multi-threading parameters. "multi-threading": { - // By default Kea processes packets on a single thread (default - // 'false' value for this option). To enable multi-threading, this - // option can be set ('true' value). - "enable-multi-threading": false, + // By default, Kea processes packets on multiple threads if the hardware permits. + "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a // number of multiple threads configurable through this option. The diff --git a/doc/examples/template-ha-mt-tls/kea-dhcp4-1.conf b/doc/examples/template-ha-mt-tls/kea-dhcp4-1.conf index 5db639670d..5b4ae2fa1f 100644 --- a/doc/examples/template-ha-mt-tls/kea-dhcp4-1.conf +++ b/doc/examples/template-ha-mt-tls/kea-dhcp4-1.conf @@ -36,9 +36,7 @@ // Multi-threading parameters. "multi-threading": { - // By default Kea processes packets on a single thread (default - // 'false' value for this option). To enable multi-threading, this - // option can be set ('true' value). + // By default, Kea processes packets on multiple threads if the hardware permits. "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a @@ -137,6 +135,7 @@ // processing packets on multiple threads, the High Availability module // must have multi-threading enabled. "multi-threading": { + // Enable High Availability to benefit from multi-threading. Default: true. "enable-multi-threading": true, // When running in MT mode, the dedicated listener is used to handle // lease updates. diff --git a/doc/examples/template-ha-mt-tls/kea-dhcp4-2.conf b/doc/examples/template-ha-mt-tls/kea-dhcp4-2.conf index a98e6b3866..f1b48ae4be 100644 --- a/doc/examples/template-ha-mt-tls/kea-dhcp4-2.conf +++ b/doc/examples/template-ha-mt-tls/kea-dhcp4-2.conf @@ -36,9 +36,7 @@ // Multi-threading parameters. "multi-threading": { - // By default Kea processes packets on a single thread (default - // 'false' value for this option). To enable multi-threading, this - // option can be set ('true' value). + // By default, Kea processes packets on multiple threads if the hardware permits. "enable-multi-threading": true, // When multi-threading is enabled, Kea will process packets on a @@ -137,6 +135,7 @@ // processing packets on multiple threads, the High Availability module // must have multi-threading enabled. "multi-threading": { + // Enable High Availability to benefit from multi-threading. Default: true. "enable-multi-threading": true, // When running in MT mode, the dedicated listener is used to handle // lease updates. diff --git a/doc/sphinx/arm/hooks-ha.rst b/doc/sphinx/arm/hooks-ha.rst index 37d815275c..bc3a923815 100644 --- a/doc/sphinx/arm/hooks-ha.rst +++ b/doc/sphinx/arm/hooks-ha.rst @@ -1645,28 +1645,28 @@ HA+MT operation: - ``enable-multi-threading`` - enables or disables multi-threading HA peer communication (HA+MT). Kea core multi-threading must be enabled for HA+MT to - operate. When ``false`` (the default), the server operates as in earlier - versions, relying on ``kea-ctrl-agent`` and using single-threaded HTTP client - processing. + operate. When ``false``, the server relies on ``kea-ctrl-agent`` for + communication with its peer, and uses single-threaded HTTP client processing. + The default is ``true``. - ``http-dedicated-listener`` - enables or disables the creation of a dedicated, internal HTTP listener through which the server receives HA messages from its peers. The internal listener replaces the role of ``kea-ctrl-agent`` traffic, allowing peers to send their HA commands directly to each other. The listener - listens on the peer's ``url``. When ``false`` (the default), the server + listens on the peer's ``url``. When ``false``, the server relies on ``kea-ctrl-agent``. This parameter has been provided largely for flexibility and testing; running HA+MT without dedicated listeners enabled - will substantially limit HA throughput. + will substantially limit HA throughput. The default is ``true``. - ``http-listener-threads`` - indicates the maximum number of threads the - dedicated listener should use. A value of 0 instructs the server to use the + dedicated listener should use. A value of ``0`` instructs the server to use the same number of threads that the Kea core is using for DHCP multi-threading. - The default is 0. + The default is ``0``. - ``http-client-threads`` - indicates the maximum number of threads that should - be used to send HA messages to its peers. A value of 0 instructs the server + be used to send HA messages to its peers. A value of ``0`` instructs the server to use the same number of threads that the Kea core is using for DHCP - multi-threading. The default is 0. + multi-threading. The default is ``0``. These parameters are grouped together under a map element, ``multi-threading``, as illustrated below: