ヘルスモニタ作成
Description
指定したプールにヘルスモニタを作成します。
メンバー対象のサーバーの死活監視をします。
Request URL
Load Balancer API POST /v2.0/lbaas/healthmonitors
Request Json
・TCP/PINGによるヘルスチェックの場合
{ "healthmonitor": { "name": "ヘルスモニタ名", "pool_id": "プールID", "delay": 監視間隔, "max_retries": リトライ回数, "timeout": 判定時間, "type": "プロトコル" } }
・HTTP/HTTPSによるヘルスチェックの場合
{ "healthmonitor": { "name": "ヘルスモニタ名", "pool_id": "プールID", "delay": 監視間隔, "max_retries": リトライ回数, "timeout": 判定時間, "type": "プロトコル", "url_path": "監視先のパス", "expected_codes": "ステータスコード" } }
Request Parameters
Parameter | Value | Style | Description |
---|---|---|---|
X-Auth-Token | トークン | header | トークンの情報を指定します。トークンの発行方法は、トークン発行 にてご確認ください。 |
name | ヘルスモニタ名 | body | 任意のヘルスモニタ名を指定します。 |
poolid | プールID | body | 紐付けるプールIDを指定します。プールIDの確認方法は、プール一覧取得 を実行の上、レスポンス結果から対象プールのプールIDをご確認ください。 |
delay | 監視間隔 | body | 監視間隔を秒単位で指定します。1秒~180秒の間で指定できます。監視間隔が短いと意図しないバランシング対象の除外が発生する可能性もございますため、「timeout」で指定する値も含め、ある程度余裕を設けた調整を推奨します。 |
max_retries | リトライ回数 | body | ヘルスチェックがNGになった際のリトライ回数を指定します。 |
timeout | 判定時間 | body | ヘルスチェックの応答待ち時間を秒単位で指定します。1秒~180秒の間で指定できます。なお、「delay」で指定する時間より少なくする必要があります。応答待ち時間が短いと意図しないバランシング対象の除外が発生する可能性もございますため、「delay」で指定する値も含め、ある程度余裕を設けた調整を推奨します。 |
type | TCPUDPPINGHTTPHTTPS | body | ヘルスチェックに使用するプロトコルを指定します。レイヤー7のプロトコルの場合、バランシング先の負荷になるため、バランシング先の数が少ないケースやサーバースペックが潤沢でない場合は、「TCP」や「PING」を推奨します。 |
url_path(Optional) | 監視先のパス | body | 監視先のパスを指定します。「type」にて「HTTP」もしくは「HTTPS」を使用する場合に指定が必要になります。 |
expected_codes(Optional) | ステータスコード | body | ヘルスチェック時にレスポンスで期待するステータスコードを指定します。「type」にて「HTTP」もしくは「HTTPS」を使用する場合に指定が必要になります。 |
Response Code
Success
201
Example
Request
curl -X POST \ -H "Accept: application/json" \ -H "X-Auth-Token: トークン" \ -d '{"healthmonitor": {"name": "ヘルスモニタ名","pool_id": "プールID","delay": 監視間隔,"max_retries": リトライ回数,"timeout": 判定時間,"type": "プロトコル"}}' \ https://lbaas.c3j1.conoha.io/v2.0/lbaas/healthmonitors
Response
{
"healthmonitor": {
"id": "ヘルスモニタID",
"name": "ヘルスモニタ名",
"type": "TCP",
"delay": 30,
"timeout": 10,
"max_retries": 3,
"url_path": null,
"expected_codes": null,
"admin_state_up": true,
"project_id": "テナントID",
"pools": [
{
"id": "プールID"
}
],
"provisioning_status": "PENDING_CREATE",
"operating_status": "OFFLINE",
"tenant_id": "テナントID"
}
}
ConoHaにて提供しておりますAPIにつきましては、クラウド基盤として採用しておりますOpenStackの機能にて実装しておりますので、詳細な情報や使い方はOpenStackのドキュメントにてご確認ください。