Skip to content

Commit ac153e0

Browse files
author
HAProxy Community
committed
Update docs for dev
1 parent 3d72c40 commit ac153e0

File tree

3 files changed

+73
-29
lines changed

3 files changed

+73
-29
lines changed

docs/dev/configuration.html

Lines changed: 55 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html lang="en">
33
<head>
44
<meta charset="utf-8" />
5-
<title>HAProxy version 3.2-dev14-35 - Configuration Manual</title>
5+
<title>HAProxy version 3.2-dev15-11 - Configuration Manual</title>
66
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
77
<link href="https://raw.githubusercontent.com/thomaspark/bootswatch/v3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" />
88
<link href="../css/page.css?0.4.2-15" rel="stylesheet" />
@@ -1355,6 +1355,8 @@
13551355

13561356
<a class="list-group-item" href="#acme (ACME)">acme (ACME)</a>
13571357

1358+
<a class="list-group-item" href="#acme.scheduler">acme.scheduler</a>
1359+
13581360
<a class="list-group-item" href="#act_conn">act_conn</a>
13591361

13601362
<a class="list-group-item" href="#add">add</a>
@@ -4561,7 +4563,7 @@
45614563
You can use <strong>left</strong> and <strong>right</strong> arrow keys to navigate between chapters.<br>
45624564
</p>
45634565
<p class="text-right">
4564-
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2025/05/07</b></small>
4566+
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2025/05/09</b></small>
45654567
</p>
45664568
</div>
45674569
<!-- /.sidebar -->
@@ -4572,9 +4574,9 @@
45724574
<div class="text-center">
45734575
<h1><a href="http://www.haproxy.org/" title="HAProxy"><img src="../img/HAProxyCommunityEdition_60px.png?0.4.2-15" /></a></h1>
45744576
<h2>Configuration Manual</h2>
4575-
<p><strong>version 3.2-dev14-35</strong></p>
4577+
<p><strong>version 3.2-dev15-11</strong></p>
45764578
<p>
4577-
2025/05/02<br>
4579+
2025/05/09<br>
45784580

45794581
</p>
45804582
</div>
@@ -7470,7 +7472,16 @@ <h2 id="chapter-3.1" data-target="3.1"><small><a class="small" href="#3.1">3.1.<
74707472

