]> granicus.if.org Git - apache/commitdiff
more docco: health check and status. Basic info
authorJim Jagielski <jim@apache.org>
Thu, 11 Feb 2016 14:05:48 +0000 (14:05 +0000)
committerJim Jagielski <jim@apache.org>
Thu, 11 Feb 2016 14:05:48 +0000 (14:05 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1729837 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/howto/reverse_proxy.html.en
docs/manual/howto/reverse_proxy.xml

index 78e46d4fa3c273b94c8b47403ddbe32bf86109c7..f68e8aad8ff7b00a1cb0a030a6f756112e062a99 100644 (file)
@@ -61,6 +61,8 @@
 <li><img alt="" src="../images/down.gif" /> <a href="#config">Balancer and BalancerMember configuration</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#failover">Failover</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#manager">Balancer Manager</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#health-check">Dynamic Health Checks</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#status">BalancerMember status flags</a></li>
 </ul><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="section">
@@ -226,7 +228,7 @@ ProxyPassReverse "/images"  "balancer://myset"</pre>
          needs to be added to your configuration:
     </p>
 
-<pre class="prettyprint lang-config">&lt;Location "/balancer-manager"&gt;
+    <pre class="prettyprint lang-config">&lt;Location "/balancer-manager"&gt;
     SetHandler balancer-manager
     Require host localhost
 &lt;/Location&gt;</pre>
@@ -262,6 +264,48 @@ ProxyPassReverse "/images"  "balancer://myset"</pre>
       <code class="directive"><a href="../mod/mod_proxy.html#balancerpersist">BalancerPersist</a></code> is enabled.
     </p>
 
+  </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="health-check" id="health-check">Dynamic Health Checks</a></h2>
+    
+
+    <p>
+      Before httpd proxies a request to a worker, it can <em>"test"</em> if that worker
+      is available via setting the <code>ping</code> parameter for that worker using
+      <code class="directive"><a href="../mod/mod_proxy.html#proxypass">ProxyPass</a></code>. Oftentimes it is
+      more useful to check the health of the workers <em>out of band</em>, in a
+      dynamic fashion. This is achieved in Apache httpd by the
+      <code class="module"><a href="../mod/mod_proxy_hcheck.html">mod_proxy_hcheck</a></code> module.
+    </p>
+
+  </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="status" id="status">BalancerMember status flags</a></h2>
+    
+
+    <p>
+      In the <em>balancer-manager</em> the current state, or <em>status</em>, of a worker
+      is displayed and can be set/reset. The meanings of these statuses are as follows:
+    </p>
+      <table class="bordered">
+       <tr><th>Flag</th><th>String</th><th>Description</th></tr>
+       <tr><td>&nbsp;</td><td><em>Ok</em></td><td>Worker is available</td></tr>
+       <tr><td>&nbsp;</td><td><em>Init</em></td><td>Worker has been initialized</td></tr>
+        <tr><td><code>D</code></td><td><em>Dis</em></td><td>Worker is disabled and will not accept any requests; will be
+                    automatically retried.</td></tr>
+        <tr><td><code>S</code></td><td><em>Stop</em></td><td>Worker is administratively stopped; will not accept requests
+                    and will not be automatically retried</td></tr>
+        <tr><td><code>I</code></td><td><em>Ign</em></td><td>Worker is in ignore-errors mode and will always be considered available.</td></tr>
+        <tr><td><code>H</code></td><td><em>Stby</em></td><td>Worker is in hot-standby mode and will only be used if no other
+                    viable workers are available.</td></tr>
+        <tr><td><code>E</code></td><td><em>Err</em></td><td>Worker is in an error state, usually due to failing pre-request check;
+                    requests will not be proxied to this worker, but it will be retried depending on
+                    the <code>retry</code> setting of the worker.</td></tr>
+        <tr><td><code>N</code></td><td><em>Drn</em></td><td>Worker is in drain mode and will only accept existing sticky sessions
+                    destined for itself and ignore all other requests.</td></tr>
+        <tr><td><code>C</code></td><td><em>HcFl</em></td><td>Worker has failed dynamic health check and will not be used until it
+                    passes subsequent health checks.</td></tr>
+      </table>
   </div></div>
 <div class="bottomlang">
 <p><span>Available Languages: </span><a href="../en/howto/public_html.html" title="English">&nbsp;en&nbsp;</a> |
index 348192d1676b22bfb1301d131bde156128ed65a4..edbb824ffad321ccc9270a17c570de4c4adb999e 100644 (file)
@@ -231,12 +231,12 @@ ProxyPassReverse "/images"  "balancer://myset"
          needs to be added to your configuration:
     </p>
 
-<highlight language="config">
+    <highlight language="config">
 &lt;Location "/balancer-manager"&gt;
     SetHandler balancer-manager
     Require host localhost
 &lt;/Location&gt;
-</highlight>
+    </highlight>
 
     <note type="warning"><title>Warning</title>
       <p>Do not enable the <em>balancer-manager</em> until you have <a
@@ -271,4 +271,46 @@ ProxyPassReverse "/images"  "balancer://myset"
 
   </section>
 
+  <section id="health-check">
+    <title>Dynamic Health Checks</title>
+
+    <p>
+      Before httpd proxies a request to a worker, it can <em>"test"</em> if that worker
+      is available via setting the <code>ping</code> parameter for that worker using
+      <directive module="mod_proxy">ProxyPass</directive>. Oftentimes it is
+      more useful to check the health of the workers <em>out of band</em>, in a
+      dynamic fashion. This is achieved in Apache httpd by the
+      <module>mod_proxy_hcheck</module> module.
+    </p>
+
+  </section>
+
+  <section id="status">
+    <title>BalancerMember status flags</title>
+
+    <p>
+      In the <em>balancer-manager</em> the current state, or <em>status</em>, of a worker
+      is displayed and can be set/reset. The meanings of these statuses are as follows:
+    </p>
+      <table border="1">
+       <tr><th>Flag</th><th>String</th><th>Description</th></tr>
+       <tr><td>&nbsp;</td><td><em>Ok</em></td><td>Worker is available</td></tr>
+       <tr><td>&nbsp;</td><td><em>Init</em></td><td>Worker has been initialized</td></tr>
+        <tr><td><code>D</code></td><td><em>Dis</em></td><td>Worker is disabled and will not accept any requests; will be
+                    automatically retried.</td></tr>
+        <tr><td><code>S</code></td><td><em>Stop</em></td><td>Worker is administratively stopped; will not accept requests
+                    and will not be automatically retried</td></tr>
+        <tr><td><code>I</code></td><td><em>Ign</em></td><td>Worker is in ignore-errors mode and will always be considered available.</td></tr>
+        <tr><td><code>H</code></td><td><em>Stby</em></td><td>Worker is in hot-standby mode and will only be used if no other
+                    viable workers are available.</td></tr>
+        <tr><td><code>E</code></td><td><em>Err</em></td><td>Worker is in an error state, usually due to failing pre-request check;
+                    requests will not be proxied to this worker, but it will be retried depending on
+                    the <code>retry</code> setting of the worker.</td></tr>
+        <tr><td><code>N</code></td><td><em>Drn</em></td><td>Worker is in drain mode and will only accept existing sticky sessions
+                    destined for itself and ignore all other requests.</td></tr>
+        <tr><td><code>C</code></td><td><em>HcFl</em></td><td>Worker has failed dynamic health check and will not be used until it
+                    passes subsequent health checks.</td></tr>
+      </table>
+  </section>
+
 </manualpage>