|
2 | 2 | <html lang="en"> |
3 | 3 | <head> |
4 | 4 | <meta charset="utf-8" /> |
5 | | - <title>HAProxy version 3.2-dev0-47 - Configuration Manual</title> |
| 5 | + <title>HAProxy version 3.2-dev0-56 - Configuration Manual</title> |
6 | 6 | <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" /> |
7 | 7 | <link href="https://raw.githubusercontent.com/thomaspark/bootswatch/v3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" /> |
8 | 8 | <link href="../css/page.css?0.4.2-15" rel="stylesheet" /> |
|
4424 | 4424 | You can use <strong>left</strong> and <strong>right</strong> arrow keys to navigate between chapters.<br> |
4425 | 4425 | </p> |
4426 | 4426 | <p class="text-right"> |
4427 | | - <small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/11/28</b></small> |
| 4427 | + <small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/12/05</b></small> |
4428 | 4428 | </p> |
4429 | 4429 | </div> |
4430 | 4430 | <!-- /.sidebar --> |
|
4435 | 4435 | <div class="text-center"> |
4436 | 4436 | <h1><a href="http://www.haproxy.org/" title="HAProxy"><img src="../img/HAProxyCommunityEdition_60px.png?0.4.2-15" /></a></h1> |
4437 | 4437 | <h2>Configuration Manual</h2> |
4438 | | - <p><strong>version 3.2-dev0-47</strong></p> |
| 4438 | + <p><strong>version 3.2-dev0-56</strong></p> |
4439 | 4439 | <p> |
4440 | 4440 | 2024/11/26<br> |
4441 | 4441 |
|
@@ -9741,13 +9741,19 @@ <h2 id="chapter-3.5" data-target="3.5"><small><a class="small" href="#3.5">3.5.< |
9741 | 9741 | <div><pre class="text">It is possible to propagate entries of any data-types in stick-tables between |
9742 | 9742 | several HAProxy instances over TCP connections in a multi-master fashion. Each |
9743 | 9743 | instance pushes its local updates and insertions to remote peers. The pushed |
9744 | | -values overwrite remote ones without aggregation. As an exception, the data |
9745 | | -type "conn_cur" is never learned from peers, as it is supposed to reflect local |
9746 | | -values. Earlier versions used to synchronize it and to cause negative values in |
9747 | | -active-active setups, and always-growing values upon reloads or active-passive |
| 9744 | +values overwrite remote ones without aggregation. |
| 9745 | + |
| 9746 | +One exception is the data type "conn_cur" which is never learned from peers by |
| 9747 | +default as it is supposed to reflect local values. Earlier versions used to |
| 9748 | +synchronize it by default which was known to cause negative values in active- |
| 9749 | +active setups, and always-growing values upon reloads or active-passive |
9748 | 9750 | switches because the local value would reflect more connections than locally |
9749 | | -present. This information, however, is pushed so that monitoring systems can |
9750 | | -watch it. |
| 9751 | +present. However there are some setups where it could be relevant to learn |
| 9752 | +this value from peers, for instance when the table is a passive remote table |
| 9753 | +solely used to learn/monitor data from it without relying on it for write- |
| 9754 | +oriented operations or updates. To achieve this, the "recv-only" keyword can |
| 9755 | +be added on the table declaration. In any case, the "conn_cur" info is always |
| 9756 | +pushed so that monitoring systems can watch it. |
9751 | 9757 |
|
9752 | 9758 | Interrupted exchanges are automatically detected and recovered from the last |
9753 | 9759 | known point. In addition, during a soft restart, the old process connects to |
@@ -9847,7 +9853,8 @@ <h2 id="chapter-3.5" data-target="3.5"><small><a class="small" href="#3.5">3.5.< |
9847 | 9853 | number of peer involved in this stick-table contents distribution. |
9848 | 9854 | See also "<a href="#shard">shard</a>" server parameter. |
9849 | 9855 | </pre><a class="anchor" name="table"></a><a class="anchor" name="3-table"></a><a class="anchor" name="3.5-table"></a><a class="anchor" name="table (Global parameters)"></a><a class="anchor" name="table (Peers)"></a><div class="keyword"><b><a class="anchor" name="table"></a><a href="#3.5-table">table</a></b> <span style="color: #080"><tablename></span> type <span style="color: #800">{ip | integer | string <span style="color: #008">[len <span style="color: #080"><length></span>]</span> | binary <span style="color: #008">[len <span style="color: #080"><length></span>]</span>}</span> |
9850 | | - size <span style="color: #080"><size></span> <span style="color: #008">[expire <span style="color: #080"><expire></span>]</span> <span style="color: #008">[write-to <span style="color: #080"><wtable></span>]</span> <span style="color: #008">[nopurge]</span> <span style="color: #008">[store <span style="color: #080"><data_type></span>]</span>*</div><pre class="text">Configure a stickiness table for the current section. This line is parsed |
| 9856 | + size <span style="color: #080"><size></span> <span style="color: #008">[expire <span style="color: #080"><expire></span>]</span> <span style="color: #008">[write-to <span style="color: #080"><wtable></span>]</span> <span style="color: #008">[nopurge]</span> <span style="color: #008">[store <span style="color: #080"><data_type></span>]</span>* |
| 9857 | + <span style="color: #008">[recv-only]</span></div><pre class="text">Configure a stickiness table for the current section. This line is parsed |
9851 | 9858 | exactly the same way as the "<a href="#stick-table">stick-table</a>" keyword in others section, except |
9852 | 9859 | for the "<a href="#peers">peers</a>" argument which is not required here and with an additional |
9853 | 9860 | mandatory first parameter to designate the stick-table. Contrary to others |
@@ -17282,7 +17289,8 @@ <h2 id="chapter-4.2" data-target="4.2"><small><a class="small" href="#4.2">4.2.< |
17282 | 17289 | </div><div class="page-header"><b>See also :</b> "<a href="#stick-table">stick-table</a>", "<a href="#stick%20on">stick on</a>", about ACLs and sample fetching.</div> |
17283 | 17290 | <a class="anchor" name="stick-table"></a><a class="anchor" name="4-stick-table"></a><a class="anchor" name="4.2-stick-table"></a><a class="anchor" name="stick-table (Proxies)"></a><a class="anchor" name="stick-table (Alphabetically sorted keywords reference)"></a><a class="anchor" name="stick-table type"></a><a class="anchor" name="4-stick-table type"></a><a class="anchor" name="4.2-stick-table type"></a><a class="anchor" name="stick-table type (Proxies)"></a><a class="anchor" name="stick-table type (Alphabetically sorted keywords reference)"></a><div class="keyword"><b><a class="anchor" name="stick-table type"></a><a href="#4.2-stick-table%20type">stick-table type</a></b> <span style="color: #800">{ip | integer | string <span style="color: #008">[len <span style="color: #080"><length></span>]</span> | binary <span style="color: #008">[len <span style="color: #080"><length></span>]</span>}</span> |
17284 | 17291 | size <span style="color: #080"><size></span> <span style="color: #008">[expire <span style="color: #080"><expire></span>]</span> <span style="color: #008">[nopurge]</span> <span style="color: #008">[peers <span style="color: #080"><peersect></span>]</span> <span style="color: #008">[srvkey <span style="color: #080"><srvkey></span>]</span> |
17285 | | - <span style="color: #008">[write-to <span style="color: #080"><wtable></span>]</span> <span style="color: #008">[store <span style="color: #080"><data_type></span>]</span>* <span style="color: #008">[brates-factor <span style="color: #080"><factor></span>]</span></div><pre class="text">Configure the stickiness table for the current section |
| 17292 | + <span style="color: #008">[write-to <span style="color: #080"><wtable></span>]</span> <span style="color: #008">[store <span style="color: #080"><data_type></span>]</span>* <span style="color: #008">[brates-factor <span style="color: #080"><factor></span>]</span> |
| 17293 | + <span style="color: #008">[recv-only]</span></div><pre class="text">Configure the stickiness table for the current section |
17286 | 17294 |
|
17287 | 17295 | May be used in the following contexts: tcp, http |
17288 | 17296 | </pre><div><p> May be used in sections :</p><table class="table table-bordered" border="0" cellspacing="0" cellpadding="0"> |
@@ -17408,7 +17416,19 @@ <h2 id="chapter-4.2" data-target="4.2"><small><a class="small" href="#4.2">4.2.< |
17408 | 17416 | Internally, rates are defined on 32-bits counters. By using this |
17409 | 17417 | parameter, it is possible to have rates exceeding the 4G on the |
17410 | 17418 | defined period. The factor must be greater than 0 and lower or |
17411 | | - equal to 1024.</pre> |
| 17419 | + equal to 1024. |
| 17420 | + |
| 17421 | +[recv-only] indicates that we don't intent to use the table to perform |
| 17422 | + updates on it, but thay we only plan on using the table to |
| 17423 | + retrieve data from a remote peer which we are interested in. |
| 17424 | + Indeed, the use of this keyword enables the retrieval of |
| 17425 | + local-only values such as conn_cur that are not learned by |
| 17426 | + default as they would conflict with local updates performed |
| 17427 | + on the table by the local peer. Use of this option is only |
| 17428 | + relevant for tables that are not involved in tracking rules or |
| 17429 | + methods that perform update operations on the table, or put |
| 17430 | + simpler: remote tables that are only used to retrieve |
| 17431 | + information.</pre> |
17412 | 17432 | </div> |
17413 | 17433 | <pre class="text">The data types that can be stored with an entry are the following : |
17414 | 17434 | - server_id : this is an integer which holds the numeric ID of the server a |
@@ -31702,7 +31722,7 @@ <h2 id="chapter-11.3" data-target="11.3"><small><a class="small" href="#11.3">11 |
31702 | 31722 | <br> |
31703 | 31723 | <hr> |
31704 | 31724 | <div class="text-right"> |
31705 | | - HAProxy 3.2-dev0-47 – Configuration Manual<br> |
| 31725 | + HAProxy 3.2-dev0-56 – Configuration Manual<br> |
31706 | 31726 | <small>, 2024/11/26</small> |
31707 | 31727 | </div> |
31708 | 31728 | </div> |
|
0 commit comments