74717473
Please note that this option is only available when HAProxy has been
74727474
compiled with USE_51DEGREES and 51DEGREES_VER=4.
7473-
</pre><a class="anchor" name="ca-base"></a><a class="anchor" name="3-ca-base"></a><a class="anchor" name="3.1-ca-base"></a><a class="anchor" name="ca-base (Global parameters)"></a><a class="anchor" name="ca-base (Process management and security)"></a><div class="keyword"><b><a class="anchor" name="ca-base"></a><a href="#3.1-ca-base">ca-base</a></b> <span style="color: #080">&lt;dir&gt;</span></div><pre class="text">Assigns a default directory to fetch SSL CA certificates and CRLs from when a
7475+
</pre><a class="anchor" name="acme.scheduler"></a><a class="anchor" name="3-acme.scheduler"></a><a class="anchor" name="3.1-acme.scheduler"></a><a class="anchor" name="acme.scheduler (Global parameters)"></a><a class="anchor" name="acme.scheduler (Process management and security)"></a><div class="keyword"><b><a class="anchor" name="acme.scheduler"></a><a href="#3.1-acme.scheduler">acme.scheduler</a></b> <span style="color: #800">{ auto | off }</span></div><pre class="text">Enable or disable the ACME scheduler.
7476+
7477+
The ACME scheduler starts at HAProxy startup, it will loop over the
7478+
certificates and start an ACME renewal task when the notAfter value is past
7479+
curtime + (notAfter - notBefore) / 12, or 7 days if notBefore is not defined.
7480+
The scheduler will then sleep and wakeup after 12 hours.
7481+
7482+
The default value is &quot;auto&quot;.
7483+
</pre><div class="page-header"><b>See also:</b> acme</div>
7484+
<a class="anchor" name="ca-base"></a><a class="anchor" name="3-ca-base"></a><a class="anchor" name="3.1-ca-base"></a><a class="anchor" name="ca-base (Global parameters)"></a><a class="anchor" name="ca-base (Process management and security)"></a><div class="keyword"><b><a class="anchor" name="ca-base"></a><a href="#3.1-ca-base">ca-base</a></b> <span style="color: #080">&lt;dir&gt;</span></div><pre class="text">Assigns a default directory to fetch SSL CA certificates and CRLs from when a
74747485
relative path is used with &quot;<span class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">ca-file<span class="caret"></span></a><ul class="dropdown-menu"><li class="dropdown-header">This keyword is available in sections :</li><li><a href="#ca-file%20%28Bind%20options%29">Bind options</a></li><li><a href="#ca-file%20%28Server%20and%20default-server%20options%29">Server and default-server options</a></li></ul></span>&quot;, &quot;<a href="#ca-verify-file">ca-verify-file</a>&quot; or &quot;<span class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">crl-file<span class="caret"></span></a><ul class="dropdown-menu"><li class="dropdown-header">This keyword is available in sections :</li><li><a href="#crl-file%20%28Bind%20options%29">Bind options</a></li><li><a href="#crl-file%20%28Server%20and%20default-server%20options%29">Server and default-server options</a></li></ul></span>&quot;
74757486
directives. Absolute locations specified in &quot;<span class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">ca-file<span class="caret"></span></a><ul class="dropdown-menu"><li class="dropdown-header">This keyword is available in sections :</li><li><a href="#ca-file%20%28Bind%20options%29">Bind options</a></li><li><a href="#ca-file%20%28Server%20and%20default-server%20options%29">Server and default-server options</a></li></ul></span>&quot;, &quot;<a href="#ca-verify-file">ca-verify-file</a>&quot; and
74767487
&quot;<span class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">crl-file<span class="caret"></span></a><ul class="dropdown-menu"><li class="dropdown-header">This keyword is available in sections :</li><li><a href="#crl-file%20%28Bind%20options%29">Bind options</a></li><li><a href="#crl-file%20%28Server%20and%20default-server%20options%29">Server and default-server options</a></li></ul></span>&quot; prevail and ignore &quot;<a href="#ca-base">ca-base</a>&quot;.
@@ -7794,6 +7805,7 @@ <h2 id="chapter-3.1" data-target="3.1"><small><a class="small" href="#3.1">3.1.<
77947805
- &quot;<a href="#ipv4">ipv4</a>&quot;: query and accept IPv4 addresses (&quot;A&quot; records)
77957806
- &quot;<a href="#ipv6">ipv6</a>&quot;: query and accept IPv6 addresses (&quot;AAAA&quot; records)
77967807
- &quot;auto&quot;: use IPv4, and IPv6 if the system has a default gateway for it.
7808+
The result of the last check is cached for 30 seconds.
77977809

