forked from docs/doc-exports
469 lines
45 KiB
ReStructuredText
469 lines
45 KiB
ReStructuredText
Configuring a Health Check
|
|
==========================
|
|
|
|
Function
|
|
^^^^^^^^
|
|
|
|
This API is used to configure a health check.
|
|
|
|
Constraints
|
|
^^^^^^^^^^^
|
|
|
|
The security groups must have rules that allow access from 100.125.0.0/16. If you want to use UDP for health checks, ensure that the protocol of the backend server group is UDP.
|
|
|
|
URI
|
|
^^^
|
|
|
|
POST /v3/{project_id}/elb/healthmonitors
|
|
|
|
.. table:: **Table 1** Path parameters
|
|
|
|
========== ========= ====== =========================
|
|
Parameter Mandatory Type Description
|
|
========== ========= ====== =========================
|
|
project_id Yes String Specifies the project ID.
|
|
========== ========= ====== =========================
|
|
|
|
Request Parameters
|
|
^^^^^^^^^^^^^^^^^^
|
|
|
|
.. table:: **Table 2** Request header parameters
|
|
|
|
============ ========= ====== ================================================
|
|
Parameter Mandatory Type Description
|
|
============ ========= ====== ================================================
|
|
X-Auth-Token Yes String Specifies the token used for IAM authentication.
|
|
============ ========= ====== ================================================
|
|
|
|
.. table:: **Table 3** Request body parameters
|
|
|
|
+---------------+-----------+-------------------------------------------+-----------------------------+
|
|
| Parameter | Mandatory | Type | Description |
|
|
+===============+===========+===========================================+=============================+
|
|
| healthmonitor | Yes | `Crea | Specifies the health check. |
|
|
| | | teHealthMonitorOption <#CreateHealthMonit | |
|
|
| | | or__request_CreateHealthMonitorOption>`__ | |
|
|
| | | object | |
|
|
+---------------+-----------+-------------------------------------------+-----------------------------+
|
|
|
|
.. table:: **Table 4** CreateHealthMonitorOption
|
|
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| Parameter | Mandatory | Type | Description |
|
|
+=============================+=============================+=============================+=============================+
|
|
| admin_state_up | No | Boolean | Specifies the |
|
|
| | | | administrative status of |
|
|
| | | | the health check. Two value |
|
|
| | | | options are available. |
|
|
| | | | **true** indicates that the |
|
|
| | | | health check is enabled, |
|
|
| | | | and **false** indicates |
|
|
| | | | that the health check is |
|
|
| | | | disabled. |
|
|
| | | | |
|
|
| | | | Default: **true** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| delay | Yes | Integer | Specifies the interval |
|
|
| | | | between health checks, in |
|
|
| | | | seconds. |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **50** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| domain_name | No | String | Specifies the domain name |
|
|
| | | | that HTTP requests are sent |
|
|
| | | | to during the health check. |
|
|
| | | | |
|
|
| | | | This parameter is available |
|
|
| | | | only when **type** is set |
|
|
| | | | to **HTTP**. |
|
|
| | | | |
|
|
| | | | The value is left blank by |
|
|
| | | | default, indicating that |
|
|
| | | | the virtual IP address of |
|
|
| | | | the load balancer is used |
|
|
| | | | as the destination address |
|
|
| | | | of HTTP requests. |
|
|
| | | | |
|
|
| | | | The value can contain only |
|
|
| | | | digits, letters, hyphens |
|
|
| | | | (-), and periods (.) and |
|
|
| | | | must start with a digit or |
|
|
| | | | letter. |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **100** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| expected_codes | No | String | Specifies the expected HTTP |
|
|
| | | | status code. This parameter |
|
|
| | | | will take effect only when |
|
|
| | | | **type** is set to |
|
|
| | | | **HTTP**. |
|
|
| | | | |
|
|
| | | | The value options are as |
|
|
| | | | follows: |
|
|
| | | | |
|
|
| | | | - A specific value, for |
|
|
| | | | example, 200 |
|
|
| | | | |
|
|
| | | | - A list of values that |
|
|
| | | | are separated with |
|
|
| | | | commas (,), for example, |
|
|
| | | | 200, 202 |
|
|
| | | | |
|
|
| | | | - A value range, for |
|
|
| | | | example, 200-204 |
|
|
| | | | |
|
|
| | | | This parameter is |
|
|
| | | | unsupported. Please do not |
|
|
| | | | use it. |
|
|
| | | | |
|
|
| | | | Default: **200** |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **64** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| http_method | No | String | Specifies the HTTP method. |
|
|
| | | | |
|
|
| | | | The value can be **GET**, |
|
|
| | | | **HEAD**, **POST**, |
|
|
| | | | **PUT**, **DELETE**, |
|
|
| | | | **TRACE**, **OPTIONS**, |
|
|
| | | | **CONNECT**, or **PATCH**. |
|
|
| | | | |
|
|
| | | | This parameter will take |
|
|
| | | | effect only when **type** |
|
|
| | | | is set to **HTTP**. |
|
|
| | | | |
|
|
| | | | This parameter is |
|
|
| | | | unsupported. Please do not |
|
|
| | | | use it. |
|
|
| | | | |
|
|
| | | | Default: **GET** |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **16** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| max_retries | Yes | Integer | Specifies the number of |
|
|
| | | | consecutive health checks |
|
|
| | | | when the health check |
|
|
| | | | result of a backend server |
|
|
| | | | changes from **OFFLINE** to |
|
|
| | | | **ONLINE**. The value |
|
|
| | | | ranges from **1** to |
|
|
| | | | **10**. |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **10** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| max_retries_down | No | Integer | Specifies the number of |
|
|
| | | | consecutive health checks |
|
|
| | | | when the health check |
|
|
| | | | result of a backend server |
|
|
| | | | changes from **ONLINE** to |
|
|
| | | | **OFFLINE**. |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **10** |
|
|
| | | | |
|
|
| | | | Default: **3** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| monitor_port | No | Integer | Specifies the port used for |
|
|
| | | | the health check. If this |
|
|
| | | | parameter is left blank, |
|
|
| | | | the port of the backend |
|
|
| | | | server group will be used |
|
|
| | | | by default. |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **65535** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| name | No | String | Specifies the health check |
|
|
| | | | name. |
|
|
| | | | |
|
|
| | | | Minimum: **0** |
|
|
| | | | |
|
|
| | | | Maximum: **255** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| pool_id | Yes | String | Specifies the ID of the |
|
|
| | | | backend server group for |
|
|
| | | | which the health check is |
|
|
| | | | configured. |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| project_id | No | String | Specifies the project ID. |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **32** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| timeout | Yes | Integer | Specifies the maximum time |
|
|
| | | | required for waiting for a |
|
|
| | | | response from the health |
|
|
| | | | check, in seconds. It is |
|
|
| | | | recommended that you set |
|
|
| | | | the value less than that of |
|
|
| | | | parameter **delay**. |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **50** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| type | Yes | String | Specifies the health check |
|
|
| | | | protocol. |
|
|
| | | | |
|
|
| | | | The value can be **TCP**, |
|
|
| | | | **UDP_CONNECT**, **HTTP**, |
|
|
| | | | **HTTPS**, or **PING**. |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
| url_path | No | String | Specifies the HTTP request |
|
|
| | | | path for the health check. |
|
|
| | | | The value must start with a |
|
|
| | | | slash (/), and the default |
|
|
| | | | value is /. This parameter |
|
|
| | | | is available only when |
|
|
| | | | **type** is set to |
|
|
| | | | **HTTP**. |
|
|
| | | | |
|
|
| | | | Default: **/** |
|
|
| | | | |
|
|
| | | | Minimum: **1** |
|
|
| | | | |
|
|
| | | | Maximum: **255** |
|
|
+-----------------------------+-----------------------------+-----------------------------+-----------------------------+
|
|
|
|
Response Parameters
|
|
^^^^^^^^^^^^^^^^^^^
|
|
|
|
**Status code: 201**
|
|
|
|
.. table:: **Table 5** Response body parameters
|
|
|
|
+---------------+-------------------------------------------------+-------------------------------------------------+
|
|
| Parameter | Type | Description |
|
|
+===============+=================================================+=================================================+
|
|
| request_id | String | Specifies the request ID. The value is |
|
|
| | | automatically generated. |
|
|
+---------------+-------------------------------------------------+-------------------------------------------------+
|
|
| healthmonitor | `HealthMonitor <# | Specifies the health check. |
|
|
| | CreateHealthMonitor__response_HealthMonitor>`__ | |
|
|
| | object | |
|
|
+---------------+-------------------------------------------------+-------------------------------------------------+
|
|
|
|
.. table:: **Table 6** HealthMonitor
|
|
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| Parameter | Type | Description |
|
|
+=======================================+=======================================+=======================================+
|
|
| admin_state_up | Boolean | Specifies the administrative status |
|
|
| | | of the health check. Two value |
|
|
| | | options are available. **true** |
|
|
| | | indicates that the health check is |
|
|
| | | enabled, and **false** indicates that |
|
|
| | | the health check is disabled. |
|
|
| | | |
|
|
| | | Default: **true** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| delay | Integer | Specifies the interval between health |
|
|
| | | checks, in seconds. |
|
|
| | | |
|
|
| | | Minimum: **1** |
|
|
| | | |
|
|
| | | Maximum: **50** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| domain_name | String | Specifies the domain name that HTTP |
|
|
| | | requests are sent to during the |
|
|
| | | health check. |
|
|
| | | |
|
|
| | | This parameter is available only when |
|
|
| | | **type** is set to **HTTP**. |
|
|
| | | |
|
|
| | | The value is left blank by default, |
|
|
| | | indicating that the virtual IP |
|
|
| | | address of the load balancer is used |
|
|
| | | as the destination address of HTTP |
|
|
| | | requests. |
|
|
| | | |
|
|
| | | The value can contain only digits, |
|
|
| | | letters, hyphens (-), and periods (.) |
|
|
| | | and must start with a digit or |
|
|
| | | letter. |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| expected_codes | String | Specifies the expected HTTP status |
|
|
| | | code. This parameter will take effect |
|
|
| | | only when **type** is set to |
|
|
| | | **HTTP**. |
|
|
| | | |
|
|
| | | The value options are as follows: |
|
|
| | | |
|
|
| | | - A specific value, for example, 200 |
|
|
| | | |
|
|
| | | - A list of values that are |
|
|
| | | separated with commas (,), for |
|
|
| | | example, 200, 202 |
|
|
| | | |
|
|
| | | - A value range, for example, |
|
|
| | | 200-204 |
|
|
| | | |
|
|
| | | This parameter is unsupported. Please |
|
|
| | | do not use it. |
|
|
| | | |
|
|
| | | Default: **200** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| http_method | String | Specifies the HTTP method. This |
|
|
| | | parameter will take effect only when |
|
|
| | | **type** is set to **HTTP**. |
|
|
| | | |
|
|
| | | The value can be **GET**, **HEAD**, |
|
|
| | | **POST**, **PUT**, **DELETE**, |
|
|
| | | **TRACE**, **OPTIONS**, **CONNECT**, |
|
|
| | | or **PATCH**. |
|
|
| | | |
|
|
| | | This parameter is unsupported. Please |
|
|
| | | do not use it. |
|
|
| | | |
|
|
| | | Default: **GET** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| id | String | Specifies the health check ID. |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| max_retries | Integer | Specifies the number of consecutive |
|
|
| | | health checks when the health check |
|
|
| | | result of a backend server changes |
|
|
| | | from **OFFLINE** to **ONLINE**. The |
|
|
| | | value ranges from **1** to **10**. |
|
|
| | | |
|
|
| | | Minimum: **1** |
|
|
| | | |
|
|
| | | Maximum: **10** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| max_retries_down | Integer | Specifies the number of consecutive |
|
|
| | | health checks when the health check |
|
|
| | | result of a backend server changes |
|
|
| | | from **ONLINE** to **OFFLINE**. |
|
|
| | | |
|
|
| | | Minimum: **1** |
|
|
| | | |
|
|
| | | Maximum: **10** |
|
|
| | | |
|
|
| | | Default: **3** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| monitor_port | Integer | Specifies the port used for the |
|
|
| | | health check. If this parameter is |
|
|
| | | left blank, the port of the backend |
|
|
| | | server group will be used by default. |
|
|
| | | |
|
|
| | | Minimum: **1** |
|
|
| | | |
|
|
| | | Maximum: **65535** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| name | String | Specifies the health check name. |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| pools | Array of | Lists the IDs of backend server |
|
|
| | `PoolRef <#Crea | groups for which the health check is |
|
|
| | teHealthMonitor__response_PoolRef>`__ | configured. |
|
|
| | objects | |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| project_id | String | Specifies the project ID. |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| timeout | Integer | Specifies the maximum time required |
|
|
| | | for waiting for a response from the |
|
|
| | | health check, in seconds. It is |
|
|
| | | recommended that you set the value |
|
|
| | | less than that of parameter |
|
|
| | | **delay**. |
|
|
| | | |
|
|
| | | Minimum: **1** |
|
|
| | | |
|
|
| | | Maximum: **50** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| type | String | Specifies the health check protocol. |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
| url_path | String | Specifies the HTTP request path for |
|
|
| | | the health check. The value must |
|
|
| | | start with a slash (/), and the |
|
|
| | | default value is /. This parameter is |
|
|
| | | available only when **type** is set |
|
|
| | | to **HTTP**. |
|
|
| | | |
|
|
| | | Default: **/** |
|
|
+---------------------------------------+---------------------------------------+---------------------------------------+
|
|
|
|
.. table:: **Table 7** PoolRef
|
|
|
|
========= ====== =============================================
|
|
Parameter Type Description
|
|
========= ====== =============================================
|
|
id String Specifies the ID of the backend server group.
|
|
========= ====== =============================================
|
|
|
|
Example Requests
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
.. code:: screen
|
|
|
|
POST
|
|
|
|
https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/healthmonitors
|
|
|
|
{
|
|
"healthmonitor" : {
|
|
"name" : "My Healthmonitor",
|
|
"max_retries" : 3,
|
|
"pool_id" : "488acc50-6bcf-423d-8f0a-0f4184f5b8a0",
|
|
"type" : "HTTP",
|
|
"timeout" : 30,
|
|
"delay" : 1
|
|
}
|
|
}
|
|
|
|
Example Responses
|
|
^^^^^^^^^^^^^^^^^
|
|
|
|
**Status code: 201**
|
|
|
|
Successful request.
|
|
|
|
.. code:: screen
|
|
|
|
{
|
|
"request_id" : "0e837340-f1bd-4037-8f61-9923d0f0b19e",
|
|
"healthmonitor" : {
|
|
"id" : "c2b210b2-60c4-449d-91e2-9e9ea1dd7441",
|
|
"project_id" : "99a3fff0d03c428eac3678da6a7d0f24",
|
|
"name" : "My Healthmonitor",
|
|
"delay" : 1,
|
|
"max_retries" : 3,
|
|
"pools" : [ {
|
|
"id" : "488acc50-6bcf-423d-8f0a-0f4184f5b8a0"
|
|
} ],
|
|
"admin_state_up" : true,
|
|
"timeout" : 30,
|
|
"type" : "HTTP",
|
|
"expected_codes" : "200",
|
|
"url_path" : "/",
|
|
"http_method" : "GET"
|
|
}
|
|
}
|
|
|
|
Status Codes
|
|
^^^^^^^^^^^^
|
|
|
|
=========== ===================
|
|
Status Code Description
|
|
=========== ===================
|
|
201 Successful request.
|
|
=========== ===================
|
|
|
|
Error Codes
|
|
^^^^^^^^^^^
|
|
|
|
See `Error Codes <errorcode.html>`__.
|
|
|
|
**Parent topic:** `Health Check <topic_300000008.html>`__
|