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 TCP
UDP
PING
HTTP
HTTPS
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のドキュメントにてご確認ください。