77987810
When a single family is used, no request will be sent to resolvers for the
77997811
other family, and any response for the othe family will be ignored. The
@@ -22887,15 +22899,20 @@ <h2 id="chapter-5.2" data-target="5.2"><small><a class="small" href="#5.2">5.2.<
2288722899
instances on the fly. This option defaults to &quot;last,libc&quot; indicating that the
2288822900
previous address found in the state file (if any) is used first, otherwise
2288922901
the libc's resolver is used. This ensures continued compatibility with the
22890-
historic behavior.
22891-
</pre><div class="separator">
22892-
<span class="label label-success">Example:</span>
22893-
<pre class="prettyprint">
22894-
<code>defaults
22895-
<span class="comment"># never fail on address resolution</span>
22896-
default-server init-addr last,libc,none
22897-
</code></pre>
22898-
</div><a class="anchor" name="inter"></a><a class="anchor" name="5-inter"></a><a class="anchor" name="5.2-inter"></a><a class="anchor" name="inter (Bind and server options)"></a><a class="anchor" name="inter (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="inter"></a><a href="#5.2-inter">inter</a></b> <span style="color: #080">&lt;delay&gt;</span></div><a class="anchor" name="fastinter"></a><a class="anchor" name="5-fastinter"></a><a class="anchor" name="5.2-fastinter"></a><a class="anchor" name="fastinter (Bind and server options)"></a><a class="anchor" name="fastinter (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="fastinter"></a><a href="#5.2-fastinter">fastinter</a></b> <span style="color: #080">&lt;delay&gt;</span></div><a class="anchor" name="downinter"></a><a class="anchor" name="5-downinter"></a><a class="anchor" name="5.2-downinter"></a><a class="anchor" name="downinter (Bind and server options)"></a><a class="anchor" name="downinter (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="downinter"></a><a href="#5.2-downinter">downinter</a></b> <span style="color: #080">&lt;delay&gt;</span></div><pre class="text">May be used in the following contexts: tcp, http, log
22902+
historic behavior. When using internal resolvers, it is generally recommended
22903+
to either disable libc-based resolution, or make it explicit (see <a href="#5.3">section 5.3</a>
22904+
for more details).
22905+
22906+
Example 1:
22907+
defaults
22908+
# never fail on address resolution
22909+
default-server init-addr last,libc,none
22910+
22911+
Example 2:
22912+
defaults
22913+
# disable libc resolution in combination with resolvers
22914+
default-server init-addr last,none
22915+
</pre><a class="anchor" name="inter"></a><a class="anchor" name="5-inter"></a><a class="anchor" name="5.2-inter"></a><a class="anchor" name="inter (Bind and server options)"></a><a class="anchor" name="inter (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="inter"></a><a href="#5.2-inter">inter</a></b> <span style="color: #080">&lt;delay&gt;</span></div><a class="anchor" name="fastinter"></a><a class="anchor" name="5-fastinter"></a><a class="anchor" name="5.2-fastinter"></a><a class="anchor" name="fastinter (Bind and server options)"></a><a class="anchor" name="fastinter (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="fastinter"></a><a href="#5.2-fastinter">fastinter</a></b> <span style="color: #080">&lt;delay&gt;</span></div><a class="anchor" name="downinter"></a><a class="anchor" name="5-downinter"></a><a class="anchor" name="5.2-downinter"></a><a class="anchor" name="downinter (Bind and server options)"></a><a class="anchor" name="downinter (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="downinter"></a><a href="#5.2-downinter">downinter</a></b> <span style="color: #080">&lt;delay&gt;</span></div><pre class="text">May be used in the following contexts: tcp, http, log
2289922916

2290022917
The &quot;<a href="#inter">inter</a>&quot; parameter sets the interval between two consecutive health checks
2290122918
to &lt;delay&gt; milliseconds. If left unspecified, the delay defaults to 2000 ms.
@@ -23441,13 +23458,16 @@ <h2 id="chapter-5.2" data-target="5.2"><small><a class="small" href="#5.2">5.2.<
2344123458
</div><a class="anchor" name="resolvers"></a><a class="anchor" name="5-resolvers"></a><a class="anchor" name="5.2-resolvers"></a><a class="anchor" name="resolvers (Bind and server options)"></a><a class="anchor" name="resolvers (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="resolvers"></a><a href="#5.2-resolvers">resolvers</a></b> <span style="color: #080">&lt;id&gt;</span></div><pre class="text">May be used in the following contexts: tcp, http, log
2344223459

2344323460
Points to an existing &quot;<span class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">resolvers<span class="caret"></span></a><ul class="dropdown-menu"><li class="dropdown-header">This keyword is available in sections :</li><li><a href="#resolvers%20%28Server%20and%20default-server%20options%29">Server and default-server options</a></li><li><a href="#resolvers%20%28The%20resolvers%20section%29">The resolvers section</a></li></ul></span>&quot; section to resolve current server's
23444-
hostname.
23461+
hostname. It is often recommended to disable libc-based resolution when using
23462+
resolvers, though exceptions exist (see <a href="#5.3.1">section 5.3.1</a>). In any case it is a
23463+
good practice to explicitly specify &quot;<a href="#init-addr">init-addr</a>&quot; when using resolvers in order
23464+
not to overlook this element.
2344523465
</pre><div class="separator">
2344623466
<span class="label label-success">Example:</span>
2344723467
<pre class="prettyprint">
23448-
<code>server s1 app1.domain.com:80 check resolvers mydns
23468+
<code>server s1 app1.domain.com:80 init-addr last,none check resolvers mydns
2344923469
</code></pre>
23450-
</div><pre class="text">See also <a href="#5.3">section 5.3</a>
23470+
</div><pre class="text">See also <a href="#5.3">section 5.3</a> for implementation details and traps to be aware of.
2345123471
</pre><a class="anchor" name="send-proxy"></a><a class="anchor" name="5-send-proxy"></a><a class="anchor" name="5.2-send-proxy"></a><a class="anchor" name="send-proxy (Bind and server options)"></a><a class="anchor" name="send-proxy (Server and default-server options)"></a><div class="keyword"><b><a class="anchor" name="send-proxy"></a><a href="#5.2-send-proxy">send-proxy</a></b></div><pre class="text">May be used in the following contexts: tcp, http
2345223472

