]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_proxy_hcheck.xml
Prelim docs
[apache] / docs / manual / mod / mod_proxy_hcheck.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
4 <!-- $LastChangedRevision$ -->
5
6 <!--
7  Licensed to the Apache Software Foundation (ASF) under one or more
8  contributor license agreements.  See the NOTICE file distributed with
9  this work for additional information regarding copyright ownership.
10  The ASF licenses this file to You under the Apache License, Version 2.0
11  (the "License"); you may not use this file except in compliance with
12  the License.  You may obtain a copy of the License at
13
14      http://www.apache.org/licenses/LICENSE-2.0
15
16  Unless required by applicable law or agreed to in writing, software
17  distributed under the License is distributed on an "AS IS" BASIS,
18  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  See the License for the specific language governing permissions and
20  limitations under the License.
21 -->
22
23 <modulesynopsis metafile="mod_proxy_hcheck.xml.meta">
24
25 <name>mod_proxy_hcheck</name>
26 <description>Dynamic health check of Balancer members (workers) for
27 <module>mod_proxy</module></description>
28 <status>Extension</status>
29 <sourcefile>mod_proxy_hcheck.c</sourcefile>
30 <identifier>proxy_hcheck_module</identifier>
31 <compatibility>Available in Apache 2.5.0 and later</compatibility>
32
33 <summary>
34     <p>This module provides for dynamic health checking of balancer
35         members (workers). This can be enabled on a worker-by-worker
36         basis. The health check is done independently of the
37         actual reverse proxy requests.</p>
38
39     <p>This module <em>requires</em> the service of <module>mod_watchdog</module>.</p>
40
41 <note><title>Parameters</title>
42   <p>The health check mechanism is enabled via the use of additional
43         BalancerMember parameters, which are configured in the standard
44         way via <directive module="mod_proxy">ProxyPass</directive>:</p>
45
46     <table>
47     <tr><th>Parameter</th>
48         <th>Default</th>
49         <th>Description</th></tr>
50     <tr><td>hcmethod</td>
51         <td>None</td>
52         <td>No dynamic health check performed. Choices are:
53                 <table>
54                         <tr><th>Method</th><th>Description</th></tr>
55                         <tr><td>None</td><td>No dynamic health checking done</td></tr>
56                         <tr><td>TCP</td><td>Check that a socket to the backend can be created: e.g. "are you up"</td></tr>
57                         <tr><td>OPTIONS</td><td>Send an <code>HTTP OPTIONS</code> request to the backend</td></tr>
58                         <tr><td>HEAD</td><td>Send an <code>HTTP HEAD</code> request to the backend</td></tr>
59                         <tr><td>GET</td><td>Send an <code>HTTP GET</code> request to the backend</td></tr>
60                         <tr><td>CPING</td><td><strong>AJP only</strong>Do <code>CPING/CPONG</code> check</td></tr>
61                         <tr><td>PROVIDER</td><td>Name of <code>provider</code> to be used to check health</td></tr>
62                 </table>
63         </td></tr>
64     <tr><td>hcpasses</td>
65         <td>1</td>
66         <td>Number of successful health check tests before worker is re-enabled</td></tr>
67     <tr><td>hcfails</td>
68         <td>1</td>
69         <td>Number of failed health check tests before worker is disabled</td></tr>
70     <tr><td>hcinterval</td>
71         <td>30</td>
72         <td>Period of health checks (e.g. performed every 30 seconds)</td></tr>
73     <tr><td>hcuri</td>
74         <td>&nbsp;</td>
75         <td>Additional URI to be appended to the worker URL for the health check.</td></tr>
76     <tr><td>hctemplate</td>
77         <td>&nbsp;</td>
78         <td>Name of template, created via <directive>ProxyHCTemplate</directive> to use for setting health check parameters for this worker</td></tr>
79     </table>
80 </note>
81
82 </summary>
83 <seealso><module>mod_proxy</module></seealso>
84
85 <directivesynopsis>
86 <name>ProxyHCTemplate</name>
87 <description>Creates a named template for setting various health check parameters</description>
88 <syntax>ProxyBadHeader name parameter=setting &gt;...&lt;</syntax>
89 <contextlist><context>server config</context><context>virtual host</context>
90 </contextlist>
91
92 <usage>
93     <p>The <directive>ProxyHCTemplate</directive> directive allows
94        for creating a named set (template) of health check parameters
95        that can then be assigned to balancer members via the <code>hctemplate</code>
96        parameter</p>
97
98     <example><title>ProxyHCTemplate</title>
99     <highlight language="config">
100 ProxyHCTemplate tcp5 hcmethod=tcp hcinterval=5
101 ProxyPass "/apps"     "http://backend.example.com/" hctemplate=tcp5
102     </highlight>
103     </example>
104
105 </usage>
106 </directivesynopsis>
107
108 </modulesynopsis>