Provided by: resource-agents_3.9.7-1_amd64 bug

NAME

       ocf_heartbeat_nginx - Manages an Nginx web/proxy server instance

SYNOPSIS

       nginx [start | stop | status | monitor | meta-data | validate-all]

DESCRIPTION

       This is the resource agent for the Nginx web/proxy server. This resource agent does not
       monitor POP or IMAP servers, as we don't know how to determine meaningful status for them.

       The start operation ends with a loop in which monitor is repeatedly called to make sure
       that the server started and that it is operational. Hence, if the monitor operation does
       not succeed within the start operation timeout, the nginx resource will end with an error
       status.

       The default monitor operation will verify that nginx is running.

       The level 10 monitor operation by default will try and fetch the /nginx_status page -
       which is commented out in sample nginx configurations. Make sure that the /nginx_status
       page works and that the access is restricted to localhost (address 127.0.0.1) plus
       whatever places _outside the cluster_ you want to monitor the server from. See the
       status10url and status10regex attributes for more details.

       The level 20 monitor operation will perform a more complex set of tests from a
       configuration file.

       The level 30 monitor operation will run an external command to perform an arbitrary
       monitoring operation.

SUPPORTED PARAMETERS

       configfile
           The full pathname of the Nginx configuration file. This file is parsed to provide
           defaults for various other resource agent parameters.

           (unique, optional, string, no default)

       httpd
           The full pathname of the httpd binary (optional).

           (optional, string, default "/usr/sbin/httpd")

       port
           A port number that we can probe for status information using the statusurl. This will
           default to the port number found in the configuration file, or 80, if none can be
           found in the configuration file.

           (optional, integer, no default)

       status10url
           The URL to monitor (the nginx server status page by default) when given a level 10
           monitor operation. If left unspecified, it will be inferred from the nginx
           configuration file, or defaulted to /nginx_status.

           If you set this, make sure that it succeeds *only* from the localhost (127.0.0.1) and
           no other cluster nodes. Otherwise, the cluster software may complain about it being
           active on multiple nodes.

           (optional, string, no default)

       status10regex
           Regular expression to match in the output of status10url. Case insensitive.

           (optional, string, default "Reading: [0-9]+ Writing: [0-9]+ Waiting: [0-9]+")

       testclient
           Client to use to query to Nginx for level 10 and level 20 tests. If not specified, the
           RA will try to find one on the system. Currently, wget and curl are supported, with
           curl being preferred. For example, you can set this parameter to "wget" if you prefer
           that to curl.

           (optional, string, no default)

       test20url
           URL to test. If it does not start with "http", then it's considered to be relative to
           the document root address.

           (optional, string, no default)

       test20regex
           Regular expression to match in the output of test20url. Case insensitive.

           (optional, string, no default)

       test20conffile
           A file which contains a more complex test configuration. Could be useful if you have
           to check more than one web application or in case sensitive info should be passed as
           arguments (passwords). Furthermore, using a config file is the only way to specify
           certain parameters.

           Please see README.webapps for examples and file description.

           (optional, string, no default)

       test20name
           Name of the test within the test configuration file.

           (optional, string, no default)

       external_monitor30_cmd
           Command string to run which implements level 30 monitoring.

           (optional, string, no default)

       options
           Extra options to apply when starting nginx.

           (optional, string, no default)

SUPPORTED ACTIONS

       This resource agent supports the following actions (operations):

       start
           Starts the resource. Suggested minimum timeout: 40s.

       stop
           Stops the resource. Suggested minimum timeout: 60s.

       reload
           Suggested minimum timeout: 40s.

       status
           Performs a status check. Suggested minimum timeout: 30s.

       monitor
           Performs a detailed status check. Suggested minimum timeout: 30s. Suggested interval:
           10s.

       monitor
           Performs a detailed status check. Suggested minimum timeout: 30s. Suggested interval:
           30s.

       monitor
           Performs a detailed status check. Suggested minimum timeout: 45s.

       monitor
           Performs a detailed status check. Suggested minimum timeout: 60s.

       meta-data
           Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 5.

       validate-all
           Performs a validation of the resource configuration. Suggested minimum timeout: 5.

EXAMPLE CRM SHELL

       The following is an example configuration for a nginx resource using the crm(8) shell:

           primitive p_nginx ocf:heartbeat:nginx \
             op monitor timeout="30s" depth="0" interval="10s" \
             op monitor timeout="30s" depth="10" interval="30s" \
             op monitor timeout="45s" depth="20" \
             op monitor timeout="60s" depth="30"

EXAMPLE PCS

       The following is an example configuration for a nginx resource using pcs(8)

           pcs resource create p_nginx ocf:heartbeat:nginx \
             op monitor timeout="30s" depth="0" interval="10s" \
             op monitor timeout="30s" depth="10" interval="30s" \
             op monitor timeout="45s" depth="20" \
             op monitor timeout="60s" depth="30"

SEE ALSO

       http://www.linux-ha.org/wiki/nginx_(resource_agent)

AUTHOR

       Linux-HA contributors (see the resource agent source for information about individual
       authors)