2345323473
The &quot;<a href="#send-proxy">send-proxy</a>&quot; parameter enforces use of the PROXY protocol over any
@@ -23782,10 +23802,13 @@ <h2 id="chapter-5.3" data-target="5.3"><small><a class="small" href="#5.3">5.3.<
2378223802
This is not sufficient in some cases, such as in Amazon where a server's IP
2378323803
can change after a reboot or an ELB Virtual IP can change based on current
2378423804
workload.
23805+
2378523806
This chapter describes how HAProxy can be configured to process server's name
2378623807
resolution at run time.
23787-
Whether run time server name resolution has been enable or not, HAProxy will
23788-
carry on doing the first resolution when parsing the configuration.
23808+
23809+
Whether run time server name resolution has been enable or not, by default
23810+
HAProxy will do the first resolution at startup during configuration parsing
23811+
via libc unless disabled by the &quot;<a href="#init-addr">init-addr</a>&quot; parameter.
2378923812
</pre></div>
2379023813
<a class="anchor" id="5.3.1" name="5.3.1"></a>
2379123814
<h3 id="chapter-5.3.1" data-target="5.3.1"><small><a class="small" href="#5.3.1">5.3.1.</a></small> Global overview</h3>
@@ -23817,6 +23840,17 @@ <h3 id="chapter-5.3.1" data-target="5.3.1"><small><a class="small" href="#5.3.1"
2381723840

2381823841
- a resolution is considered as invalid (NX, timeout, refused), when all the
2381923842
servers return an error.
23843+
23844+
- The DNS client implemented in HAProxy is very basic and will not understand
23845+
the vast number of options and advanced setups that an operating system's
23846+
resolver can deal with. As such, except for really trivial setups where a
23847+
server known by its FQDN only has exactly one IP address at a time and
23848+
might occasionally renew it (e.g. a reboot), it is highly recommended to
23849+
avoid mixing libc-based init-time resolution with DNS-based runtime
23850+
resolution, as such setups are known to cause failures upon address
23851+
renewal. As a conclusion, unless you know exactly what you are doing, you
23852+
should always exclude &quot;libc&quot; from &quot;<a href="#init-addr">init-addr</a>&quot; when using &quot;<span class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">resolvers<span class="caret"></span></a><ul class="dropdown-menu"><li class="dropdown-header">This keyword is available in sections :</li><li><a href="#resolvers%20%28Server%20and%20default-server%20options%29">Server and default-server options</a></li><li><a href="#resolvers%20%28The%20resolvers%20section%29">The resolvers section</a></li></ul></span>&quot; on a
23853+
server line.
2382023854
</pre></div>
2382123855
<a class="anchor" id="5.3.2" name="5.3.2"></a>
2382223856
<h3 id="chapter-5.3.2" data-target="5.3.2"><small><a class="small" href="#5.3.2">5.3.2.</a></small> The resolvers section</h3>
@@ -32671,8 +32705,8 @@ <h2 id="chapter-11.3" data-target="11.3"><small><a class="small" href="#11.3">11
3267132705
<br>
3267232706
<hr>
3267332707
<div class="text-right">
32674-
HAProxy 3.2-dev14-35 &ndash; Configuration Manual<br>
32675-
<small>, 2025/05/02</small>
32708+
HAProxy 3.2-dev15-11 &ndash; Configuration Manual<br>
32709+
<small>, 2025/05/09</small>
3267632710
</div>
3267732711
</div>
3267832712
<!-- /.col-lg-12 -->

docs/dev/intro.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html lang="en">
33
<head>
44
<meta charset="utf-8" />
5-
<title>HAProxy version 3.2-dev14-35 - Starter Guide</title>
5+
<title>HAProxy version 3.2-dev15-11 - Starter Guide</title>
66
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
77
<link href="https://raw.githubusercontent.com/thomaspark/bootswatch/v3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" />
88
<link href="../css/page.css?0.4.2-15" rel="stylesheet" />
@@ -484,7 +484,7 @@
484484
You can use <strong>left</strong> and <strong>right</strong> arrow keys to navigate between chapters.<br>
485485
</p>
486486
<p class="text-right">
487-
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2025/05/07</b></small>
487+
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2025/05/09</b></small>
488488
</p>
489489
</div>
490490
<!-- /.sidebar -->
@@ -495,7 +495,7 @@
495495
<div class="text-center">
496496
<h1><a href="http://www.haproxy.org/" title="HAProxy"><img src="../img/HAProxyCommunityEdition_60px.png?0.4.2-15" /></a></h1>
497497
<h2>Starter Guide</h2>
498-
<p><strong>version 3.2-dev14-35</strong></p>
498+
<p><strong>version 3.2-dev15-11</strong></p>
499499
<p>
500500
<br>
501501

@@ -2515,7 +2515,7 @@ <h2 id="chapter-4.4" data-target="4.4"><small><a class="small" href="#4.4">4.4.<
25152515
<br>
25162516
<hr>
25172517
<div class="text-right">
2518-
HAProxy 3.2-dev14-35 &ndash; Starter Guide<br>
2518+
HAProxy 3.2-dev15-11 &ndash; Starter Guide<br>
25192519
<small>, </small>
25202520
</div>
25212521
</div>

docs/dev/management.html

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html lang="en">
33
<head>
44
<meta charset="utf-8" />
5-
<title>HAProxy version 3.2-dev14-35 - Management Guide</title>
5+
<title>HAProxy version 3.2-dev15-11 - Management Guide</title>
66
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
77
<link href="https://raw.githubusercontent.com/thomaspark/bootswatch/v3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" />
88
<link href="../css/page.css?0.4.2-15" rel="stylesheet" />
@@ -660,7 +660,7 @@
660660
You can use <strong>left</strong> and <strong>right</strong> arrow keys to navigate between chapters.<br>
661661
</p>
662662
<p class="text-right">
663-
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2025/05/07</b></small>
663+
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2025/05/09</b></small>
664664
</p>
665665
</div>
666666
<!-- /.sidebar -->
@@ -671,7 +671,7 @@
671671
<div class="text-center">
672672
<h1><a href="http://www.haproxy.org/" title="HAProxy"><img src="../img/HAProxyCommunityEdition_60px.png?0.4.2-15" /></a></h1>
673673
<h2>Management Guide</h2>
674-
<p><strong>version 3.2-dev14-35</strong></p>
674+
<p><strong>version 3.2-dev15-11</strong></p>
675675
<p>
676676
<br>
677677

@@ -1169,6 +1169,16 @@ <h1 id="chapter-summary" data-target="summary">Summary</h1>
11691169
last released. This works best with &quot;no-merge&quot;, &quot;cold-first&quot; and &quot;tag&quot;.
11701170
Enabling this option will slightly increase the CPU usage.
11711171

1172+
- backup / no-backup:
1173+
This option performs a copy of each released object at release time,
1174+
allowing developers to inspect them. It also performs a comparison at
1175+
allocation time to detect if anything changed in between, indicating a
1176+
use-after-free condition. This doubles the memory usage and slightly
1177+
increases the CPU usage (similar to &quot;integrity&quot;). If combined with
1178+
&quot;integrity&quot;, it still duplicates the contents but doesn't perform the
1179+
comparison (which is performed by &quot;integrity&quot;). Just like &quot;integrity&quot;,
1180+
it works best with &quot;no-merge&quot;, &quot;cold-first&quot; and &quot;tag&quot;.
1181+
11721182
- no-global / global:
11731183
Depending on the operating system, a process-wide global memory cache
11741184
may be enabled if it is estimated that the standard allocator is too
@@ -5596,7 +5606,7 @@ <h2 id="chapter-13.1" data-target="13.1"><small><a class="small" href="#13.1">13
55965606
<br>
55975607
<hr>
55985608
<div class="text-right">
5599-
HAProxy 3.2-dev14-35 &ndash; Management Guide<br>
5609+
HAProxy 3.2-dev15-11 &ndash; Management Guide<br>
56005610
<small>, </small>
56015611
</div>
56025612
</div>

0 commit comments

Comments
 (0)