NAV ナビゲーションバー
及び
shell

Zevenet API v4.0リファレンス

ZAPI (Zevenet Application Programming Interface)はシステム管理者がZevenetロードバランサーの行動を制御するためのツールです。

それを使用する前に、Webインターフェースからzapiユーザーをアクティブにする必要があります。 システム/ユーザー.

zapiユーザーが作成されると、URL https://(zevenet_server):444 / zapi / v4.0 / zapi.cgi /(URI_path)に要求を送信することができます。 zevenet_server HTTPサービスが待機しているIPです。

URI_path 動作するオブジェクトまたはアクションを定義します。 彼の振る舞いと彼のパラメーターはそれぞれ一つの博士課程内で定義されるでしょう。

このAPIで使用されている動詞は次のようになります。 GET, POST, PUT or DELETE。 PUTまたはPOST要求には、必要なパラメーターは必要ありませんが、常にほとんどパラメーターが必要です。

鑑定書

Zevenetは、HTTPSリスナー付きの444 / zapi / v4.0 / zapi.cgi HTTPファームでそれらを使用するために、PEM形式のcetificatesをサポートしています。 Pem証明書の作成方法についてさらに知りたい場合は、次の記事を参照してください。 PEM形式で証明書を生成する

すべての証明書を一覧表示する

すべての証明書を一覧表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates

GET /certificates

証明書ストア内のすべてのCSRおよびPEM証明書を一覧表示します。これらの証明書はHTTPSファームで使用できます。

応答は、キーがに設定されたJSONオブジェクトになります。 paramsは。 この値は証明書オブジェクトの配列になり、それぞれに以下のキー属性が含まれます。

応答例:

{
   "description" : "List all certificates",
   "params" : [
      {
         "CN" : "Zen Load Balancer",
         "creation" : "Jan 12 14:49:03 2011 GMT",
         "expiration" : "Jan  9 14:49:03 2021 GMT",
         "file" : "zencert.pem",
         "issuer" : "Zen Load Balancer",
         "type" : "Certificate"
      }
   ]
}

応答パラメータ

フィールド 種類 説明
paramsは オブジェクト[] 証明書オブジェクトのリスト。

証明書オブジェクト

フィールド 種類 説明
CN 文字列 ドメイン共通名
創造 文字列 作成日。
期限切れ 文字列 有効期限。
file 文字列 証明書のファイル名、一意のID。
発行者 文字列 認証局が証明書に署名します。
type 文字列 CSRまたは証明書

証明書をダウンロードする

証明書をダウンロードする

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/example.pem

GET /certificates/<file>

証明書ストアにインストールされている証明書をダウンロードし、要求内のファイル名を使用してそれを識別します。

応答には、ファイルに関する情報とともに以下に示すヘッダーが含まれます。 応答の本文はファイルの内容になります。

応答ヘッダー

HTTP/1.1 200 OK
Date: Thu, 22 Dec 2016 09:27:47 GMT
Content-Disposition: attachment; filename="example.pem"
Content-Type: application/x-download; charset=ISO-8859-1
Content-Length: 2359

証明書を削除する

証明書を削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/example.pem

DELETE /certificates/<file>

証明書ストア内のファイル名で証明書を削除します。

応答例:

{
   "description" : "Delete certificate",
   "message" : "The Certificate example.pem has been deleted.",
   "success" : "true"
}

CSR証明書を作成する

CSR証明書を作成する

リクエスト例:

curl -k -X POST -H "ZAPI_KEY: <ZAPI_KEY_STRING>" -H 'Content-Type: application/json'
-d '{"name":"NewCSR","fqdn":"host.domain.com","division":"IT","organization":"Example Corp.",
"locality":"Madrid","state":"Madrid","country":"ES","mail":"info@domain.com"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates

POST /certificates

証明書署名要求(CSRファイル)を作成します。

リクエストパラメータ

フィールド 種類 説明 必須
文字列 証明書IDの名前 true
fqdn 文字列 444 / zapi / v4.0 / zapi.cgiサーバーの完全修飾ドメイン名。 true
分裂 文字列 証明書を処理する444 / zapi / v4.0 / zapi.cgi組織の部門。 true
組織 文字列 444 / zapi / v4.0 / zapi.cgi組織の正式な名前です。 true
地域 文字列 444 / zapi / v4.0 / zapi.cgi組織が配置されている市。 true
状態 文字列 444 / zapi / v4.0 / zapi.cgi組織が配置されている州/地域。 true
文字列 444 / zapi / v4.0 / zapi.cgi組織が所在地である国の2文字のISOコード。 true
電子メール 文字列 444 / zapi / v4.0 / zapi.cgi組織への連絡に使用されたEメールアドレス。 true

応答例:

{
   "description" : "Create CSR",
   "message" : "Certificate NewCSR created",
   "success" : "true"
}

証明書をアップロードする

証明書をアップロードする

リクエスト例:

curl -k -X POST -H "ZAPI_KEY: <ZAPI_KEY_STRING>" -H 'Content-Type: text/plain'
--tcp-nodelay --data-binary @/local_path/to/example.pem
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/example.pem

POST /certificates/<file>

HTTPSリスナーを使用してHTTPファーム用のPEM証明書をアップロードします。

パラメータが必要 --tcp-nodelay--data-binary バイナリモードでファイルをアップロードします。

リクエストURIパラメータ

フィールド 種類 説明 必須
file 文字列 証明書ストアにアップロードして保存するための証明書ファイル名。 true

応答例:

{
   "description" : "Upload PEM certificate",
   "message" : "Certificate uploaded",
   "success" : "true"
}

暗号のリスト

暗号のリスト

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/ciphers

GET /ciphers

HTTPSファームが使用できる利用可能な暗号を一覧表示します。

応答は、キーがに設定されたJSONオブジェクトになります。 paramsは。 この値は証明書オブジェクトの配列になり、それぞれに以下のキー属性が含まれます。

応答例:

{
   "description" : "Get the ciphers available",
   "params" : [
      {
         "ciphers" : "all",
         "description" : "All"
      },
      {
         "ciphers" : "highsecurity",
         "description" : "High security"
      },
      {
         "ciphers" : "customsecurity",
         "description" : "Custom security"
      }
   ]
}

応答パラメータ

フィールド 種類 説明
paramsは オブジェクト[] 証明書オブジェクトのリスト。

証明書オブジェクト

フィールド 種類 説明
暗号 文字列 一意の識別子として使用されます。
説明 文字列 分かりやすい名前。

LetsencryptSSL証明書

Zevenetは、Letsencrypt証明書の生成と更新をサポートしています。 最後の証明書は、HTTPSファームで使用できるZEVENETPEM証明書です。 。 作成方法について詳しく知りたい場合 PEM 証明書は、次の記事をご覧ください。 PEM形式で証明書を生成する

LetsencryptConfigを表示する

LetsencryptConfigを表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/letsencryptz/config
zcli certificate-le-config list

GET /certificates/letsencryptz/config

Letsencrypt構成を表示します。

応答例:

応答は以下のパラメータを持つJSONオブジェクトになります。

{
   "description" : "Get LetsEncrypt Config",
   "params" : {
      "email" : "test_le@zevenet.com"
   }
}

応答パラメータ

フィールド 種類 説明
email 文字列 Letsencryptのメール

LetsencryptConfigを変更する

LetsencryptConfigを変更する

リクエスト例:

curl -k -X PUT -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"email":"test_le@zevenet.com"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/letsencryptz/config
zcli certificates-le-config set -email test_le@zevenet.com

PUT /certificates/letsencryptz/config

Letsencrypt構成を変更します。

リクエストパラメータ

フィールド 種類 説明 必須
email 文字列 Letsencryptで連絡先として使用するための電子メール true

応答例:

応答は以下のパラメータを持つJSONオブジェクトになります。

{
   "description" : "Modify LetsEncrypt Config",
   "message" : "The Letsencrypt Config has been updated successfully.",
   "params" : {
      "email" : "test_le@zevenet.com"
   },
   "success" : "true"
}


応答パラメータ

フィールド 種類 説明
email 文字列 Letsencryptのメール

すべてのLetsencrypt証明書を一覧表示します

すべてのLetsencrypt証明書を一覧表示します

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/letsencryptz
zcli certificate-le list 

GET /certificates/letsencryptz

作成されたすべてのLetsencrypt証明書を一覧表示します。

応答例:

応答は、キーがに設定されたJSONオブジェクトになります。 paramsは。 この値は、letsencrypt証明書オブジェクトの配列になります。各オブジェクトには、以下の主要な属性が含まれています。

{
   "description" : "List LetsEncrypt certificates",
   "params" : [
      {
         "CN" : "*.wildcard.test.zevenet.com",
         "creation" : "May 31 05:51:49 2021 GMT",
         "domains" : [
            "*.wildcard.test.zevenet.com"
         ],
         "expiration" : "Aug 29 05:51:49 2021 GMT",
         "file" : "/usr/local/zevenet/config/letsencrypt/acme/*.wildcard.test.zevenet.com/fullchain.cer",
         "issuer" : "US,(STAGING) Let's Encrypt,(STAGING) Artificial Apricot R3",
         "status" : "valid",
         "type" : "LE Certificate",
         "wildcard" : "true"
      },
      {
         "CN" : "*.test1.wildcard.test.zevenet.io",
         "creation" : "",
         "dnstxt" : [
            {
               "domain" : "*.test1.wildcard.test.zevenet.io",
               "txt" : "QpbOLzMrJapoQmcbrA5_dr6ciwLzNF-y3z5XR5i-I2c"
            }
         ],
         "domains" : [
            "*.test1.wildcard.test.zevenet.io"
         ],
         "expiration" : "",
         "file" : null,
         "issuer" : "",
         "status" : "not issued",
         "type" : "LE Certificate",
         "wildcard" : "true"
      }

   ]
}

応答パラメータ

フィールド 種類 説明
paramsは オブジェクト[] 証明書オブジェクトのリスト。

証明書オブジェクト

フィールド 種類 説明
CN 文字列 ドメイン共通名
創造 文字列 作成日。
ドメイン String [] 証明書が利用できるドメインのリスト。
期限切れ 文字列 有効期限。
dnstxt オブジェクト[] 証明書がまだ発行されていないかどうかを検証するための各ドメインのDNSTXTレコードのリスト。
file 文字列 証明書のファイル名、一意のIDです。
発行者 文字列 認証局が証明書に署名します。
status 文字列 証明書のステータス。有効な、証明書は有効です。期限切れが近づいています、証明書の有効期限が近づいています。期限切れの、証明書の有効期限が切れています。発行されていません、証明書は発行される予定です。未知の、証明書が無効です。
type 文字列 LE証明書。
ワイルドカード 文字列 true、証明書はワイルドカードドメイン用です。 false、証明書は非ワイルドカードドメイン用です。

dnstxtオブジェクト

フィールド 種類 説明
ドメイン 文字列 ドメイン名
TXT 文字列 DNStxtレコードLetsEncryptは検証する必要があります。 DNS TXTレコードは、_acme-challenge.domainによってアクセス可能になります。

ワイルドカード証明書なしでSSLを暗号化しましょう

Let'sEncryptワイルドカード証明書は、ワイルドカードドメインがない場合にのみ有効な証明書です。

新しいLet'sEncryptのワイルドカード証明書を作成します

新しいLet'sEncryptNoWildcardCertificateを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"farmname":"lefarm","domains":["test.zevenet.com"],"test":"true","wildcard":"false"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/letsencryptz
zcli certificate-le create -wildcard false 

POST /certificates/letsencryptz

新しいLet'sEncryptワイルドカード証明書を作成します。

リクエストパラメータ

フィールド 種類 説明 必須
農場名 文字列 一時サービス「Let'sEncryptz」が設定されているファーム名。 paramvipが送信されない場合はtrue。
VIP 文字列 一時ファーム「Let'sEncryptz」が構成されているシステムのIP。 paramfarmnameが送信されない場合はtrue。
ドメイン String [] 証明書が利用できるドメインのリスト。 true
ワイルドカード 文字列 true、証明書はワイルドカードドメイン用です。 false、証明書は非ワイルドカードドメイン用です。 true
test 文字列 true、証明書はLetsEncryptStagingServerによって発行されます。 false、証明書はLetsEncrypt Serverによって発行され、本番環境で有効になります。 true

応答例:

{
   "description" : "Create Let's Encrypt certificate",
   "params" : {
      "CN" : "test.zevenet.com",
      "creation" : "May 31 11:05:30 2021 GMT",
      "domains" : [
         "test.zevenet.io"
      ],
      "expiration" : "Aug 29 11:05:30 2021 GMT",
      "file" : "/usr/local/zevenet/config/letsencrypt/live/test.zevenet.com/fullchain.pem",
      "issuer" : "US,(STAGING) Let's Encrypt,(STAGING) Artificial Apricot R3",
      "status" : "valid",
      "type" : "LE Certificate",
      "wildcard" : "false"
   }
}

応答パラメータ

フィールド 種類 説明
paramsは オブジェクト[] 証明書オブジェクトのリスト。

証明書オブジェクト

フィールド 種類 説明
CN 文字列 ドメイン共通名
創造 文字列 作成日。
ドメイン String [] 証明書が利用できるドメインのリスト。
期限切れ 文字列 有効期限。
file 文字列 証明書のファイル名、一意のIDです。
発行者 文字列 認証局が証明書に署名します。
status 文字列 証明書のステータス。有効な、証明書は有効です。期限切れが近づいています、証明書の有効期限が近づいています。期限切れの、証明書の有効期限が切れています。発行されていません、証明書は発行される予定です。未知の、証明書が無効です。
type 文字列 LE証明書。
ワイルドカード 文字列 true、証明書はワイルドカードドメイン用です。 false、証明書は非ワイルドカードドメイン用です。

Let's Encrypt noWildcardCertificateにアクションを設定します

Let's Encrypt NoWildcardCertificateにアクションを設定します

リクエスト例:

curl -k -X POST -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"action":"renew","vip":"192.168.101.44","force_renewal":"true","restart":"true"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/letsencryptz/example.domain.com/actions
zcli certificate-le renew example.domain.com ( not implemented )

POST /certificates/letsencryptz/<domain>/actions

Let's Encryptのワイルドカード証明書にアクションを設定します。アクションについては、リクエストパラメータの表を参照してください。

リクエストパラメータ

フィールド 種類 説明 必須
アクション 文字列 実行するアクション:可能性は次のとおりです。 更新する、証明書が更新されます。
農場名 文字列 証明書を更新するために一時的なサービス「Let'sEncryptz」が構成されているファーム名。 paramvipが送信されない場合はtrue。
VIP 文字列 一時ファーム「Let'sEncryptz」が証明書を更新するように構成されているシステムのIP。 paramfarmnameが送信されない場合はtrue。
強制更新 文字列 true、有効期限が切れていなくても、証明書を強制的に更新します。 false、証明書が更新される予定の場合(有効期限が30日以内)に証明書が更新されます。
再起動 文字列 true、証明書を使用しているすべてのファームが再起動されます。 false、証明書を使用しているファームは再起動されません。

応答例:

{
   "description" : "Let's Encrypt certificate actions",
   "params" : {
      "CN" : "test.zevenet.com",
      "creation" : "May 31 11:35:08 2021 GMT",
      "domains" : [
         "test.zevenet.com"
      ],
      "expiration" : "Aug 29 11:35:08 2021 GMT",
      "file" : "/usr/local/zevenet/config/letsencrypt/live/test.zevenet.com/fullchain.pem",
      "issuer" : "US,(STAGING) Let's Encrypt,(STAGING) Artificial Apricot R3",
      "status" : "valid",
      "type" : "LE Certificate",
      "wildcard" : "false"
   },
   "warning" : "The following farms were been restarted: testl7farm"
}

応答パラメータ

ファームが再開された場合、 警告 フィールドで説明します。

フィールド 種類 説明
paramsは オブジェクト[] 証明書オブジェクトのリスト。

証明書オブジェクト

フィールド 種類 説明
CN 文字列 ドメイン共通名
創造 文字列 作成日。
ドメイン String [] 証明書が利用できるドメインのリスト。
期限切れ 文字列 有効期限。
file 文字列 証明書のファイル名、一意のIDです。
発行者 文字列 認証局が証明書に署名します。
status 文字列 証明書のステータス。有効な、証明書は有効です。期限切れが近づいています、証明書の有効期限が近づいています。期限切れの、証明書の有効期限が切れています。発行されていません、証明書は発行される予定です。未知の、証明書が無効です。
type 文字列 LE証明書。
ワイルドカード 文字列 true、証明書はワイルドカードドメイン用です。 false、証明書は非ワイルドカードドメイン用です。

ワイルドカードなしを削除するLet'sEncrypt証明書

ワイルドカードなしを削除するLet'sEncrypt証明書

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/certificates/letsencryptz/example.domain.com
zcli certificate-le delete example.domain.com

DELETE /certificates/letsencryptz/<domain>

ドメインごとにLet'sEncrypt証明書を削除します。

応答例:

{
   "description" : "Delete Let's Encrypt certificate",
   "message" : "Let's Encrypt Certificate example.domain.com has been deleted.",
   "success" : "true"
}

農場

Zevenetは3つの異なる方法でトラフィックを管理することができ、それぞれの方法は異なるモジュール、ローカルサービスロードバランサーまたはLSLBモジュールとデータリンクサービスロードバランサーまたはDSLBモジュールによって管理されます。

すべてのモジュールはファームプロファイルの概念で動作します。ファームプロファイルはネットワークトラフィックに対して特別なアクションを実行する準備ができているパラメータのグループです。Zevenetの最良の結果を得るために各ファームプロファイルを実行できることを理解することは重要です。 ADCです。

すべての農場を一覧表示

すべての農場を一覧表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms

GET /farms

利用可能な農場をすべてリストする

応答は、キーがに設定されたJSONオブジェクトになります。 paramsは。 この値はファームの履歴書オブジェクトの配列になり、各オブジェクトには以下の主要な属性が含まれます。

農場オブジェクト

フィールド 種類 説明
農場名 文字列 ファームの説明的な名前。 一意の識別子として使用されます。
プロフィール 文字列 プロファイルタイプ。プロファイルの利用可能な値は次のとおりです。 HTTP, HTTPS or l4xnat LSLBモジュール用 データリンク DSLBモジュール用
status 文字列 農場の状況 使用可能な状況値は以下のとおりです。 ダウンファームが稼働していません。 再起動が必要ファームは稼働していますが、再起動アクションが保留中です。 重大なファームが稼働しており、すべてのバックエンドにアクセスできない、またはメンテナンス中です。 問題ファームは稼働しており、到達不能なバックエンドがいくつかありますが、ほとんどのバックエンドが稼働中です。 メンテナンス、ファームは稼働しており、稼働中のバックエンドがありますが、ほとんどのバックエンドはメンテナンスモードです。 up、農場は稼働しており、すべてのバックエンドは成功しています。
VIP 文字列 ファームがトラフィックを受信して​​いる仮想IP
vport 文字列 ファームがトラフィックを受信して​​いる仮想ポート。使用可能なポートの値は次のとおりです。http[s]とl4xnatのポート番号、「」で区切られたポートのグループ、またはl4xnatプロファイルの「:」で区切られたポート範囲、l4xnatの両方の区切り文字値(「、」および「:」)は同じフィールドで使用できます。

応答例:

{
   "description" : "List farms",
   "params" : [
      {
         "farmname" : "httpFarm",
         "profile" : "http",
         "status" : "up",
         "vip" : "192.168.101.146",
         "vport" : "81"
      }
   ]
}

農場を削除する

農場を削除する

リクエスト例:

curl --tlsv1 -k -X DELETE -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP

DELETE /farms/<farmname>

ファーム名identfierを使用してファームを削除します。

応答例:

{
  "description" : "Delete farm FarmHTTP",
  "message" : "The Farm FarmHTTP has been deleted.",
  "success" : "true"
}

ファームにアクションを設定する

ファームにアクションを設定する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"action":"stop"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmTCP/actions

PUT /farms/<farmname>/actions

アクションをファームに適用します。アクションについては、要求パラメーターの表を参照してください。

リクエストパラメータ

フィールド 種類 説明
アクション 文字列 希望する動作を設定します。 アクションは以下のとおりです。 stop、農場は停止されます。 start、農場が開始されます 再起動ファームは自動的に停止して起動します。

応答例:

{
  "description" : "Set a new action in FarmHTTP",
  "params" : [
     {
        "action" : "stop"
     }
  ]
}

応答パラメータ

設定に問題がなければ、zapiは要求されたアクションを返します。

HTTPファーム

HTTPプロファイルは、プロキシの特別なプロパティを備えた高度なレイヤー7負荷分散(またはApplication Delivery Controller)です。 このプロファイルは、HTTPSレイヤー7ロードバランシングなどのいくつかの機能を提供します。 このプロファイルは、Webサービス(Webアプリケーションサーバーを含む)およびWebDav、RDP over HTTP、ICA over HTTPなどのHTTPおよびHTTPSプロトコルに基づくすべてのアプリケーションプロトコルに対して非難されます。このファームプロファイルを構成するために、仮想IPアドレスと仮想TCPポートが必要になります。

名前で農場を検索する

名前で農場を検索する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/httpFarm

GET /farms/<farmname>

特定のファームに関するすべての構成を表示します。

応答例:

{
   "description" : "List farm httpFarm",
   "params" : {
      "certlist" : [
         {
            "file" : "zencert.pem",
            "id" : 1
         }
      ],
      "addheader" : [
         {
            "header" : "load-balancer: true",
            "id" : 0
         }
      ],
      "addresponseheader" : [
         {
            "header" : "Session: true",
            "id" : 0
         }
      ],
      "headremove" : [
         {
            "id" : 0,
            "pattern" : "^client"
         }
      ],
      "removeresponseheader" : [
         {
            "id" : 0,
            "pattern" : "Host"
         }
      ],
      "ignore_100_continue" : "true",
      "cipherc" : "ALL",
      "ciphers" : "all",
      "contimeout" : 20,
      "disable_sslv2" : "true",
      "disable_sslv3" : "false",
      "disable_tlsv1" : "false",
      "disable_tlsv1_1" : "true",
      "disable_tlsv1_2" : "false",
      "error414" : "Request URI is too long.",
      "error500" : "An internal server error occurred. Please try again later.",
      "error501" : "This method may not be used.",
      "error503" : "The service is not available. Please try again later.",
      "httpverb" : "MSRPCext",
      "listener" : "https",
      "reqtimeout" : 30,
      "restimeout" : 45,
      "resurrectime" : 10,
      "rewritelocation" : "enabled",
      "status" : "up",
      "vip" : "192.168.100.211",
      "vport" : 200
   },
   "services" : [
      {
         "backends" : [],
         "farmguardian" : "check_tcp",
         "httpsb" : "false",
         "id" : "service3",
         "leastresp" : "false",
         "redirect" : "http://192.168.101.254/index.html",
         "redirecttype" : "default",
         "sessionid" : "",
         "ttl" : 0,
         "urlp" : "",
         "vhost" : "",
         "pinnedconnection" : 0,
         "routingpolicy" : "ROUND_ROBIN"
      },
      {
         "backends" : [
            {
               "id" : 0,
               "ip" : "192.168.0.168",
               "port" : 80,
               "status" : "up",
               "timeout" : null,
               "weight" : null
            }
         ],
         "farmguardian" : null,
         "httpsb" : "false",
         "id" : "srv",
         "leastresp" : "false",
         "persistence" : "",
         "redirect" : "",
         "redirecttype" : "",
         "sessionid" : "",
         "ttl" : 0,
         "urlp" : "",
         "vhost" : ""
      },
   ]
}

応答パラメータ

応答は以下の形式のJSONオブジェクトになります。

農場オブジェクト:

フィールド 種類 説明
paramsは オブジェクト ファーム構成のパラメータ。
サービス オブジェクト[] このファームで作成されたすべてのサービスとその構成を含む配列。

HTTPファームのパラメータオブジェクト:

フィールド 種類 説明
証明書リスト オブジェクト[] httpsプロファイル内のみ ファーム内でアクティブになっている証明書(pem形式)。同じファームに追加できるpem証明書は1つだけです。 https値を持つリスナーが必要です。 証明書ストア内の任意のPem証明書をここで使用できます。
暗号 文字列 httpsリスナーのみ これはSSL接続が受け付ける暗号化の許可されたカスタマイズリストです。これはOpenSSL暗号と同じ形式の文字列です。 この属性は次の場合にのみ使用されます。 暗号 fieldの値はsutomsecurityです。
暗号 文字列 https値を持つリスナー内でのみ。 SSL接続を強化するために、SSL接続によって受け入れられる暗号のリストを作成するために使用されます。 オプションは以下のとおりです。 すべての暗号が受け入れられます。 高セキュリティ高いセキュリティのための暗号だけが受け入れられるでしょう。 または カスタムセキュリティ、ロードされた暗号のみ 暗号 分野は受け入れられます。
contimeout ファームがバックエンドへのTCP接続を待機する秒数。
disable_sslv2 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン2のSSLセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルSSLv2が許可されている場合
disable_sslv3 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン3のSSLセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルSSLv3が許可されている場合
disable_tlsv1 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン1のTLSセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルTLSv1が許可されている場合
disable_tlsv1_1 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン1.1のTLSセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルTLSv1.1が許可されている場合
disable_tlsv1_2 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン1.2のTLSセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルTLSv1.2が許可されている場合
error414 文字列 414 HTTPエラーコードで対処するためのパーソナライズされたメッセージ。
error500 文字列 500 HTTPエラーコードで対処するためのパーソナライズされたメッセージ。
error501 文字列 501 HTTPエラーコードで対処するためのパーソナライズされたメッセージ。
error503 文字列 503 HTTPエラーコードで対処するためのパーソナライズされたメッセージ。
httpverb 文字列 このフィールドは、HTTPクライアント要求に許可される操作を示します。 利用可能な値は以下のとおりです。 標準HTTP、受け入れられたhttp要求GET、POST、HEAD。 extendedHTTP、以前のHTTP要求に加えてPUT、DELETEを受け入れました。 standardWebDAV、以前のHTTPリクエストに加え、LOCK、UNLO​​CK、PROPFIND、PROPPATCH、SEARCH、MKCOL、MOVE、COPY、OPTIONS、TRACE、MKACTIVITY、CHECKOUT、MERGE、REPORT、 MSextWebDAV 以前のhttp要求に加えてSUBSCRIBE、UNSUBSCRIBE、NOTIFY、BPROPFIND、BPROPPATCH、POLL、BMOVE、BCOPY、BDELETE、CONNECT、または MSRPCext、以前のhttpリクエストに加えてRPC_IN_DATA、RPC_OUT_DATAを受け付けました。 これらの値は大文字と小文字が区別されることに注意してください。
リスナー 文字列 リスナーは、ファームがクライアントからの要求をどのように処理するかを定義します。 オプションは以下のとおりです。 HTTP 保護されていないプロトコルの場合 HTTPS 保護されたプロトコル用。
reqtimeout ファームがクライアントの要求を待機する時間(秒単位)。
再タイムアウト ファームがバックエンドからの応答を秒単位で待機する時間。
復活 この期間が過ぎると、ロードバランサは、実サーバが稼働しているかどうかをチェックします。
書き換え 文字列 有効になっている場合、ファームは仮想ホストを持つクライアントに応答してLocation:およびContent-location:ヘッダーを変更するように強制されます。 オプションは以下のとおりです。 使用可能、アクティブ 無効、無効、または 有効バックエンド バックエンドアドレスのみが比較されます。
status 文字列 農場の状況 使用可能な状況値は以下のとおりです。 ダウンファームが稼働していません。 再起動が必要ファームは稼働していますが、再起動アクションが保留中です。 重大なファームが稼働しており、すべてのバックエンドにアクセスできない、またはメンテナンス中です。 問題ファームは稼働しており、到達不能なバックエンドがいくつかありますが、ほとんどのバックエンドが稼働中です。 メンテナンス、ファームは稼働しており、稼働中のバックエンドがありますが、ほとんどのバックエンドはメンテナンスモードです。 up、農場は稼働しており、すべてのバックエンドは成功しています。
VIP 文字列 仮想サービスが待機しているファームのIP。
vport 仮想サービスが待機しているファームのポート。

ログ| 文字列| ファームはHTTP接続のトレースをログに記録します。 このパラメーターに値がある場合 trueログが有効になります。 値があれば false、ログは無効になっています。 ignore_100_continue | 文字列| このフィールドの値がtrueの場合、100続行HTTPヘッダーは無視されます。 値がfalseの場合、100続行ヘッダーが処理されます(バージョン4.0.2以降)。 addheader | Object [] | これは、クライアント要求に追加するヘッダーを持つオブジェクトのリストです(バージョン4.0.2以降)。 addresponseheader | Object [] | これは、バックエンド応答に追加するヘッダーを持つオブジェクトのリストです(バージョン4.0.2以降)。 ヘッドリムーブ| Object [] | これは、クライアント要求からヘッダーを削除するための正規表現のリストです。 削除されたヘッダーはバックエンドに到達しません(バージョン4.0.2以降)。 removeresponseheader | Object [] | これは、バックエンド応答からヘッダーを削除するための正規表現のリストです。 削除されたヘッダーはクライアントに到達しません(バージョン4.0.2以降)。 pinnedconnection(バージョン4.0.2以降)| 番号| すべての接続を固定するかどうかを指定します(デフォルト:0、固定なし)。 Pinnedconnectionが1に設定されている場合、zproxyは解析や編集を行わずにすべてのデータを直接転送します。 ルーティングポリシー(バージョン4.0.2以降)| 文字列| ルーティングポリシーを指定します。 すべてのアルゴリズムは、各バックエンドで設定されたすべての重みで重み付けされます。 XNUMXつのオプションがあります。 ラウンドロビン ルーティングポリシーとしてラウンドロビンアルゴリズムを使用します(デフォルト). LEAST_CONNECTIONS 設定された重みを比率として使用して、確立された接続が最も少ないバックエンドを選択します。 反応時間 設定された重みを比率として使用して、応答時間が最も短いバックエンドを選択します。 PENDING_CONNECTIONS 設定された重みを比率として使用して、保留中の接続が最も少ないバックエンドを選択します。 rewriteurl(バージョン4.0.2以降)| Object [] | URLから文字列を取得して置き換えるために、パターンをチェックします。 いくつかのRewriteUrlディレクティブを追加できます。 URLの書き換えフェーズを終了する最後のフラグが設定されていない限り、それらはすべて着信URLに順番に適用されます。

証明書リストオブジェクト:

フィールド 種類 説明
file 文字列 証明書名。証明書ストア内の証明書への参照。
id 証明書ID

HTTPファーム用のサービスオブジェクト

フィールド 種類 説明
バックエンド オブジェクト[] サービスに定義されているバックエンド。
農家 文字列 バックエンドのステータスをチェックしているのはFarmGuardian名です。 FarmGuardianは、ファームが稼働中の間も稼働しています。
httpsb 文字列 このパラメータは、現在のサービスで定義されているバックエンドサーバーがHTTPS言語を使用していることをファームに示し、データは送信される前に暗号化されます。 trueプロファイルはHTTPSプロトコルのトラフィックをバックエンドに送信します。 falseプロファイルはHTTPプロトコルのトラフィックをバックエンドに送信します。
id 文字列 サービスの名前。サービスの作成後に変更することはできません。
leastresp 文字列 最小応答バランス方式を有効にします。 true プロファイルは、これにもっと多くの接続を送信するために、どのバックエンドが応答するのにより短い時間をかけているかを慎重にチェックします。 false プロファイルは、どのバックエンドが応答に時間がかからないかをチェックしません。
持続性 文字列 このパラメータは、HTTPサービスがクライアントセッションを管理する方法を定義します。 オプションは以下のとおりです。 "" 空文字列、何もしない IP 持続セッションはクライアントIPに基づいて行われます。 BASIC 永続セッションは、BASICヘッダに基づいて行われます。 URL 永続セッションは、URI内のフィールドに基づいて行われます。 PARM 永続セッションは、URIの末尾の値に基づいて行われます。 COOKIE 永続セッションはCookie名に基づいて行われ、このCookieはバックエンドによって作成される必要があります。 ヘッダ永続セッションは、ヘッダー名に基づいて行われます。
リダイレクト 文字列 クライアントの要求は新しいURLへのリダイレクトによって自動的に応答されるため、特別なバックエンドとして振る舞います。 リダイレクトが設定されている場合、リクエストはバックエンドに転送されず、代わりにリダイレクトがクライアントに応答されます。
リダイレクト型 文字列 リダイレクトの方法、2つの選択肢 デフォルトURLはリダイレクト先の絶対ホストおよびパスと見なされます。 アペンド元のリクエストパスまたはURIが、デフォルトオプションで指定したホストおよびパスに追加されます。 もし リダイレクト このフィールドは空の文字列になります。
セッションID 文字列 もしあれば利用可能です 持続性 fieldがURL、COOKIE、またはHEADERの場合、パラメータ値はhttpヘッダーでファームによって検索され、クライアントセッションを管理します。
TTL 固執するだけです。 この値は、非アクティブなクライアントセッションの最大存続期間(最大セッション経過時間)を秒単位で示します。
urlp 文字列 文法的にチェックされる特定のURLパターンを通して、クライアントが要求しているURLに関するWebサービスを決定することを許可します。 PCRE正規表現がサポートされています。
仮想ホスト 文字列 これは、HTTPファームで定義されているものと同じ仮想IPおよびポートを介したドメイン名によって決まる条件を指定します。 PCRE正規表現がサポートされています。

HTTPファーム用のバックエンドオブジェクト

フィールド 種類 説明
id 与えられたサービス内のバックエンド識別子。
ip 文字列 実際のサービスが実行されているバックエンドのIP。
ポート 実際のサービスが実行されているバックエンドのポート。
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 メンテナンス、バックエンドは、管理者によって接続を受信する準備ができていないものとしてマークされています。このオプションは、バックエンドのメンテナンスタスクに役立ちます。 未定義バックエンドのステータスはチェックされていません。
タイムアウト 特定のリクエストに応答するためのバックエンドのタイムアウト(秒単位)です。 nullシステムがグローバルパラメータBackendsタイムアウトを使用する場合。
重量 これは現在の実サーバーの重み値であり、重み値が高いバックエンドはより多くの接続を受け取ります。 デフォルト値はnullであり、このバックエンドに使用される特別な重みではありません。 可能な値は 1 〜へ 9.
connection_limit(4.0.2から) (プロキシ新世代が機能している場合のみ)バックエンドごとに確立された接続の最大数。 値が0の場合、バックエンドに制限はありません。 使用可能なバックエンドがない場合、クライアントは503エラーを受け取ります。

新しい農場を作る

新しい農場を作る

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"farmname":"newHTTPfarm", "profile":"http", "vip":"192.168.100.23",
"vport":80}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms

POST /farms

新しいHTTPファームを作成します。

リクエストパラメータ

フィールド 種類 説明 必須
農場名 文字列 ファームの説明的な名前。 一意の識別子として使用されます。 true
プロフィール 文字列 作成したファームのプロフィール。 httpファームの場合 HTTP. true
VIP 文字列 仮想サービスを実行する予定のファームのIP。 示されたIPはシステムに構成されていてUPである必要があります true
vport 仮想サービスが待機しようとしているファームのポート。 同じ仮想ポートと仮想IPを別のファームで使用してはいけません。 true

応答例:

{
   "description" : "Creating farm 'newHTTPfarm'",
   "params" : {
      "farmname" : "newHTTPfarm",
      "profile" : "http",
      "vip" : "192.168.100.23",
      "vport" : 80
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

農場を変更する

農場を変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"contimeout":22,"newfarmname":"FarmHTTP2","vip":"178.62.126.152","vport":88,
"restimeout":47,"resurrectime":12,"reqtimeout":32,"rewritelocation":"enabled","httpverb":"standardHTTP",
"error414":"Message error 414","error500":"Message error 500","error501":"Message error 501",
"error503":"Message error 503","listener":"https","ciphers":"customsecurity","disable_sslv2":"true",
"disable_sslv3":"false","disable_tlsv1":"false","disable_tlsv1_1":"true","disable_tlsv1_2":"false",
"cipherc":"TLSv1+SSLv3+HIGH:-MEDIUM:-LOW*:-ADH*"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP

PUT /farms/<farmname>

特定のHTTPファームのグローバルパラメータを変更します。

リクエストパラメータ

フィールド 種類 説明
contimeout ファームがバックエンドへの接続を待機する時間(秒単位)。
再タイムアウト ファームがバックエンドからの応答を秒単位で待機する時間。
復活 秒単位のこの値は、ブラックリストに載っているバックエンドを出して、それが生きているかどうかをチェックする期間です。
reqtimeout ファームがクライアントの要求を待機する時間(秒単位)。
disable_sslv2 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン2のSSLセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルSSLv2が許可されている場合
disable_sslv3 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン3のSSLセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルSSLv3が許可されている場合
disable_tlsv1 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン1のTLSセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルTLSv1が許可されている場合
disable_tlsv1_1 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン1.1のTLSセキュリティプロトコルを使用した接続は許可されていません。 または false プロトコルTLSv1.1が許可されている場合
disable_tlsv1_2 文字列 httpsリスナーのみ このフィールドに値がある場合 true バージョン1.2のTLSセキュリティプロトコルを使用した接続は許可されていません。 または false もし
書き換え 文字列 有効になっている場合、ファームは仮想ホストを持つクライアントに応答してLocation:およびContent-location:ヘッダーを変更するように強制されます。 オプションは以下のとおりです。 使用可能、アクティブ 無効、無効、または 有効バックエンド バックエンドアドレスのみが比較されます。
httpverb 文字列 このフィールドは、HTTPクライアント要求に許可される操作を示します。 利用可能な値は以下のとおりです。 標準HTTP、受け入れられたhttp要求GET、POST、HEAD。 extendedHTTP、以前のHTTP要求に加えてPUT、DELETEを受け入れました。 standardWebDAV、以前のHTTPリクエストに加え、LOCK、UNLO​​CK、PROPFIND、PROPPATCH、SEARCH、MKCOL、MOVE、COPY、OPTIONS、TRACE、MKACTIVITY、CHECKOUT、MERGE、REPORT、 MSextWebDAV 以前のhttp要求に加えてSUBSCRIBE、UNSUBSCRIBE、NOTIFY、BPROPFIND、BPROPPATCH、POLL、BMOVE、BCOPY、BDELETE、CONNECT、または MSRPCext、以前のhttpリクエストに加えてRPC_IN_DATA、RPC_OUT_DATAを受け付けました。 これらの値は大文字と小文字が区別されることに注意してください。
error414 文字列 パーソナライズドメッセージエラー414。
error500 文字列 パーソナライズドメッセージエラー500。
error501 文字列 パーソナライズドメッセージエラー501。
error503 文字列 パーソナライズドメッセージエラー503。
リスナー 文字列 リスナーは、ファームがクライアントからの要求をどのように処理するかを定義します。 オプションは以下のとおりです。 HTTP 保護されていないプロトコルの場合 HTTPS 保護されたプロトコル用。
暗号 文字列 https値を持つリスナー内でのみ。 SSL接続を強化するために、SSL接続によって受け入れられる暗号のリストを作成するために使用されます。 オプションは以下のとおりです。 すべての暗号が受け入れられます。 高セキュリティ高いセキュリティのための暗号だけが受け入れられるでしょう。 または カスタムセキュリティ、ロードされた暗号のみ 暗号 分野は受け入れられます。
暗号 文字列 httpsリスナーのみ これはSSL接続が受け付ける暗号化の許可されたカスタマイズリストです。これはOpenSSL暗号と同じ形式の文字列です。 この属性は次の場合にのみ使用されます。 暗号 fieldの値はsutomsecurityです。
newfarmname 文字列 新しいファームの名前。 農場を停止する必要があります。
vport 仮想サービスが待機しているファームのポート。
VIP 文字列 仮想サービスがリッスンしているファームのIP。このIPは設定され、システム内で起動している必要があります。

応答例:

{
   "description" : "Modify farm FarmHTTP",
   "params" : {
      "cipherc" : "TLSv1+SSLv3+HIGH:-MEDIUM:-LOW*:-ADH*",
      "ciphers" : "customsecurity",
      "contimeout" : 22,
      "disable_sslv2" : "true",
      "disable_sslv3" : "false",
      "disable_tlsv1" : "false",
      "disable_tlsv1_1" : "true",
      "disable_tlsv1_2" : "false",
      "error414" : "Message error 414",
      "error500" : "Message error 500",
      "error501" : "Message error 501",
      "error503" : "Message error 503",
      "httpverb" : "standardHTTP",
      "listener" : "https",
      "newfarmname" : "FarmHTTP",
      "reqtimeout" : 32,
      "restimeout" : 47,
      "resurrectime" : 12,
      "rewritelocation" : "enabled",
      "vip" : "178.62.126.152",
      "vport" : 88
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

証明書を追加する

証明書を追加する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"file":"example.pem"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/httpFarm/certificates

POST /farms/<farmname>/certificates

HTTPSリスナーを使用してHTTPファームのPEM証明書を変更します。 使用した証明書はシステムにすでにアップロードされている必要があります。を見てください。 証明書>すべての証明書を一覧表示 利用可能な証明書リストについては。

リクエストパラメータ

フィールド 種類 説明 必須
file 文字列 証明書ファイル名。以前は証明書をシステムにアップロードする必要がありました。 true

応答例:

{
   "description" : "Add certificate",
   "message" : "The certificate example.pem has been added to the farm httpFarm, you need restart the farm to apply",
   "success" : "true",
   "status": "needed restart"
}

リクエストにカスタムヘッダーを追加する

リクエストにカスタムヘッダーを追加する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"loadbalancer: true"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/addheader
zcli farm-add-request-header MyHttpFarm -header "loadbalancer: true"

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/addheader

ファームはバックエンドにヘッダーを追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 バックエンドに送信されるヘッダを含む文字列です。 true

応答例:

{
   "description" : "Add addheader directive.",
   "message" : "Added a new item to the addheader list",
   "status" : "needed restart",
   "success" : "true"
}

リクエストルールにカスタムヘッダーを追加するように変更します

リクエストルールにカスタムヘッダーを追加するように変更します

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"loadbalancer: true"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/addheader/id
zcli farm-add-request-header MyHttpFarm -header "loadbalancer: true"

この呼び出しは、バージョン4.0.2から使用できます。

PUT /farms/<farmname>/addheader/<id>

ファームはバックエンドにヘッダーを追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 バックエンドに送信されるヘッダを含む文字列です。 true

応答例:

{
   "description" : "Modify an addheader directive.",
   "message" : "Modified an item from the addheader list",
   "success" : "true"
}

リクエストからカスタムヘッダーを削除する

リクエストからカスタムヘッダーを削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/addheader/0
zcli farm-add-request-header remove MyHttpFarm 0

この呼び出しは、バージョン4.0.2から使用できます。

DELETE /farms/<farmname>/addheader/<index>

index 削除するaddheader配列のインデックスです。

応答例:

{
   "description" : "Delete addheader directive.",
   "message" : "The addheader 0 was deleted successfully",
   "status" : "needed restart",
   "success" : "true"
}

リクエストからヘッダーを削除するルールを追加

リクエストからヘッダーを削除するルールを追加

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"pattern":"^client:"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/headremove
zcli farm-remove-request-header add MyHttpFarm -pattern "^client:"

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/headremove

着信要求から特定のヘッダーを削除します。 一致する指定ヘッダーのすべての出現箇所が削除されます。

リクエストパラメータ

フィールド 種類 説明 必須
パターン 文字列 これはクライアントの要求を探すための正規表現付きの文字列です。 一部のヘッダーがパターン内で一致すると、そのヘッダーは削除されます。 true

応答例:

{
   "description" : "Add headremove directive.",
   "message" : "Added a new item to the headremove list",
   "status" : "needed restart",
   "success" : "true"
}

リクエストルールからヘッダーを削除するを変更する

リクエストルールからヘッダーを削除するを変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"pattern":"^client:"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/headremove/id
zcli farm-remove-request-header add MyHttpFarm -pattern "^client:"

この呼び出しは、バージョン4.0.2から使用できます。

PUT /farms/<farmname>/headremove/<id>

着信要求から特定のヘッダーを削除します。 一致する指定ヘッダーのすべての出現箇所が削除されます。

リクエストパラメータ

フィールド 種類 説明 必須
パターン 文字列 これはクライアントの要求を探すための正規表現付きの文字列です。 一部のヘッダーがパターン内で一致すると、そのヘッダーは削除されます。 true

応答例:

{
   "description" : "Modify an headremove directive.",
   "message" : "Modified an item from the headremove list",
   "success" : "true"
}

リクエストからヘッダーを削除するルールを削除する

リクエストからヘッダーを削除するルールを削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/headremove/0
zcli farm-remove-request-header remove MyHttpFarm 0

この呼び出しは、バージョン4.0.2から使用できます。

DELETE /farms/<farmname>/headremove/<index>

index 削除するヘッド削除配列のインデックスです。

応答例:

{
   "description" : "Delete headremove directive.",
   "message" : "The headremove 0 was deleted successfully",
   "status" : "needed restart",
   "success" : "true"
}

応答にカスタムヘッダーを追加する

応答にカスタムヘッダーを追加する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"loadbalancer: true"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/addresponseheader
zcli farm-add-response-header add MyHttpFarm -header loadbalancer:true

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/addresponseheader

ファームは、ヘッダーをバックエンド応答に追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 バックエンドに送信されるヘッダを含む文字列です。 true

応答例:

{
   "description" : "Add a header to the backend repsonse.",
   "message" : "Added a new header to the backend response",
   "status" : "needed restart",
   "success" : "true"
}

応答ルールへのカスタムヘッダーの追加を変更します

応答ルールへのカスタムヘッダーの追加を変更します

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"loadbalancer: true"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/addresponseheader/id
zcli farm-add-response-header add MyHttpFarm -header loadbalancer:true

この呼び出しは、バージョン4.0.2から使用できます。

PUT /farms/<farmname>/addresponseheader/<id>

ファームは、ヘッダーをバックエンド応答に追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 バックエンドに送信されるヘッダを含む文字列です。 true

応答例:

{
   "description" : "Modify an addresponseheader directive.",
   "message" : "Modified an item from the addresponseheader list",
   "success" : "true"
}

応答からカスタムヘッダーを削除する

応答からカスタムヘッダーを削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/addresponseheader/0
zcli farm-add-response-header remove torta 0

この呼び出しは、バージョン4.0.2から使用できます。

DELETE /farms/<farmname>/addresponseheader/<index>

index 削除するaddresponseheader配列のインデックスです。

応答例:

{
   "description" : "Delete a header previously added to the backend response.",
   "message" : "The header 0 was deleted successfully",
   "status" : "needed restart",
   "success" : "true"
}

応答からヘッダーを削除するルールを追加する

応答からヘッダーを削除するルールを追加する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"pattern":"^client:"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/removeresponseheader
zcli farm-remove-response-header add MyHttpFarm -pattern "^client:"

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/removeresponseheader

着信要求から特定のヘッダーを削除します。 一致する指定ヘッダーのすべての出現箇所が削除されます。

リクエストパラメータ

フィールド 種類 説明 必須
パターン 文字列 これはクライアントの要求を探すための正規表現付きの文字列です。 一部のヘッダーがパターン内で一致すると、そのヘッダーは削除されます。 true

応答例:

{
   "description" : "Remove a header from the backend response.",
   "message" : "Added a patter to remove reponse headers",
   "status" : "needed restart",
   "success" : "true"
}

応答ルールからヘッダーを削除を変更する

応答ルールからヘッダーを削除を変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"pattern":"^client:"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/removeresponseheader/id
zcli farm-remove-response-header add MyHttpFarm -pattern "^client:"

この呼び出しは、バージョン4.0.2から使用できます。

PUT /farms/<farmname>/removeresponseheader/<id>

着信要求から特定のヘッダーを削除します。 一致する指定ヘッダーのすべての出現箇所が削除されます。

リクエストパラメータ

フィールド 種類 説明 必須
パターン 文字列 これはクライアントの要求を探すための正規表現付きの文字列です。 一部のヘッダーがパターン内で一致すると、そのヘッダーは削除されます。 true

応答例:

{
   "description" : "Modify a remove response header directive.",
   "message" : "Modified an item from the removeresponseheader list",
   "success" : "true"
}

応答からヘッダーを削除するルールを削除する

応答からヘッダーを削除するルールを削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/removeresponseheader/0
zcli farm-remove-response-header remove torta 0

この呼び出しは、バージョン4.0.2から使用できます。

DELETE /farms/<farmname>/removeresponseheader/<index>

index 削除するremoveresponseheader配列のインデックスです。

応答例:

{
   "description" : "Delete a pattern to remove response headers.",
   "message" : "The pattern 0 was deleted successfully",
   "status" : "needed restart",
   "success" : "true"
}

リクエストからヘッダーを書き換えるルールを追加する

リクエストからヘッダーを書き換えるルールを追加する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"^Cookie:","match":"^COOKIESESSION=(.*)","replace":"COOKIEUSER=$1"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replacerequestheader
farm-replace-request-header add farm1 -header ^Cookie: -match ^COOKIESESSION=(.*) -replace COOKIEUSER=$1`

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/replacerequestheader

リクエストからヘッダーを書き換えるルールを追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 書き換えられるヘッダー名を持つ正規表現 true
match 文字列 置き換えたいものに一致する正規表現値 true
replace 文字列 一致を置き換える値 true

応答例:

{
   "description" : "Add a Replace Header.",
   "message" : "Added a new replace header",
   "status" : "needed restart",
   "success" : "true"
}

リクエストルールからのリライトヘッダーを変更する

リクエストルールからのリライトヘッダーを変更する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"^Cookie:","match":"^COOKIESESSION=(.*)","replace":"COOKIEUSER=$1"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replacerequestheader/id
farm-replace-request-header add farm1 -header ^Cookie: -match ^COOKIESESSION=(.*) -replace COOKIEUSER=$1`

この呼び出しは、バージョン4.0.2から使用できます。

PUT /farms/<farmname>/replacerequestheader/<id>

リクエストからヘッダーを書き換えるルールを追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 書き換えられるヘッダー名を持つ正規表現 true
match 文字列 置き換えたいものに一致する正規表現値 true
replace 文字列 一致を置き換える値 true

応答例:

{
   "description" : "Modify a replaceHeader directive.",
   "message" : "Modified an item from the replaceHeader list",
   "success" : "true"
}

リクエストからヘッダーを書き換えるルールを削除する

リクエストからヘッダーを書き換えるルールを削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replacerequestheader/0
zcli farm-replace-request-header remove MyHttpFarm 0

この呼び出しは、バージョン4.0.2から使用できます。

DELETE /farms/<farmname>/replacerequestheader/<index>

index 削除するreplacerequestheader配列のインデックスです。

応答例:

{
   "description" : "Delete a replace header directive.",
   "message" : "The replace header 0 was deleted successfully",
   "status" : "needed restart",
   "success" : "true"
}

リクエストルールからリライトヘッダーを移動する

リクエストルールからリライトヘッダーを移動する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"position":1}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replacerequestheader/id/actions
farm-replace-request-header add farm1 -header ^Cookie: -match ^COOKIESESSION=(.*) -replace COOKIEUSER=$1`

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/replacerequestheader/<id>/actions

ReplaceRequestヘッダーを移動します。

リクエストパラメータ

フィールド 種類 説明 必須
位置 新しいルールの位置 true

応答例:

{
   "description" : "Move a replace header directive",
   "message" : "Header was moved successfully.",
   "params" : {
      "position" : "1"
   }
}

応答からヘッダーを書き換えるルールを追加する

応答からヘッダーを書き換えるルールを追加する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"^Cookie:","match":"^COOKIESESSION=(.*)","replace":"COOKIEUSER=$1"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replaceresponseheader
farm-replace-response-header add farm1 -header ^Cookie: -match ^COOKIESESSION=(.*) -replace COOKIEUSER=$1` -t$

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/replaceresponseheader

応答からヘッダーを書き換えるルールを追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 書き換えられるヘッダー名を持つ正規表現 true
match 文字列 置き換えたいものに一致する正規表現値 true
replace 文字列 一致を置き換える値 true

応答例:

{
   "description" : "Add a Replace Header.",
   "message" : "Added a new replace header",
   "status" : "needed restart",
   "success" : "true"
}

応答ルールからの書き換えヘッダーを変更する

応答ルールからの書き換えヘッダーを変更する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"header":"^Cookie:","match":"^COOKIESESSION=(.*)","replace":"COOKIEUSER=$1"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replaceresponseheader/id
farm-replace-response-header add farm1 -header ^Cookie: -match ^COOKIESESSION=(.*) -replace COOKIEUSER=$1` -t$

この呼び出しは、バージョン4.0.2から使用できます。

PUT /farms/<farmname>/replaceresponseheader/<id>

応答からヘッダーを書き換えるルールを追加します。

リクエストパラメータ

フィールド 種類 説明 必須
ヘッダ 文字列 書き換えられるヘッダー名を持つ正規表現 true
match 文字列 置き換えたいものに一致する正規表現値 true
replace 文字列 一致を置き換える値 true

応答例:

{
   "description" : "Modify a replaceHeader directive.",
   "message" : "Modified an item from the replaceHeader list",
   "success" : "true"
}

応答からヘッダーを書き換えるルールを削除する

応答からヘッダーを書き換えるルールを削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replaceresponseheader/0
zcli farm-replace-response-header remove MyHttpFarm 0

この呼び出しは、バージョン4.0.2から使用できます。

DELETE /farms/<farmname>/replaceresponseheader/<index>

index 削除するreplaceresponseheader配列のインデックスです。

応答例:

{
   "description" : "Delete a replace header directive.",
   "message" : "The replace header 0 was deleted successfully",
   "status" : "needed restart",
   "success" : "true"
}

リクエストルールからリライトヘッダーを移動する

応答ルールからリライトヘッダーを移動する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"position":1}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/MyHttpFarm/replaceresponseheader/id/actions
farm-replace-response-header add farm1 -header ^Cookie: -match ^COOKIESESSION=(.*) -replace COOKIEUSER=$1`

この呼び出しは、バージョン4.0.2から使用できます。

POST /farms/<farmname>/replaceresponseheader/<id>/actions

ReplaceRequestヘッダーを移動します。

リクエストパラメータ

フィールド 種類 説明 必須
位置 新しいルールの位置 true

応答例:

{
   "description" : "Move a replace header directive",
   "message" : "Header was moved successfully.",
   "params" : {
      "position" : "1"
   }
}

HTTP - サービス

HTTPプロファイルファーム内のサービスは、すべてのクライアント要求に対して正しいサービスを一致させるためにファームコアで使用されるいくつかの決定的な条件を通じて、異なるプロパティ、バックエンド、さらには永続性メソッドを持つWebサービスを配信するコンテンツスイッチング方法を提供します。 このサービス定義は、クライアントに応答を配信できるバックエンドサーバーを特定するために、ファームによって使用されます。

IDでサービスを取得

IDでサービスを取得

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/cookiefarm/services/serv

GET /farms/<farmname>/services/<id>

特定のサービスに関するすべての設定を表示します。

応答例:

{
   "description" : "Get services of a farm",
   "services" : {
      "backends" : [
         {
            "id" : 0,
            "ip" : "192.168.100.254",
            "port" : 80,
            "status" : "up",
            "timeout" : 20,
            "weight" : null,
            "connection_limit" : null
         },
         {
            "id" : 0,
            "ip" : "192.168.100.254",
            "port" : 80,
            "status" : "up",
            "timeout" : null,
            "weight" : null,
            "connection_limit" : null
         }
      ],
      "farmguardian" : "check_tcp-cut_conns",
      "httpsb" : "false",
      "id" : "serv",
      "leastresp" : "false",
      "persistence" : "COOKIE",
      "redirect" : "",
      "redirecttype" : "",
      "sessionid" : "JSESSIONID",
      "ttl" : 18,
      "urlp" : "(?i)^/music$",
      "vhost" : "",
      "pinnedconnection" : 0,
      "routingpolicy" : "ROUND_ROBIN",
   }
}

応答パラメータ

応答は以下の形式のJSONオブジェクトになります。

HTTPファーム用のサービスオブジェクト

フィールド 種類 説明
バックエンド オブジェクト[] サービスに定義されているバックエンド。
農家 文字列 バックエンドのステータスをチェックしているのはFarmGuardian名です。 FarmGuardianは、ファームが稼働中の間も稼働しています。
httpsb 文字列 このパラメータは、現在のサービスで定義されているバックエンドサーバーがHTTPS言語を使用していることをファームに示し、データは送信される前に暗号化されます。 trueプロファイルはHTTPSプロトコルのトラフィックをバックエンドに送信します。 falseプロファイルはHTTPプロトコルのトラフィックをバックエンドに送信します。
id 文字列 サービスの名前。サービスの作成後に変更することはできません。
leastresp 文字列 最小応答バランス方式を有効にします。 true プロファイルは、これにもっと多くの接続を送信するために、どのバックエンドが応答するのにより短い時間をかけているかを慎重にチェックします。 false プロファイルは、どのバックエンドが応答に時間がかからないかをチェックしません。
持続性 文字列 このパラメータは、HTTPサービスがクライアントセッションを管理する方法を定義します。 オプションは以下のとおりです。 "" 空文字列、何もしない IP 持続セッションはクライアントIPに基づいて行われます。 BASIC 永続セッションは、BASICヘッダに基づいて行われます。 URL 永続セッションは、URI内のフィールドに基づいて行われます。 PARM 永続セッションは、URIの末尾の値に基づいて行われます。 COOKIE 永続セッションはCookie名に基づいて行われ、このCookieはバックエンドによって作成される必要があります。 ヘッダ永続セッションは、ヘッダー名に基づいて行われます。
リダイレクト 文字列 クライアントの要求は新しいURLへのリダイレクトによって自動的に応答されるため、特別なバックエンドとして振る舞います。 リダイレクトが設定されている場合、リクエストはバックエンドに転送されず、代わりにリダイレクトがクライアントに応答されます。
リダイレクト型 文字列 リダイレクトの方法、2つの選択肢 デフォルトURLはリダイレクト先の絶対ホストおよびパスと見なされます。 アペンド元のリクエストパスまたはURIが、デフォルトオプションで指定したホストおよびパスに追加されます。 もし リダイレクト このフィールドは空の文字列になります。
セッションID 文字列 もしあれば利用可能です 持続性 fieldがURL、COOKIE、またはHEADERの場合、パラメータ値はhttpヘッダーでファームによって検索され、クライアントセッションを管理します。
TTL 固執するだけです。 この値は、非アクティブなクライアントセッションの最大存続期間(最大セッション経過時間)を秒単位で示します。
urlp 文字列 文法的にチェックされる特定のURLパターンを通して、クライアントが要求しているURLに関するWebサービスを決定することを許可します。 PCRE正規表現がサポートされています。
仮想ホスト 文字列 これは、HTTPファームで定義されているものと同じ仮想IPおよびポートを介したドメイン名によって決まる条件を指定します。 PCRE正規表現がサポートされています。
pinnedconnection(バージョン4.0.2以降) すべての接続を固定するかどうかを指定します(デフォルト:0、固定なし)。 Pinnedconnectionが1に設定されている場合、zproxyは解析や編集を行わずにすべてのデータを直接転送します。
ルーティングポリシー(バージョン4.0.2以降) 文字列 ルーティングポリシーを指定します。 すべてのアルゴリズムは、各バックエンドで設定されたすべての重みで重み付けされます。 XNUMXつのオプションがあります。 ラウンドロビン ルーティングポリシーとしてラウンドロビンアルゴリズムを使用します(デフォールトン)。 LEAST_CONNECTIONS 設定された重みを比率として使用して、確立された接続が最も少ないバックエンドを選択します。 反応時間 設定された重みを比率として使用して、応答時間が最も短いバックエンドを選択します。 PENDING_CONNECTIONS 設定された重みを比率として使用して、保留中の接続が最も少ないバックエンドを選択します。

HTTPファーム用のバックエンドオブジェクト

フィールド 種類 説明
id 与えられたサービス内のバックエンド識別子。
ip 文字列 実際のサービスが実行されているバックエンドのIP。
ポート 実際のサービスが実行されているバックエンドのポート。
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 メンテナンス、バックエンドは、管理者によって接続を受信する準備ができていないものとしてマークされています。このオプションは、バックエンドのメンテナンスタスクに役立ちます。 未定義バックエンドのステータスはチェックされていません。
タイムアウト 特定のリクエストに応答するためのバックエンドのタイムアウト(秒単位)です。 nullシステムがグローバルパラメータBackendsタイムアウトを使用する場合。
重量 これは現在の実サーバーの重み値であり、重み値が高いバックエンドはより多くの接続を受け取ります。 デフォルト値はnullであり、このバックエンドに使用される特別な重みではありません。 可能な値は 1 〜へ 9.
connection_limit(4.0.2から) (プロキシ新世代が機能している場合のみ)バックエンドごとに確立された接続の最大数。 値が0の場合、バックエンドに制限はありません。 使用可能なバックエンドがない場合、クライアントは503エラーを受け取ります。

新しいサービスを作成する

新しいサービスを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"id":"newserv"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP/services

POST /farms/<farmname>/services

特定のHTTPプロファイルファームにサービスを作成します。 この変更を適用するには、ファームに再起動操作が必要です。

リクエストパラメータ

フィールド 種類 説明 必須
id 文字列 一意の識別子として使用されるサービス名。 使用できるのは英数字値だけです。 true

応答例:

{
   "description" : "New service newserv",
   "params" : {
      "id" : "newserv"
   },
   "status" : "needed restart"
}

サービスを変更する

サービスを変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
 -d '{"vhost":"www.mywebserver.com","urlp":"^/myapp1$","persistence":"URL",
"redirect":"http://zenloadbalancer.com","ttl":125,"sessionid":"sid",
"leastresp":"true","httpsb":"true"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP/services/sev2

PUT /farms/<farmname>/services/<id>

HTTPプロファイル内のサービスのパラメータを変更します。 id 変更されるサービスの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明
仮想ホスト 文字列 HTTPプロファイルファームによって定義されたものと同じ仮想IPおよびポートを介したドメイン名によって決定される条件を指定します。 PCRE正規表現がサポートされています。
urlp 文字列 文法的にチェックされる特定のURLパターンを通して、クライアントが要求しているURLに関するWebサービスを決定することを許可します。 PCRE正規表現がサポートされています。
リダイレクト 文字列 これは特別なバックエンドとして機能し、クライアントの要求は新しいURLへのリダイレクトによって自動的に答えられます。
リダイレクト型 文字列 リダイレクトの方法、2つの選択肢 デフォルトURLはリダイレクト先の絶対ホストおよびパスと見なされます。 アペンド元のリクエストパスまたはURIが、で指定したホストとパスに追加されます。 リダイレクト フィールド。 この動作は次の場合にのみ適用されます。 リダイレクト 空の値ではありません。
持続性 文字列 このパラメータは、HTTPサービスがクライアントセッションを管理する方法を定義します。 オプションは以下のとおりです。 "" 空文字列、何もしない IP 持続セッションはクライアントIPに基づいて行われます。 BASIC 永続セッションは、BASICヘッダに基づいて行われます。 URL 永続セッションは、URI内のフィールドに基づいて行われます。 PARM 永続化セッションは、「;」で区切られた値に基づいて実行されます。 URIの最後に、 COOKIE 永続セッションはCookie名に基づいて行われ、このCookieはバックエンドによって作成される必要があります。 ヘッダ永続セッションは、ヘッダー名に基づいて行われます。
TTL 固執するだけです。 非アクティブなクライアントセッションの最大存続期間(最大セッション経過時間)(秒単位)。
セッションID 文字列 もしあれば利用可能です 持続性 分野は URL, COOKIE or ヘッダパラメータ値は、httpヘッダー内のプロファイルによって検索され、クライアントセッションを管理します。
leastresp 文字列 最小応答バランス方式を有効にします。 trueプロファイルは、これにより多くの接続を送信するために、どのバックエンドが応答するのにかかる時間が短いかを慎重にチェックします。 false、プロファイルは、どのバックエンドが応答に時間がかからないかをチェックしません。
httpsb 文字列 これは、現在のサービスで定義されているバックエンドサーバーがHTTPS言語を使用していることをファームに知らせ、データは送信される前に暗号化されます。 trueプロファイルはHTTPSプロトコルのトラフィックをバックエンドに送信します。 falseプロファイルはHTTPプロトコルのトラフィックをバックエンドに送信します。
pinnedconnection(バージョン4.0.2以降) すべての接続を固定するかどうかを指定します(デフォルト:0、固定なし)。 Pinnedconnectionが1に設定されている場合、zproxyは解析や編集を行わずにすべてのデータを直接転送します。
ルーティングポリシー(バージョン4.0.2以降) 文字列 ルーティングポリシーを指定します。 すべてのアルゴリズムは、各バックエンドで設定されたすべての重みで重み付けされます。 XNUMXつのオプションがあります。 ラウンドロビン ルーティングポリシーとしてラウンドロビンアルゴリズムを使用します(デフォールトン)。 LEAST_CONNECTIONS 設定された重みを比率として使用して、確立された接続が最も少ないバックエンドを選択します。 反応時間 設定された重みを比率として使用して、応答時間が最も短いバックエンドを選択します。 PENDING_CONNECTIONS 設定された重みを比率として使用して、保留中の接続が最も少ないバックエンドを選択します。

応答例:

{
   "description" : "Modify service newsrv in farm newHTTPfarm",
   "info" : "There're changes that need to be applied, stop and start farm to apply them!",
   "params" : {
      "backends" : [],
      "httpsb" : "true",
      "id" : "newsrv",
      "leastresp" : "true",
      "persistence" : "",
      "redirect" : "http://zenloadbalancer.com",
      "redirecttype" : "default",
      "sessionid" : "sid",
      "ttl" : 125,
      "urlp" : "^/myapp1$",
      "vhost" : "www.mywebserver.com",
      "pinnedconnection" : 0,
      "routingpolicy" : "ROUND_ROBIN",
   },
   "status" : "needed restart"
}

応答パラメータ

応答は要求されたパラメータが更新されたjsonになります。 status フィールド付き 再起動が必要 値。 変更を適用するには、再起動アクションを実行する必要があります。

FarmGuardianを追加

FarmGuardianを追加

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"name":"check_tcp-cut_conns"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP/services/service1/fg

POST /farms/<farmname>/services/<id>/fg

FarmGuardianをサービスに適用します。

URIパラメータはサービスの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明
文字列 FarmGuardianの固有ID。 FarmGuardiansは監視セクションで作成および修正されます。

応答例:

{
   "description" : "Add the farm guardian check_tcp-cut_conns to the service service1 in the farm FarmHTTP",
   "message" : "Success, The farm guardian check_tcp-cut_conns was added to the service service1 in the farm FarmHTTP"
}

FarmGuardianを削除します。

FarmGuardianを削除します。

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP/service/service1/fg/check_tcp-cut_conns

DELETE /farms/<farmname>/services/<id>/fg/<name>

ファーム内のサービスからFarmGuardianを削除します。

応答例:

{
   "description" : "Remove the farm guardian check_tcp-cut_conns from the service service1 in the farm FarmHTTP",
   "message" : "Sucess, check_tcp-cut_conns was removed from the service service1 in the farm FarmHTTP"
}

サービスを削除する

サービスを削除する

リクエスト例:

curl -k -X DELETE -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP/services/service1

DELETE /farms/<farmname>/services/<id>

httpプロファイルの特定のサービスを削除します。 id 削除されるサービスの一意の識別子です。

応答例:

{
  "description" : "Delete service service1 in farm FarmHTTP",
  "message" : "The service service1 in farm FarmHTTP has been deleted.",
  "success" : "true",
  "status": "needed restart"
}

HTTP - サービス - バックエンド

バックエンドを一覧表示する

バックエンドを一覧表示する

リクエスト例:

curl  -k -X GET -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/httpfarm/services/service1/backends

GET /farms/<farmname>/services/<id>/backends

サービス内のバックエンドのリストを取得します。 id サービスの一意の識別子です。

応答例:

{
   "description" : "List service backends",
   "params" : [
      {
         "id" : 0,
         "ip" : "192.168.0.10",
         "port" : 88,
         "status" : "up",
         "timeout" : 12,
         "weight" : 1,
         "connection_limit" : null
      },
      {
         "id" : 1,
         "ip" : "192.168.102.245",
         "port" : 80,
         "status" : "up",
         "timeout" : 22,
         "weight" : 2,
         "connection_limit" : null
      }
   ]
}

応答パラメータ

この呼び出しは、以下のパラメータを持つバックエンドオブジェクトの配列を返します。

フィールド 種類 説明
id サービス内のバックエンドの一意の識別子。 この識別子はシステムによって生成されます。
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
ポート 実際のサービスがリッスンしているバックエンドのポート。
タイムアウト 特定のリクエストに応答するためのバックエンドのタイムアウト(秒単位)です。
重量 これは、現在のバックエンドの重み値です。 可能な値は 1 〜へ 9.
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 メンテナンス、バックエンドは、管理者によって接続を受信する準備ができていないものとしてマークされています。このオプションは、バックエンドのメンテナンスタスクに役立ちます。 未定義バックエンドのステータスはチェックされていません。
connection_limit(4.0.2から) (プロキシ新世代が機能している場合のみ)バックエンドごとに確立された接続の最大数。 値が0の場合、バックエンドに制限はありません。 使用可能なバックエンドがない場合、クライアントは503エラーを受け取ります。

新しいバックエンドを作成する

新しいバックエンドを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.102.244","port":80, "weight":2,"timeout":2}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/httpfarm/services/newsrv/backends

POST /farms/<farmname>/services/<id>/backends

特定のHTTPプロファイルに新しいバックエンドを作成します。 id サービスの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明 必須
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。 true
ポート 実際のサービスがリッスンしているバックエンドのポート。 true
タイムアウト 特定のリクエストに応答するのはバックエンドのタイムアウトです。
重量 これは、現在のバックエンドの重み値です。 可能な値は 1 〜へ 9.

応答例:

{
   "description" : "New service backend",
   "message" : "Added backend to service succesfully",
   "params" : {
      "id" : 0,
      "ip" : "192.168.102.244",
      "port" : 80,
      "timeout" : 2,
      "weight" : 2,
      "connection_limit" : null
   },
   "status" : "needed restart"
}

応答パラメータ

応答は要求されたパラメータが更新されたjsonになります。 status フィールド付き 再起動が必要 ファームを再起動する必要がある場合は値。 変更を適用するには、再起動アクションを実行する必要があります。

バックエンドを修正する

バックエンドを修正する

リクエスト例:

 curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
  -d '{"ip":"192.168.0.10","port":88,"timeout":12,"service":"sev2", "weight":1}'
  https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/FarmHTTP/service/service1/backends/1

PUT /farms/<farmname>/services/<id>/backends/<id>

HTTPプロファイルのサービス内のバックエンドのパラメータを変更します。

id サービスの一意の識別子です。 id バックエンドの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
ポート 実際のサービスがリッスンしているバックエンドのポート。
タイムアウト 特定のリクエストに応答するためのバックエンドのタイムアウト(秒単位)です。
重量 これは、現在のバックエンドの重み値です。 可能な値は 1 〜へ 9.

応答例:

{
   "description" : "Modify service backend",
   "info" : "There're changes that need to be applied, stop and start farm to apply them!",
   "message" : "Backend modified",
   "params" : {
      "ip" : "192.168.0.10",
      "port" : 88,
      "timeout" : 12,
      "weight" : 1,
      "connection_limit" : null
   },
   "status" : "needed restart"
}

応答パラメータ

応答は要求されたパラメータが更新されたjsonになります。 status フィールド付き 再起動が必要 ファームを再起動する必要がある場合は値。 変更を適用するには、再起動アクションを実行する必要があります。

メンテナンス中のバックエンド

メンテナンス中のバックエンド

リクエスト例:

 curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
 -d '{"action":"maintenance","mode":"cut"}'
 https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/httpfarm/services/newsrv/backends/0/maintenance

PUT /farms/<farmname>/services/<id>/backends/<id>/maintenance

HTTPファームのバックエンドに特定のアクションを設定します。利用可能なアクションは以下で説明されています。

id サービスの一意の識別子です。 id バックエンドの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明 必須
アクション 文字列 希望する動作を設定します。 アクションは以下のとおりです。 up バックエンドはクライアントのリクエストを受け取る準備ができています。 メンテナンス バックエンドはクライアント要求を受信する準備ができていません。このアクションはクライアントに影響を与えずにバックエンドサーバーを停止するのに役立ちます。
モード 文字列 メンテナンスモードを選択してください。 利用可能なオプションは以下のとおりです。 ドレイン、バックエンドは新しい接続を受け入れませんが、現在の接続を引き続き処理します。 または cut現在の接続は閉じられます。 このフィールドが指定されていない場合、デフォルトモードは次のようになります。 ドレイン.

応答例:

{
   "description" : "Set service backend status",
   "params" : {
      "action" : "maintenance",
      "mode" : "cut"
   }
}

バックエンドを削除する

バックエンドを削除する

リクエスト例:

curl -k -X DELETE -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/newfarmHTTP/services/service1/backends/4

DELETE /farms/<farmname>/services/<id>/backends/<id>

HTTPプロファイルのサービス内の特定のバックエンドを削除します。

id サービスの一意の識別子です。 id バックエンドの一意の識別子です。

応答例:

{
   "description" : "Delete service backend",
   "message" : "Backend removed",
   "success" : "true"
}

L4xNATファーム

L4xNATプロファイルファームを使用すると、HTTPファームプロファイルのようにレイヤ4のロードバランサコアよりも非常に高いパフォーマンスとはるかに多くの同時接続を使用してL7ファームを作成できます。 そのレイヤー4パフォーマンスの向上は、レイヤー7プロファイルが管理できる高度なコンテンツ処理を妨げます。

さらに、L4xNATファームは、他のレイヤー7プロファイルで使用される4つの仮想ポートだけでなく、さまざまなポートをバインドできます。 LXNUMXxNATファームで仮想ポートの範囲または特定の仮想ポートを選択できるようにするには、プロトコルタイプを選択する必要があります。 それ以外の場合、ファームは仮想IP(文字「*」で示されます)からすべてのポートをリッスンします。 TCPまたはUDPプロトコルを選択すると、ポート、「、」の間の複数のポート、「:」の間のポート範囲、または「*」を含むすべてのポートを指定できるようになります。 それらすべての組み合わせも有効になります。

名前で農場を検索する

名前で農場を検索する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4farm

GET /farms/<farmname>

特定のファームに関するすべての構成を表示します。

レスポンスボディ:

{
   "backends" : [
      {
         "id" : 0,
         "ip" : "192.168.55.40",
         "priority" : 2,
         "status" : "undefined",
         "weight" : 1
      },
      {
         "id" : 1,
         "ip" : "192.168.55.41",
         "priority" : 3,
         "status" : "undefined",
         "weight" : 2
      }
   ],
   "description" : "List farm l4farm",
   "params" : {
      "algorithm" : "weight",
      "farmguardian" : "check_tcp",
      "listener" : "l4xnat",
      "nattype" : "nat",
      "protocol" : "tcp",
      "status" : "down",
      "vip" : "192.168.100.241",
      "vport" : "88"
   }
}

応答パラメータ

応答は以下の形式のJSONオブジェクトになります。

農場オブジェクト:

フィールド 種類 説明
paramsは オブジェクト ファーム構成のパラメータ。
バックエンド オブジェクト[] このファームで作成されたすべての実サーバーとその構成。

L4xNATファームのパラメータオブジェクト:

フィールド 種類 説明
アルゴリズム 文字列 ファームで使用されている負荷分散アルゴリズムの種類。 オプションは以下のとおりです。 重量 重量による接続線形発送、 ソースハッシュ 送信元IPおよび送信元ポートごとのハッシュ 単純なソースハッシュ ソースIPごとのハッシュのみ 対称ハッシュ IPとポートごとのラウンドトリップハッシュ。
リスナー 文字列 リスナーは、ファームがクライアントからの要求をどのように処理するかを定義します。 情報フィールド、変更できません。
ナタイプ 文字列 ロードバランサレイヤ4コアの動作方法 オプションは以下のとおりです。 NAT sNATモードとも呼ばれ、バックエンドはクライアントに応答を送信するためにロードバランサーに応答します。 DNAT バックエンドはクライアントに直接応答します。ロードバランサーはバックエンドサーバーのゲートウェイとして設定する必要があります。 DSR サーバーに直接戻り、ロードバランサーは宛先MACを変更し、応答は直接クライアントに送信されます。
文字列 レイヤ4でバランスをとるためのプロトコル。 オプションは以下のとおりです。 プロファイルは任意のL4プロトコルを負荷分散します。 TCP ロードバランサはTCP L4プロトコルのみのバランスをとります。 UDP ロードバランサはUDP L4プロトコルのみのバランスをとります。 一口 ロードバランサは、SIPまたはVoIP L7プロトコルのバランスをとるだけです。 FTP ロードバランサはFTP L7プロトコルのバランスをとるだけです。 tftp ロードバランサはTFTP L7プロトコルのみのバランスをとります。 sctp ロードバランサはSCTP L4プロトコルのみのバランスをとります。 アマンダ ロードバランサはAMANDA L7プロトコルのバランスをとるだけです。 h323 ロードバランサはH323 L7プロトコルのみのバランスをとります。 IRC ロードバランサーはIRC L7プロトコルのみのバランスをとります。 NetBIOS-ns ロードバランサーはNETBIOS-NSプロトコルのバランスをとるだけです。
status 文字列 農場の状況 使用可能な状況値は以下のとおりです。 ダウンファームが稼働していません。 再起動が必要ファームは稼働していますが、再起動アクションが保留中です。 重大なファームが稼働しており、すべてのバックエンドにアクセスできない、またはメンテナンス中です。 問題ファームは稼働しており、到達不能なバックエンドがいくつかありますが、ほとんどのバックエンドが稼働中です。 メンテナンス、ファームは稼働しており、稼働中のバックエンドがありますが、ほとんどのバックエンドはメンテナンスモードです。 up、農場は稼働しており、すべてのバックエンドは成功しています。
VIP 文字列 仮想サービスが待機しているファームのIP。
vport 文字列 仮想サービスが待機しているファームのポート。 一意のポートを指定でき、範囲ポートは区切り文字を使って指定できます : そしていくつかのポートはセパレータで指定できます ,.
農家 文字列 バックエンドのステータスをチェックしているのはFarmGuardian名です。 FarmGuardianは、ファームが稼働中の間も稼働しています。

L4xNATファームのバックエンドオブジェクト:

フィールド 種類 説明
id ファーム内のバックエンドを識別するためのID。
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 メンテナンス、バックエンドは、管理者によって接続を受信する準備ができていないものとしてマークされています。このオプションは、バックエンドのメンテナンスタスクに役立ちます。 未定義バックエンドのステータスはチェックされていません。
優先順位 これは現在の実サーバーの優先順位の値です。 1が最も優先順位が高く、9が最も優先順位が低い場合に、常に最も優先度の高いものへの接続。
重量 これは、現在の実サーバーの重み値です。 重みが大きいバックエンドは、より多くの接続を受け取ります。 可能な値は 1 〜へ 9.

新しい農場を作る

新しい農場を作る

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"profile":"l4xnat", "vip":"192.168.100.241", "vport":"88","farmname":"newl4farm"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms

POST /farms

新しいL4xNATファームを作成します。

リクエストパラメータ

フィールド 種類 説明 必須
農場名 文字列 ファーム名、一意の識別子 true
プロフィール 文字列 作成したファームのプロフィール。 L4xNATファームの場合 l4xnat、情報メッセージ、この値は変更できません true
VIP 文字列 仮想サービスが待機しているファームのIP。 true
vport 文字列 仮想サービスが待機しているファームのポート。 L4xNATファームでは、で区切られたマルチポートが可能です。 , またはで区切られた範囲ポート :. true

応答例:

{
   "description" : "Creating farm 'newl4farm'",
   "params" : {
      "farmname" : "newl4farm",
      "interface" : "eth0",
      "profile" : "l4xnat",
      "vip" : "192.168.100.241",
      "vport" : "88"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

農場を変更する

農場を変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"algorithm":"weight","newfarmname":"l4farm", "protocol":"tcp",
"nattype":"nat","vip":"178.62.126.152","vport":"81"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/newfarml4

PUT /farms/<farmname>

L4xNATファームの構成を変更します。

リクエストパラメータ

フィールド 種類 説明
newfarmname 文字列 新しいファームの名前。 農場はそれを止めなければなりません。
アルゴリズム 文字列 ファームで使用されている負荷分散アルゴリズムの種類。 オプションは以下のとおりです。 重量 重量による接続線形発送、 ソースハッシュ 送信元IPおよび送信元ポートごとのハッシュ 単純なソースハッシュ ソースIPごとのハッシュのみ 対称ハッシュ IPとポートごとのラウンドトリップハッシュ。
ナタイプ 文字列 ロードバランサレイヤ4コアの動作方法 オプションは以下のとおりです。 NAT sNATモードとも呼ばれ、バックエンドはクライアントに応答を送信するためにロードバランサーに応答します。 DNAT バックエンドはクライアントに直接応答します。ロードバランサーはバックエンドサーバーのゲートウェイとして設定する必要があります。 DSR サーバーに直接戻り、ロードバランサーは宛先MACを変更し、応答は直接クライアントに送信されます。
文字列 レイヤ4でバランスをとるためのプロトコル。 オプションは以下のとおりです。 プロファイルは任意のL4プロトコルを負荷分散します。 TCP ロードバランサはTCP L4プロトコルのみのバランスをとります。 UDP ロードバランサはUDP L4プロトコルのみのバランスをとります。 一口 ロードバランサは、SIPまたはVoIP L7プロトコルのバランスをとるだけです。 FTP ロードバランサはFTP L7プロトコルのバランスをとるだけです。 tftp ロードバランサはTFTP L7プロトコルのみのバランスをとります。 sctp ロードバランサはSCTP L4プロトコルのみのバランスをとります。 アマンダ ロードバランサはAMANDA L7プロトコルのバランスをとるだけです。 h323 ロードバランサはH323 L7プロトコルのみのバランスをとります。 IRC ロードバランサーはIRC L7プロトコルのみのバランスをとります。 NetBIOS-ns ロードバランサーはNETBIOS-NSプロトコルのみのバランスを取ります。 PPTP ロードバランサーは、H323L7プロトコルのみのバランスを取ります。
VIP 文字列 仮想サービスが待機しているファームのIP。
vport 文字列 仮想サービスが待機しているファームのポート。 一意のポートを指定でき、範囲ポートは区切り文字を使って指定できます : そしていくつかのポートはセパレータで指定できます ,.

応答例:

{
   "description" : "Modify farm l4farm",
   "params" : {
      "algorithm" : "weight",
      "nattype" : "nat",
      "newfarmname" : "l4farm",
      "protocol" : "tcp",
      "vip" : "178.62.126.152",
      "vport" : "81"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

FarmGuardianを追加

FarmGuardianを追加

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"name":"check_tcp-cut_conns"}' https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4Farm/fg

POST /farms/<farmname>/fg

FarmGuardianを農場に適用します。

リクエストパラメータ

フィールド 種類 説明
文字列 FarmGuardianの固有ID。 FarmGuardiansは監視セクションで作成および修正されます。

応答例:

{
   "description" : "Add the farm guardian check_tcp-cut_conns to the farm fgl4",
   "message" : "Success, The farm guardian check_tcp-cut_conns was added to the farm fgl4"
}

FarmGuardianを削除します。

FarmGuardianを削除します。

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4Farm/fg/check_tcp-cut_conns

DELETE /farms/<farmname>/fg/<name>

ファームからFarmGuardianを削除します。

応答例:

{
   "description" : "Remove the farm guardian check_tcp-cut_conns from the farm fgl4",
   "message" : "Sucess, check_tcp-cut_conns was removed from the farm fgl4"
}

L4xNAT - バックエンド

バックエンドを一覧表示する

バックエンドを一覧表示する

リクエスト例:

curl  -k -X GET -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4farm/backends

GET /farms/<farmname>/backends

サービス内のバックエンドのリストを取得します。

応答例:

{
   "description" : "List backends",
   "params" : [
      {
         "id" : 0,
         "ip" : "192.5.1.1",
         "priority" : 1,
         "status" : "up",
         "weight" : 1
      },
      {
         "id" : 1,
         "ip" : "192.5.1.3",
         "priority" : 2,
         "status" : "up",
         "weight" : 1
      },
   ]
}

応答パラメータ

この呼び出しは、以下のパラメータを持つバックエンドオブジェクトの配列を返します。

フィールド 種類 説明
id ファーム内のバックエンドを識別するためのID。
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 メンテナンス、バックエンドは、管理者によって接続を受信する準備ができていないものとしてマークされています。このオプションは、バックエンドのメンテナンスタスクに役立ちます。 未定義バックエンドのステータスはチェックされていません。
優先順位 これは現在の実サーバーの優先順位の値です。 1が最も優先順位が高く、9が最も優先順位が低い場合に、常に最も優先度の高いものへの接続。
重量 これは、現在の実サーバーの重み値です。 重みが大きいバックエンドは、より多くの接続を受け取ります。 可能な値は 1 〜へ 9.

新しいバックエンドを作成する

新しいバックエンドを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.5.100"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4farm/backends

POST /farms/<farmname>/backends

所定のL4xNATファームに新しいバックエンドを作成します。

リクエストパラメータ

フィールド 種類 説明 必須
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。 true
優先順位 これは現在の実サーバーの優先順位の値です。 1が最も優先順位が高く、9が最も優先順位が低い場合に、常に最も優先度の高いものへの接続。
重量 これは、現在の実サーバーの重み値です。 重みが大きいバックエンドは、より多くの接続を受け取ります。 可能な値は 1 〜へ 9.

応答例:

{
   "description" : "New farm backend",
   "message" : "Backend added",
   "params" : {
      "id" : 5,
      "ip" : "192.168.5.100",
      "priority" : null,
      "weight" : null
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

バックエンドを修正する

バックエンドを修正する

リクエスト例:

 curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
  -d '{"ip":"192.168.5.40","priority":4,"weight":7}'
  https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4farm/backends/2

PUT /farms/<farmname>/backends/<id>

L4xNATファームのサービスでバックエンドのパラメータを変更します。 id バックエンドの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
優先順位 これは現在の実サーバーの優先順位の値です。 1が最も優先順位が高く、9が最も優先順位が低い場合に、常に最も優先度の高いものへの接続。
重量 これは、現在の実サーバーの重み値です。 重みが大きいバックエンドは、より多くの接続を受け取ります。 可能な値は 1 〜へ 9.

応答例:

{
   "description" : "Modify backend",
   "message" : "Backend modified",
   "params" : {
      "ip" : "192.168.5.40",
      "priority" : 4,
      "weight" : 7
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

メンテナンス中のバックエンド

メンテナンス中のバックエンド

リクエスト例:

 curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
 -d '{"action":"maintenance","mode":"cut"}'
 https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4farm/backends/1/maintenance

PUT /farms/<farmname>/backends/<id>/maintenance

L4xNATファームのバックエンドに特定のアクションを設定します。 id バックエンドの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明
アクション 文字列 希望する動作を設定します。 アクションは以下のとおりです。 up バックエンドはクライアントのリクエストを受け取る準備ができています。 メンテナンス バックエンドはクライアント要求を受信する準備ができていません。このアクションはクライアントに影響を与えずにバックエンドサーバーを停止するのに役立ちます。
モード 文字列 メンテナンスモードを選択してください。 利用可能なオプションは以下のとおりです。 ドレイン、バックエンドは新しい接続を受け入れませんが、現在の接続を引き続き処理します。 または cut現在の接続は閉じられます。

応答例:

{
   "description" : "Set backend status",
   "params" : {
      "action" : "maintenance",
      "mode" : "cut"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

バックエンドを削除する

バックエンドを削除する

リクエスト例:

curl -k -X DELETE -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/farms/l4farm/backends/4

DELETE /farms/<farmname>/backends/<id>

L4xNATファームのサービス内の特定のバックエンドを削除します。

id バックエンドの一意の識別子です。

応答例:

{
   "description" : "Delete backend",
   "message" : "Backend removed",
   "success" : "true"
}

ネットワーク

Zevenetはさまざまな種類のネットワークインターフェースで動作します。

このセクションでは、NIC、VLAN、および仮想インターフェースのアクションを一覧表示、作成、設定、削除、および設定できます。

NIC:またはネットワークインターフェースカード、これはコンピュータハードウェアコンポーネントであり、この種のインターフェースはZevenetで定義および管理できる次の種類のインターフェースの基盤となります。

VLAN仮想LANカードは、ネットワークセグメンテーションサービスを提供する種類またはネットワークインタフェースです。 nicインタフェースを介して複数のvlanを作成できます。

バーチャル:この種のインタフェースは、上で説明したどの種類のインタフェース上でも作成できます。 この種のインターフェイスはファームに使用する必要があり、仮想インターフェイスは親と同じサブネットに定義されている必要があります。

すべてのインターフェースを一覧表示する

すべてのインターフェースを一覧表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/nic

GET /interfaces

システム内のインターフェースとその構成のリストを入手してください。

応答例:

{
   "description" : "List interfaces",
   "interfaces" : [
      {
         "gateway" : "192.168.100.5",
         "has_vlan" : "true",
         "ip" : "192.168.100.241",
         "mac" : "c2:56:f6:54:ff:a0",
         "name" : "eth0",
         "netmask" : "255.255.255.0",
         "status" : "up",
         "type" : "nic"
      },
      {
         "gateway" : "192.168.120.1",
         "ip" : "192.168.120.120",
         "mac" : "c2:56:f6:54:ff:a0",
         "name" : "eth0.1",
         "netmask" : "255.255.255.0",
         "status" : "down",
         "type" : "vlan"
      },
      {
         "gateway" : "",
         "ip" : "192.168.100.155",
         "mac" : "c2:56:f6:54:ff:a0",
         "name" : "eth0:virt",
         "netmask" : "255.255.255.0",
         "status" : "up",
         "type" : "virtual"
      },
      {
         "gateway" : "192.168.100.5",
         "has_vlan" : "false",
         "ip" : "192.168.100.102",
         "mac" : "62:30:43:36:29:ac",
         "name" : "eth1",
         "netmask" : "255.255.255.0",
         "status" : "up",
         "type" : "nic"
      }
   ]
}

応答パラメータ

応答は、インターフェースオブジェクト配列を持つJSONオブジェクトになります。

インタフェースオブジェクト

フィールド 種類 説明
ip 文字列 インターフェイスのIP IPは仮想インタフェースの親インタフェースと同じネットワークセグメントになければなりません。
has_vlan 文字列 trueそれがVLANインタフェースの親であるインタフェース。 または false、インターフェイスはそれを追加するVLANインターフェイスを持っていません。 このフィールドはNICインターフェイス専用です。
ネットマスク 文字列 インターフェイスのネットマスク。 この値は仮想インタフェースでは変更できませんでした。親インタフェースから継承されます。
ゲートウェイ 文字列 インタフェースのゲートウェイ この値は仮想インタフェースでは変更できませんでした。親インタフェースから継承されます。
MAC 文字列 インターフェイスのMAC この値は親インターフェースから継承されます。
文字列 インターフェイスの名前。 一意の識別子として使用されます。
status 文字列 値は upインターフェイスはパケットを受信できます。 ダウン、インターフェイスはパケットを受信できません。
type 文字列 異なる種類のインタフェースは次のとおりです。 NIC, VLAN or バーチャル.

デフォルトゲートウェイを取得する

デフォルトゲートウェイを取得する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/gateway/ipv4

GET /interfaces/gateway/<ip_version>

デフォルトゲートウェイは、ロードバランサのどのインタフェースからもローカルに到達できないすべての宛先トラフィックを送信するノードです。

デフォルトゲートウェイインタフェースのパラメータを取得します。

システムは2つのゲートウェイを構成しています。1つはIPv64をルーティングするため、もう1つはIPv66をルーティングするためです。 URIはIPバージョンを想定しています ipv4 or ipv6.

応答例:

{
   "description" : "Default gateway",
   "params" : {
      "address" : "192.168.100.5",
      "interface" : "eth0"
   }
}

応答パラメータ

フィールド 種類 説明
住所 文字列 ゲートウェイのIPです。
インタフェース 文字列 ゲートウェイのインターフェイス名

デフォルトゲートウェイを変更する

デフォルトゲートウェイを変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"interface":"eth0","address":"192.168.100.5"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/gateway/ipv4

PUT /interfaces/gateway/<ip_version>

ゲートウェイインターフェイスの設定を変更します。

URIはアドレスフィールドで使用されるIPバージョンを期待します。 可能な値は ipv4 and ipv6.

応答例:

{
   "description" : "Modify default gateway",
   "message" : "The default gateway has been changed successfully",
   "success" : "true"
}

リクエストパラメータ

フィールド 種類 説明
住所 文字列 ゲートウェイのIPです。
インタフェース 文字列 ゲートウェイのインターフェイス名

ゲートウェイ構成を削除する

DELETE /interfaces/gateway/<ip_version>

デフォルトゲートウェイ設定の設定を削除します。

URIは、デフォルトゲートウェイの1つのIPバージョンを削除することを期待しています。 可能な値は ipv4 and ipv6.

警告:ゲートウェイが設定解除されている場合、Zevenetは外部ネットワークセグメントから到達可能にはなりません

ゲートウェイ構成を削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/gateway/ipv4

応答メッセージ

ゲートウェイが同じネットワークセグメントから構成解除されている場合、このメッセージが表示されます。それ以外の場合、接続は失われます。

応答例:

{
   "description" : "Remove default gateway",
   "message" : "The default gateway has been deleted successfully",
   "params" : {
      "address" : null,
      "interface" : null
   }
}

ネットワーク - NICインターフェース

NICインターフェースは、Zevenetロードバランサーに接続されている物理インターフェースです。

新しいインタフェースが接続されると、システムは自動的にそれらを認識します。

親としてNICインターフェースを使用して、異なる特性を持つ他のタイプのインターフェースを作成できます。 利用可能なインタフェースは次のとおりです。 VLAN and バーチャル.

NICインタフェースの一覧表示

GET /interfaces/nic

NICインターフェースのすべてのパラメーターを入手してください。

NICインタフェースの一覧表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/nic

応答例:

{
   "description" : "List NIC interfaces",
   "interfaces" : [
      {
         "gateway" : "192.168.100.5",
         "has_vlan" : "true",
         "ip" : "192.168.100.241",
         "is_slave" : "false",
         "mac" : "c2:56:f6:54:ff:a0",
         "name" : "eth0",
         "netmask" : "255.255.255.0",
         "status" : "up"
      },
      {
         "gateway" : "192.168.100.5",
         "has_vlan" : "false",
         "ip" : "192.168.100.102",
         "mac" : "62:30:43:36:29:ac",
         "name" : "eth1",
         "netmask" : "255.255.255.0",
         "status" : "up"
      }
   ]
}

応答パラメータ

応答は、NICインターフェースオブジェクトの配列を持つJSONオブジェクトになります。

NICインタフェースオブジェクト

フィールド 種類 説明
ip 文字列 インターフェイスのIP
has_vlan 文字列 trueそれがVLANインタフェースの親であるインタフェース。 または false、インターフェイスはそれを追加するVLANインターフェイスを持っていません。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 パケットを別のネットワークセグメントに送信するために使用されるIP。
MAC 文字列 リンク層の一意の識別子。 それは修正不可能です。
文字列 インターフェイスの名前。 インターフェイスの一意の識別子として使用されます。
status 文字列 値は upインターフェイスはパケットを受信できます。 ダウン、インターフェイスはパケットを受信できません。

NICインターフェースを取得する

NICインターフェースを取得する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/nic/eth1

GET /interfaces/nic/<name>

NICインターフェースのすべてのパラメーターを入手してください。 インターフェースの固有IDです。

応答例:

{
   "description" : "Show NIC interface",
   "interface" : {
      "gateway" : "192.168.100.5",
      "ip" : "192.168.100.102",
      "mac" : "62:30:43:36:29:ac",
      "name" : "eth1",
      "netmask" : "255.255.255.0",
      "status" : "up"
   }
}

応答パラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 パケットを別のネットワークセグメントに送信するために使用されるIP。
MAC 文字列 リンク層の一意の識別子。 それは修正不可能です。
文字列 インターフェイスの名前。 インターフェイスの一意の識別子として使用されます。
status 文字列 値は upインターフェイスはパケットを受信できます。 ダウン、インターフェイスはパケットを受信できません。
type 文字列 異なる種類のインタフェースは次のとおりです。 NIC, VLAN or バーチャル。 それぞれがネットワークサブメニューで定義されています。

NICインターフェースを変更する

NICインターフェースを変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.100.102","netmask":"255.255.255.0","gateway":"192.168.100.5"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/nic/eth1

PUT /interfaces/nic/<name>

NICインターフェースのパラメーターを変更します。 インターフェースの固有IDです。

リクエストパラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。
文字列 ファームがインターフェイスを使用している場合、インターフェイスを変更することはできません。 次に、このパラメータが値とともに送信された場合 trueインターフェイスが新しい設定を使用するように強制され、インターフェイスを使用しているすべてのファームが再起動されます。

応答例:

{
   "description" : "Configure nic interface",
   "params" : {
      "gateway" : "192.168.100.5",
      "ip" : "192.168.100.102",
      "netmask" : "255.255.255.0",
      "force" : "true"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

NIC設定を削除する

NIC設定を削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/nic/eth3

DELETE /interfaces/nic/<name>

NICインターフェースの設定を削除します。 この操作の後、インターフェースは役に立たなくなり、再度設定する準備が整います。 インターフェースの固有IDです。

応答例:

{
   "description" : "Delete nic interface",
   "message" : "The configuration for the network interface eth3 has been deleted.",
   "success" : "true"
}

NICインターフェース設定アクション

NICインターフェース設定アクション

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"action":"down"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/nic/eth1/actions

POST /interfaces/nic/<name>/actions

NICインターフェースにアクションを適用します。 この呼び出しはネットワークインターフェースを有効または無効にします。

インターフェースの固有IDです。

リクエストパラメータ

フィールド 種類 説明 必須
アクション 文字列 インターフェイスに適用するアクション 利用可能な値は以下のとおりです。 upインターフェイスを有効にして使用できるように準備します。 ダウンパケットを送受信しないようにインターフェイスを無効にします。 true

応答例:

{
   "description" : "Action on nic interface",
   "params" : {
      "action" : "up"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

ネットワーク - VLANインタフェース

VLANインタフェースを使用すると、NICインタフェースを別のネットワークで機能させることができます。 IP, ゲートウェイ and ネットマスク フィールドは親インターフェースとは異なる可能性があります。 VLANインターフェイスは、その親インターフェイスからMACアドレスを継承します。

VLANインターフェースフィールド VLANインターフェイスのIDタグを確立するために使用されるドット「。」文字で表示されます。

VLANインタフェースの一覧表示

VLANインタフェースの一覧表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/vlan

GET /interfaces/vlan

VLANインタフェースの全パラメータを取得します。

応答例:

{
   "description" : "List VLAN interfaces",
   "interfaces" : [
      {
         "gateway" : "192.168.120.1",
         "ip" : "192.168.120.120",
         "mac" : "c2:56:f6:54:ff:a0",
         "name" : "eth0.1",
         "netmask" : "255.255.255.0",
         "parent" : "eth0",
         "status" : "down"
      }
   ]
}

応答パラメータ

応答は、VLANインターフェースオブジェクト配列を持つJSONオブジェクトになります。

VLANパラメータは次のとおりです。

フィールド 種類 説明
ip 文字列 インターフェイスのIP それは親インタフェースIPとは異なる場合があります。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。
MAC 文字列 インターフェイスのMAC この値は親インターフェースから継承されます。
文字列 インターフェイスの名前。 一意の識別子として使用されます。 この名前は、親インターフェイス名であるドット文字「。」でフォーマットされたチェーンです。 およびvlanネットワークインターフェイスまたはvlanタグの番号。
文字列 これを作成するために使用されるインタフェースです。
status 文字列 値は up インターフェイスはパケットを受信できます。 ダウン インターフェイスはパケットを受信できません。

VLANインタフェースを取得する

VLANインタフェースを取得する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/vlan/eth0.1

GET /interfaces/vlan/<name>

VLANインタフェースのすべてのパラメータを取得します。 インターフェースの固有IDです。

応答例:

{
   "description" : "Show VLAN interface",
   "interface" : {
      "gateway" : "192.168.131.1",
      "ip" : "192.168.131.155",
      "mac" : "c2:56:f6:54:ff:a0",
      "name" : "eth0.1",
      "netmask" : "255.255.255.0",
      "status" : "up"
   }
}

応答パラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。
MAC 文字列 インターフェイスのMAC この値は親インターフェースから継承されます。
文字列 インターフェイスの名前。 一意の識別子として使用されます。 この名前は、親インターフェイス名であるドット文字「。」でフォーマットされたチェーンです。 およびVLANネットワークインターフェイスの番号。
status 文字列 値は up インターフェイスはパケットを受信できます。 ダウン インターフェイスはパケットを受信できません。

VLANインタフェースを作成する

VLANインタフェースを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.120.120","netmask":"255.255.255.0","gateway":"192.168.120.1", "name":"eth0.1"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/vlan

POST /interfaces/vlan

NICインターフェースからVLANインターフェースを作成します。 次のネットワークパラメータは異なる必要がありますが、新しいVLANインタフェースはMACを共有します。 ipそして、以下が変わる可能性があります。 ゲートウェイ, ネットマスク.

リクエストパラメータ

フィールド 種類 説明 必須
ip 文字列 インターフェイスのIP これは、親インタフェースIPとは異なる必要があります。 true
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。 true
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。 true
文字列 インターフェイスの名前。 一意の識別子として使用されます。 この名前は、親インターフェイス名であるドット文字「。」でフォーマットされたチェーンです。 およびVLANネットワークインターフェイスの番号。 true

応答例:

{
   "description" : "Add a vlan interface",
   "params" : {
      "gateway" : "192.168.120.1",
      "ip" : "192.168.120.120",
      "mac" : null,
      "name" : "eth0.1",
      "netmask" : "255.255.255.0"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

VLANインタフェースを変更する

VLANインタフェースを変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.131.155","netmask":"255.255.255.0","gateway":"192.168.131.1"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/vlan/eth0.1

PUT /interfaces/vlan/<name>

VLANインタフェースのパラメータを変更します。 インターフェースの固有IDです。

リクエストパラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP それは親インタフェースIPとは異なる場合があります。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。
文字列 ファームがインターフェイスを使用している場合、インターフェイスを変更することはできません。 次に、このパラメータが値とともに送信された場合 trueインターフェイスが新しい設定を使用するように強制され、インターフェイスを使用しているすべてのファームが再起動されます。

応答例:

{
   "description" : "Modify VLAN interface",
   "params" : {
      "gateway" : "192.168.131.1",
      "ip" : "192.168.131.155",
      "netmask" : "255.255.255.0",
      "force" : "true",
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

VLANインタフェースを削除

VLANインタフェースを削除

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/vlan/eth0.1

DELETE /interfaces/vlan/<name>

VLANインタフェースを削除します。 インターフェースの固有IDです。

応答例:

{
   "description" : "Delete VLAN interface",
   "message" : "The VLAN interface eth0.1 has been deleted.",
   "success" : "true"
}

VLANインタフェース設定アクション

VLANインタフェース設定アクション

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"action":"down"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/vlan/eth0.1/actions

POST /interfaces/vlan/<name>/actions

VLANインターフェイスにアクションを適用します。 この呼び出しはネットワークインターフェースを有効または無効にします。

名前の一意の識別子です。

リクエストパラメータ

フィールド 種類 説明 必須
アクション 文字列 インターフェイスに適用するアクション 利用可能な値は以下のとおりです。 upインターフェイスを有効にして使用できるように準備します。 ダウンパケットを送受信しないようにインターフェイスを無効にします。 true

応答例:

{
   "description" : "Action on vlan interface",
   "params" : {
      "action" : "down"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

ネットワーク - 仮想インタフェース

ネットワークインタフェースを使用すると、ユーザーは親と同じネットワークセグメントに別のネットワークインタフェースを持つことができるため、仮想インタフェースは常に親からネットワーク構成を継承します。 別のパラメータは ip。 仮想インタフェースは、NICまたはVLANから作成できます。 新しい仮想インタフェースを作成すると、仮想インタフェースの識別を確立するために使用されるコロン「:」文字を含むフィールドが表示されます。

仮想インタフェースの一覧表示

仮想インタフェースの一覧表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/virtual

GET /interfaces/virtual

仮想インタフェースの全パラメータを取得します。

応答例:

{
   "description" : "List virtual interfaces",
   "interfaces" : [
      {
         "gateway" : "",
         "ip" : "192.168.100.155",
         "mac" : "c2:56:f6:54:ff:a0",
         "name" : "eth0:virt",
         "netmask" : "255.255.255.0",
         "parent" : "eth0",
         "status" : "up"
      },
      {
         "gateway" : "192.168.100.5",
         "ip" : "192.168.100.41",
         "mac" : "c2:56:f6:54:ff:a0",
         "name" : "eth0:virtiface",
         "netmask" : "255.255.255.0",
         "parent" : "eth0",
         "status" : "down"
      }
   ]
}

応答パラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP IPは、親インターフェイスと同じネットワークセグメントになければなりません。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。 親インターフェースから継承します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。 親インターフェースから継承します。
MAC 文字列 インターフェイスのMAC 親インターフェースから継承します。
文字列 インターフェイスの名前。 一意の識別子として使用されます。 この名前は、親インターフェイス、コロン文字「:」、および仮想ネットワークインターフェイスの名前でフォーマットされたチェーンであり、英数字を使用できます。
文字列 これを作成するために使用されるインタフェースです。
status 文字列 値は upインターフェイスはパケットを受信できます。 ダウン、インターフェイスはパケットを受信できません。

仮想インターフェースを取得する

仮想インターフェースを取得する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/virtual/eth0:virtiface

GET /interfaces/virtual/<name>

仮想インタフェースのすべてのパラメータを取得します。 インターフェースの固有IDです。

応答例:

{
   "description" : "Show virtual interface",
   "interface" : {
      "gateway" : "192.168.100.5",
      "ip" : "192.168.100.41",
      "mac" : "c2:56:f6:54:ff:a0",
      "name" : "eth0:virtiface",
      "netmask" : "255.255.255.0",
      "status" : "down"
   }
}

応答パラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP IPは、親インターフェイスと同じネットワークセグメントになければなりません。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。 親インターフェースから継承します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。 親インターフェースから継承します。
MAC 文字列 インターフェイスのMAC 親インターフェースから継承します。
文字列 インターフェイスの名前。 一意の識別子として使用されます。 この名前は、親インターフェイス、コロン文字「:」、および仮想ネットワークインターフェイスの英数字文字列でフォーマットされたチェーンです。
文字列 これを作成するために使用されるインタフェースです。
status 文字列 値は upインターフェイスはパケットを受信できます。 ダウン、インターフェイスはパケットを受信できません。

仮想インタフェースを作成する

仮想インタフェースを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.100.41", "name":"eth0:virtiface"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/virtual

POST /interfaces/virtual

仮想インタフェースを作成します。

リクエストパラメータ

フィールド 種類 説明 必須
ip 文字列 インターフェイスのIP IPは、親インターフェイスと同じネットワークセグメントになければなりません。 true
文字列 インターフェイスの名前。 一意の識別子として使用されます。 この名前は、親インターフェイス、コロン文字「:」、および仮想ネットワークインターフェイスの英数字文字列でフォーマットされたチェーンです。 true

応答例:

{
   "description" : "Add a virtual interface",
   "params" : {
      "gateway" : "192.168.100.5",
      "ip" : "192.168.100.41",
      "mac" : "c2:56:f6:54:ff:a0",
      "name" : "eth0:virtiface",
      "netmask" : "255.255.255.0"
   }
}

応答パラメータ

応答はインターフェース構成を持つJSONになります。 詳しくは、応答例を参照してください。

フィールド 種類 説明
ip 文字列 インターフェイスのIP IPは、親インターフェイスと同じネットワークセグメントになければなりません。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。 親インターフェースから継承します。
ゲートウェイ 文字列 パケットを別のネットワークセグメントに送信するために使用されるIP。 親インターフェースから継承します。
MAC 文字列 インターフェイスのMAC 親インターフェースから継承します。
文字列 インターフェイスの名前。 一意の識別子として使用されます。 この名前は、親インターフェイス、コロン文字「:」、および仮想ネットワークインターフェイスのアルファ数値文字列でフォーマットされたチェーンです。

仮想インタフェースを変更する

仮想インタフェースを変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.131.155"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/virtual/eth0:virtiface

PUT /interfaces/virtual/<name>

仮想インタフェースのパラメータを変更します。 インターフェースの固有IDです。

リクエストパラメータ

フィールド 種類 説明 の提出が必要です
ip 文字列 インターフェイスのIP IPは、親インターフェイスと同じネットワークセグメントになければなりません。 true
文字列 ファームがインターフェイスを使用している場合、インターフェイスを変更することはできません。 次に、このパラメータが値とともに送信された場合 trueインターフェイスが新しい設定を使用するように強制され、インターフェイスを使用しているすべてのファームが再起動されます。

応答例:

{
   "description" : "Modify virtual interface",
   "params" : {
      "ip" : "192.168.100.10",
      "force" : "true"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

仮想インタフェースを削除

仮想インタフェースを削除

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/virtual/eth0:virtiface

DELETE /interfaces/virtual/<name>

仮想インタフェースを削除します。 インターフェースの固有IDです。

応答例:

{
   "description" : "Delete virtual interface",
   "message" : "The virtual interface eth0:virtiface has been deleted.",
   "success" : "true"
}

仮想インタフェースアクションの設定

仮想インタフェースアクションの設定

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"action":"down"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/interfaces/virtual/eth0:virtiface/actions

POST /interfaces/virtual/<name>/actions

仮想インターフェースにアクションを適用します。 この呼び出しはネットワークインターフェースを有効または無効にします。

インターフェースの固有IDです。

リクエストパラメータ

フィールド 種類 説明 必須
アクション 文字列 インターフェイスに適用するアクション 利用可能な値は以下のとおりです。 upインターフェイスを有効にして使用できるように準備します。 ダウンパケットを送受信しないようにインターフェイスを無効にします。 true

応答例:

{
   "description" : "Action on virtual interface",
   "params" : {
      "action" : "down"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

モニタリング - FarmGuardian

FarmGuardianはバックエンドの状態を詳細に監視するために使用されます。 FarmGuardianによって問題が検出されると、自動的に実サーバーが無効になり、ブラックリストに登録されます。

FarmGuardiansのリスト

FarmGuardiansのリスト

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/monitoring/fg

GET /monitoring/fg

FarmGuardiansをリストしてください。 テンプレートと使用可能なFarmGuardianがリストに表示されます。

応答例:

{
   "description" : "List farm guardian checks and templates",
   "params" : [
      {
         "command" : "check_tcp -p PORT -H HOST",
         "cut_conns" : "false",
         "description" : "It does a TCP connection to test if the backend is alive",
         "farms" : [],
         "interval" : 5,
         "log" : "false",
         "name" : "check_tcp-cut_conns",
         "template" : "true"
      },
      {
         "command" : "check_tcp -p 80 -H HOST",
         "cut_conns" : "false",
         "description" : "TCP check to the port 80",
         "farms" : [
                     "web_service",
                     "my_welcome_web"
         ],
         "interval" : 7,
         "log" : "true",
         "name" : "custom-tcp",
         "template" : "false"
      },
      {
         "command" : "check_tcp -p PORT -H HOST",
         "cut_conns" : "false",
         "description" : "It does a TCP connection to test if the backend is alive",
         "farms" : [],
         "interval" : 5,
         "log" : "false",
         "name" : "check_tcp",
         "template" : "true"
      }
   ]
}

応答パラメータ

応答はキーを持つJSONオブジェクトになります。 paramsは そして以下のフォーマット:

フィールド 種類 説明
command 文字列 バックエンドでサービスの状態を確認するためのコマンド。 利用可能なコマンドはlibexecパスにあります。
cut_conns 文字列 可能な値は次のとおりです。 trueバックエンドが利用できない場合、FarmGuardianは現在の接続を切断します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
説明 文字列 小切手についての簡単な説明。
農場 String [] FarmGuardianが適用されている農場。
インターバル チェック間の時間
ログ 文字列 可能な値は次のとおりです。 trueFarmGuardianは各小切手を記録します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
文字列 一意の識別子
template 文字列 FarmGuardianがテンプレートの場合、どのファームにも適用されません。 テンプレートは、新しいFarmGuardianを作成するのに役立ちます。

FarmGuardianを取得する

FarmGuardianを取得する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/monitoring/fg/check_tcp

GET /monitoring/fg/<name>

FarmGuardianの構成を表示します。

URIパラメータ FarmGuardianの固有IDです。

応答例:

{
   "description" : "Retrive the farm guardian check_tcp",
   "params" : {
      "command" : "check_tcp -p PORT -H HOST",
      "cut_conns" : "false",
      "description" : "It does a TCP connection to test if the backend is alive",
      "farms" : [],
      "interval" : 5,
      "log" : "false",
      "name" : "check_tcp",
      "template" : "true"
   }
}

応答パラメータ

応答はキーを持つJSONオブジェクトになります。 paramsは そして以下のフォーマット:

フィールド 種類 説明
command 文字列 バックエンドでサービスの状態を確認するためのコマンド。 利用可能なコマンドはlibexecパスにあります。
cut_conns 文字列 可能な値は次のとおりです。 trueバックエンドが利用できない場合、FarmGuardianは現在の接続を切断します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
説明 文字列 小切手についての簡単な説明。
農場 String [] FarmGuardianが適用されている農場。
インターバル チェック間の時間
ログ 文字列 可能な値は次のとおりです。 trueFarmGuardianは各小切手を記録します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
文字列 一意の識別子
template 文字列 FarmGuardianがテンプレートの場合、変更されません。 テンプレートは、新しいFarmGuardianを作成したり、ファームに直接適用したりするのに役立ちます。

FarmGuardianを作成する

FarmGuardianを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"name":"check_tcp-cut_conns", "parent":"check_tcp"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/monitoring/fg

POST /monitoring/fg

新しいFarmGuardianを作成します。

リクエストパラメータ

応答はキーを持つJSONオブジェクトになります。 paramsは そして以下のフォーマット:

フィールド 種類 説明 必須
文字列 一意の識別子 true
文字列 新しいFarmGuardianを作成するためのテンプレートとして使用されるFarmGuardianです。 このフィールドが送信されない場合、新しいFarmGuardianは空白で作成されます。

応答例:

{
   "description" : "Create a farm guardian check_tcp-cut_conns",
   "message" : "The farm guardian check_tcp-cut_conns has been created successfully",
   "params" : {
      "command" : "check_tcp -p PORT -H HOST",
      "cut_conns" : "false",
      "description" : "It does a TCP connection to test if the backend is alive",
      "farms" : [],
      "interval" : 5,
      "log" : "false",
      "name" : "check_tcp-cut_conns",
      "template" : "true"
   }
}

応答パラメータ

応答はキーを持つJSONオブジェクトになります。 paramsは そして以下のフォーマット:

フィールド 種類 説明
command 文字列 バックエンドでサービスの状態を確認するためのコマンド。 利用可能なコマンドはlibexecパスにあります。
cut_conns 文字列 可能な値は次のとおりです。 trueバックエンドが利用できない場合、FarmGuardianは現在の接続を切断します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
説明 文字列 小切手についての簡単な説明。
農場 String [] FarmGuardianが適用されている農場。
インターバル チェック間の時間
ログ 文字列 可能な値は次のとおりです。 trueFarmGuardianは各小切手を記録します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
文字列 一意の識別子
template 文字列 FarmGuardianがテンプレートの場合、変更されません。 テンプレートは、新しいFarmGuardianを作成したり、ファームに直接適用したりするのに役立ちます。

FarmGuardianを変更する

FarmGuardianを変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"interval":7,"log":"true","description":"TCP check to the port 80","command":"check_tcp -p 80 -H HOST","cut_conns":"false"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/monitoring/fg/custom-tcp

PUT /monitoring/fg/<name>

FarmGuardianを変更します。

URIパラメータ FarmGuardianの固有IDです。

リクエストパラメータ

応答はキーを持つJSONオブジェクトになります。 paramsは そして以下のフォーマット:

フィールド 種類 説明 必須
command 文字列 バックエンドでサービスの状態を確認するためのコマンド。 利用可能なコマンドはlibexecパスにあります。
cut_conns 文字列 可能な値は次のとおりです。 trueバックエンドが利用できない場合、FarmGuardianは現在の接続を切断します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
説明 文字列 小切手についての簡単な説明。
インターバル チェック間の時間
ログ 文字列 可能な値は次のとおりです。 trueFarmGuardianは各小切手を記録します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
文字列 実行中のファームがFarmGuardianを使用している場合、FarmGuardianを変更することはできません。 次に、このパラメータが値とともに送信された場合 trueこれにより、FarmGuardianは新しい構成を採用することを余儀なくされます。

応答例:

{
   "description" : "Modify farm guardian custom-tcp",
   "message" : "Success, some parameters have been changed in farm guardian custom-tcp.",
   "params" : {
      "command" : "check_tcp -p 80 -H HOST",
      "cut_conns" : "false",
      "description" : "TCP check to the port 80",
      "farms" : [],
      "interval" : 7,
      "log" : "true",
      "name" : "custom-tcp",
      "template" : "false"
   }
}

応答パラメータ

応答はキーを持つJSONオブジェクトになります。 paramsは そして以下のフォーマット:

フィールド 種類 説明
command 文字列 バックエンドでサービスの状態を確認するためのコマンド。 利用可能なコマンドはlibexecパスにあります。
cut_conns 文字列 可能な値は次のとおりです。 trueバックエンドが利用できない場合、FarmGuardianは現在の接続を切断します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
説明 文字列 小切手についての簡単な説明。
農場 String [] FarmGuardianが適用されている農場。
インターバル チェック間の時間
ログ 文字列 可能な値は次のとおりです。 trueFarmGuardianは各小切手を記録します。 または falseバックエンドが利用できない場合は無効になりますが、生存セッションは継続します。
文字列 一意の識別子
template 文字列 FarmGuardianがテンプレートの場合、どのファームにも適用されません。 テンプレートは、新しいFarmGuardianを作成するのに役立ちます。

FarmGuardianを削除する

FarmGuardianを削除する

リクエスト例:

curl -k -X DELETE -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/monitoring/fg/custom-tcp

DELETE /monitoring/fg/<name>

FarmGuardianを削除します。

URIパラメータ FarmGuardianの固有IDです。

応答例:

{
   "description" : "Delete the farm guardian custom-tcp",
   "message" : "custom-tcp has been deleted successful.",
   "success" : "true"
}

モニタリング - 統計

システムと農場に関する情報を表示します。 この情報はZevenetロードバランサーのステータスを監視するのに役立ちます。

システム統計を表示する

システム統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats

GET /stats

グローバルシステム統計を取得します。

応答例:

{
   "description" : "System stats",
   "params" : {
      "cpu" : {
         "cores" : 2,
         "idle" : 94.42,
         "iowait" : 0,
         "irq" : 0,
         "nice" : 0,
         "softirq" : 0,
         "sys" : 2.54,
         "usage" : 5.58,
         "user" : 3.05
      },
      "date" : "Fri Jan 27 11:40:32 2017",
      "hostname" : "api3",
      "load" : {
         "Last_1" : 1.17,
         "Last_15" : 0.36,
         "Last_5" : 0.6
      },
      "memory" : {
         "Buffers" : 21.68,
         "Cached" : 147.95,
         "MemFree" : 348.06,
         "MemTotal" : 2005.01,
         "MemUsed" : 1656.95,
         "SwapCached" : 2.67,
         "SwapFree" : 614.38,
         "SwapTotal" : 672,
         "SwapUsed" : 57.62
      },
      "network" : {
         "eth0 in in" : 2702.29,
         "eth0 out out" : 50701.95,
         "eth0.2 in in" : 0,
         "eth0.2 out out" : 0,
         "eth1 in in" : 234.72,
         "eth1 out out" : 0,
         "eth2 in in" : 234.72,
         "eth2 out out" : 0,
         "eth3 in in" : 0,
         "eth3 out out" : 0,
         "eth4 in in" : 436.89,
         "eth4 out out" : 4300.38,
         "eth4.6 in in" : 0,
         "eth4.6 out out" : 0,
         "eth5 in in" : 301.39,
         "eth5 out out" : 0,
         "eth5.5 in in" : 0,
         "eth5.5 out out" : 0,
         "eth6 in in" : 77.42,
         "eth6 out out" : 0
      }
   }
}

応答パラメータ

フィールド 種類 説明
CPU オブジェクト CPU統計
date 文字列 システム日付
hostname 文字列 ホストの名前。
負荷 オブジェクト コアロード統計
メモリ オブジェクト 使用メモリ統計
ネットワーク オブジェクト ネットワークトラフィック統計

CPUオブジェクト:

フィールド 種類 説明
プロセッサ内のコア数
アイドル CPUはどのプログラムでも使用していません。
アイオワット 入力または出力プロセスで使用されるCPU。
irq ハードウェア割り込みによって使用されたCPU。
nice CPUスケジューリング優先順位
やわらかい ソフトウェア割り込みで使用されるCPU。
SYS システムが使用しているCPU
使用 使用された合計CPU
user ユーザーが使用したCPU。

オブジェクトをロード:

フィールド 種類 説明
Last_1 システム負荷率の最後の分。
Last_5 5分前にシステムの割合をロードする。
Last_15 システムの割合を15分前にロードする。

メモリオブジェクト.

フィールド 種類 説明
バッファー バッファが使用しているメモリです。 この量はMbで示されています。
キャッシュされた これはシステムによってキャッシュされた合計メモリーです。 この量はMbで示されています。
MemFree システムによってキャッシュされていない空きメモリの合計です。 この量はMbで示されています。
MemTotal これはシステム上のRAMの総容量です。 この量はMbで示されています。
MemUsed それはシステムによって使用されるメモリです。 この量はMbで示されています。
SwapCached それは予約された合計キャッシュメモリです。
スワップフリー システムによってキャッシュされていない空きメモリの合計です。 この量はMbで示されています。
スワップ合計 これは予約されている合計スワップメモリ​​です。
入れ替え これはシステムによって使用されるスワップメモリ​​です。最適なシステムでは0であるべきです。

ネットワークオブジェクト:

フィールド 種類 説明
これに対する入力トラフィック インタフェース.
アウトアウト このための出力トラフィック インタフェース.

ネットワーク統計を表示する

ネットワーク統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/system/network

GET /stats/system/network

ネットワークインターフェースを介して総入出力トラフィックの要約を取得します。

応答例:

{
   "description" : "Network interfaces usage",
   "params" : {
      "date" : "Fri Jan 27 11:58:05 2017",
      "hostname" : "api3",
      "interfaces" : [
         {
            "in" : "77.42",
            "interface" : "eth6",
            "out" : "0.00"
         },
         {
            "in" : "2703.88",
            "interface" : "eth0",
            "out" : "50917.65"
         }
      ]
   }
}

応答パラメータ

応答はキーを持つJSONになります paramsは その値は、次のキーを持つオブジェクトです。

フィールド 種類 説明
date 文字列 システム日付
hostname 文字列 ホストの名前。
インターフェース オブジェクト[] ネットワークトラフィック統計

インタフェースオブジェクト

フィールド 種類 説明
in 文字列 合計入力トラフィック(MB)
インタフェース 文字列 インターフェイス名
でる 文字列 合計出力トラフィック(MB)

インターフェース統計を表示する

インターフェース統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/system/network/interfaces

GET /stats/system/network/interfaces

各ネットワークインターフェースの概要を取得します。

応答例:

{
   "description" : "Interfaces info",
   "params" : {
      "nic" : [
         {
            "in" : "77.42",
            "interface" : "eth6",
            "ip" : "",
            "mac" : "ea:00:7d:88:1d:bd",
            "out" : "0.00",
            "status" : "up",
            "virtual" : [],
            "vlan" : []
         },
         {
            "in" : "2704.81",
            "interface" : "eth0",
            "ip" : "192.168.101.46",
            "mac" : "9e:2e:3e:a5:2e:6a",
            "out" : "51039.13",
            "status" : "up",
            "virtual" : [
               "eth0:1",
               "eth0:2",
               "eth0.2:6"
            ],
            "vlan" : [
               "eth0.2"
            ]
         },
         {
            "in" : "234.72",
            "interface" : "eth1",
            "ip" : "192.168.101.58",
            "mac" : "c2:d0:d7:64:df:68",
            "out" : "0.00",
            "status" : "up",
            "virtual" : [],
            "vlan" : []
         },
         {
            "in" : "234.72",
            "interface" : "eth2",
            "ip" : "",
            "mac" : "3a:3a:a7:e3:33:73",
            "out" : "0.00",
            "status" : "up",
            "virtual" : [],
            "vlan" : []
         },
         {
            "in" : "0.00",
            "interface" : "eth3",
            "ip" : "192.168.101.72",
            "mac" : "16:97:ab:43:87:02",
            "out" : "0.00",
            "status" : "down",
            "virtual" : [
               "eth3:1",
               "eth3:8",
               "eth3:6"
            ],
            "vlan" : []
         },
         {
            "in" : "436.89",
            "interface" : "eth4",
            "ip" : "",
            "mac" : "ea:00:7d:88:1d:bd",
            "out" : "4300.38",
            "status" : "up",
            "virtual" : [
               "eth4.6:5"
            ],
            "vlan" : [
               "eth4.6"
            ]
         },
         {
            "in" : "301.39",
            "interface" : "eth5",
            "ip" : "",
            "mac" : "ea:00:7d:88:1d:bd",
            "out" : "0.00",
            "status" : "up",
            "virtual" : [],
            "vlan" : [
               "eth5.5"
            ]
         }
      ]
   }
}

応答パラメータ

応答はキーを持つJSONになります paramsは その値はキーを持つオブジェクトです NIC.

フィールド 種類 説明
NIC オブジェクト[] NICインターフェース統計

NICオブジェクト:

フィールド 種類 説明
in 文字列 合計入力トラフィック(MB)
インタフェース 文字列 一意の識別子として使用されるインターフェイス名
ip 文字列 インターフェイスのIP。
MAC 文字列 インターフェイスのMAC。
でる 文字列 合計出力トラフィック(MB)
status 文字列 インターフェイスステータス 値は ダウンインターフェイスは無効です。 upインターフェイスが有効になります。
バーチャル String [] このインターフェイスから継承する仮想インターフェイス。
VLAN String [] このインターフェイスから継承するVLANインターフェイス。

メモリ統計を表示する

メモリ統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/system/memory

GET /stats/system/memory

システムメモリの概要を取得します。

応答例:

{
   "description" : "Memory usage",
   "params" : {
      "Buffers" : 1.01,
      "Cached" : 42.47,
      "MemFree" : 880.11,
      "MemTotal" : 2005.01,
      "MemUsed" : 1124.91,
      "SwapCached" : 8.27,
      "SwapFree" : 565.15,
      "SwapTotal" : 672,
      "SwapUsed" : 106.84,
      "date" : "Fri Jan 27 12:27:11 2017",
      "hostname" : "api3"
   }
}

応答パラメータ

応答はキーを持つJSONになります paramsは その値はメモリオブジェクトです。

メモリ オブジェクト。

フィールド 種類 説明
バッファー バッファが使用しているメモリです。 この量はMbで示されています。
キャッシュされた これはシステムによってキャッシュされた合計メモリーです。 この量はMbで示されています。
MemFree システムによってキャッシュされていない空きメモリの合計です。 この量はMbで示されています。
MemTotal これはシステム上のRAMの総容量です。 この量はMbで示されています。
MemUsed それはシステムによって使用されるメモリです。 この量はMbで示されています。
SwapCached それは予約された合計キャッシュメモリです。
スワップフリー システムによってキャッシュされていない空きメモリの合計です。 この量はMbで示されています。
スワップ合計 これは予約されている合計スワップメモリ​​です。
入れ替え これはシステムによって使用されるスワップメモリ​​です。最適なシステムでは0であるべきです。
date 文字列 システム日付
hostname 文字列 ホストの名前。

負荷統計を表示する

負荷統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/system/load

GET /stats/system/load

CPUシステムの負荷の概要を取得します。

応答例:

{
   "description" : "System load",
   "params" : {
      "Last_1" : 0.66,
      "Last_15" : 0.39,
      "Last_5" : 0.49,
      "date" : "Fri Jan 27 13:15:01 2017",
      "hostname" : "api3"
   }
}

応答パラメータ

フィールド 種類 説明
Last_1 最後にシステム使用量をロードします。
Last_5 最後の5分間にシステムの使用状況を読み込みます。
Last_15 最後の15分間にシステムの使用状況をロードします。
date 文字列 システム日付
hostname 文字列 ホストの名前。

CPU統計を表示する

CPU統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/system/cpu

GET /stats/system/cpu

応答例:

{
   "description" : "System CPU usage",
   "params" : {
      "cores" : 2,
      "date" : "Fri Jan 27 13:30:52 2017",
      "hostname" : "api3",
      "idle" : 94.9,
      "iowait" : 0,
      "irq" : 0,
      "nice" : 0,
      "softirq" : 0,
      "sys" : 3.06,
      "usage" : 5.1,
      "user" : 2.04
   }
}

応答パラメータ

フィールド 種類 説明
プロセッサ内のコア数
アイドル CPUはどのプログラムでも使用していません。
アイオワット 入力または出力プロセスで使用されるCPU。
irq ハードウェア割り込みによって使用されたCPU。
nice CPUスケジューリング優先順位
やわらかい ソフトウェア割り込みで使用されるCPU。
SYS システムが使用しているCPU
使用 使用された合計CPU
user ユーザーが使用したCPU。
date 文字列 システム日付
hostname 文字列 ホストの名前。

接続統計を表示する

接続統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/system/connections

GET /stats/system/connections

システム内の現在の接続の合計を取得します。 カウンターは、追跡された接続のタイプを合計します:ASSURED、ESTABLISHED、SYN_SENT、TIME_WAIT、LISTEN…

応答例:

{
   "description" : "System connections",
   "params" : {
      "connections" : 324
   }
}

応答パラメータ

フィールド 種類 説明
接続 実際に追跡された接続の総数。

農場数を表示する

農場数を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/farms/total

GET /stats/farms/total

システムで作成された農場の合計を表示します。

応答例:

{
   "description" : "Number of farms.",
   "number" : 8
}

応答パラメータ

フィールド 種類 説明
システム内に存在する農場の数です。

農場の統計を表示する

農場の統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/farms

GET /stats/farms

システム内のすべてのファームの接続と構成の概要を取得します。

応答例:

{
   "description" : "List all farms stats",
   "farms" : [
      {
         "established" : 0,
         "farmname" : "testHttps",
         "pending" : 0,
         "profile" : "https",
         "status" : "up",
         "vip" : "192.168.101.20",
         "vport" : "120"
      },
      {
         "established" : 0,
         "farmname" : "httpFarm",
         "pending" : 0,
         "profile" : "http",
         "status" : "up",
         "vip" : "192.168.10.31",
         "vport" : "8080"
      },
      {
         "established" : 0,
         "farmname" : "testDL",
         "pending" : 0,
         "profile" : "datalink",
         "status" : "up",
         "vip" : "192.168.102.72",
         "vport" : "eth1"
      },
      {
         "established" : 0,
         "farmname" : "testL4",
         "pending" : 0,
         "profile" : "l4xnat",
         "status" : "up",
         "vip" : "192.168.10.31",
         "vport" : "30"
      }
   ]
}

応答パラメータ

フィールド 種類 説明
設立 現在確立されている接続の総数
農場名 文字列 ファーム名、一意の識別子
ペンディング 保留中の接続数
プロフィール 文字列 農場のタイプ 可能な値は次のとおりです。 データリンク, l4xnat, HTTP or HTTPS。 各プロファイルはそのセクションで定義されています。
status 文字列 農場の状況 使用可能な状況値は以下のとおりです。 ダウンファームが稼働していません。 再起動が必要ファームは稼働していますが、再起動アクションが保留中です。 重大なファームが稼働しており、すべてのバックエンドにアクセスできない、またはメンテナンス中です。 問題ファームは稼働しており、到達不能なバックエンドがいくつかありますが、ほとんどのバックエンドが稼働中です。 メンテナンス、ファームは稼働しており、稼働中のバックエンドがありますが、ほとんどのバックエンドはメンテナンスモードです。 up、農場は稼働しており、すべてのバックエンドは成功しています。
VIP 文字列 仮想サービスが待機しているファームのIP。
vport 文字列 仮想サービスが待機しているファームのポート。

農場統計を表示する

農場統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/farms/farmname

GET /stats/farms/<farmname>

現在のファームのステータス、バックエンドのステータス、および接続を表示します。 プロファイルに応じて、各ファームは異なるオブジェクトで応答します。

HTTPファームの応答例

{
   "backends" : [
      {
         "established" : 0,
         "id" : 0,
         "ip" : "192.168.0.168",
         "pending" : 0,
         "port" : 80,
         "service" : "srv1",
         "status" : "up"
      }
   ],
   "description" : "List farm stats",
   "sessions" : [
      {
         "client" : "0",
         "id" : "0",
         "service" : "srv1",
         "session" : "192.168.0.186"
      }
   ]
}

HTTPファームの応答パラメータ

フィールド 種類 説明
バックエンド オブジェクト[] バックエンドに関する情報を表示します。
セッション オブジェクト[] セッションに関する情報を表示します。

バックエンドオブジェクト

フィールド 種類 説明
設立 確立された接続の総数
id バックエンドの一意の識別子。
ip 文字列 実際のサービスがリッスンしているIP。
ペンディング 保留中の接続数
ポート 実際のサービスがリッスンしているポート。
サービス 文字列 一意の識別子として使用されるサービス名
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 メンテナンス、バックエンドは、管理者によって接続を受信する準備ができていないものとしてマークされています。このオプションは、バックエンドのメンテナンスタスクに役立ちます。 未定義バックエンドのステータスはチェックされていません。

セッションオブジェクト

フィールド 種類 説明
クライアント 文字列 クライアントの一意の識別子
id 文字列 クライアントに割り当てられたバックエンドの一意の識別子。
サービス 文字列 クライアントに割り当てられたサービスの一意の識別子。
セッション 文字列 セッションの一意の識別子 この値は永続化タイプによって異なります。

L4xNATファームの応答例

{
   "backends" : [
      {
         "established" : 5,
         "id" : 1,
         "ip" : "192.168.5.40",
         "pending" : 0,
         "port" : "8080",
         "status" : "maintenance"
      },
      {
         "established" : null,
         "id" : 3,
         "ip" : "192.5.1.1",
         "pending" : 0,
         "port" : "787",
         "status" : "down"
      },
      {
         "established" : 1,
         "id" : 5,
         "ip" : "192.168.5.100",
         "pending" : 0,
         "port" : "8080",
         "status" : "up"
      }
   ],
   "description" : "List farm stats",
   "sessions" : [
      {
         "id" : 5,
         "session" : "192.168.5.100"
      }
   ]

}

L4xNATファームの応答パラメータ

応答はオブジェクト付きのJSONになります バックエンド and セッション:

バックエンドオブジェクト:

フィールド 種類 説明
設立 現在確立されている接続の総数
id バックエンドの一意の識別子。
ip 文字列 実際のサービスがリッスンしているIP。
ペンディング 保留中の接続数
ポート 実際のサービスがリッスンしているポート。
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 メンテナンス、バックエンドは、管理者によって接続を受信する準備ができていないものとしてマークされています。このオプションは、バックエンドのメンテナンスタスクに役立ちます。 未定義バックエンドのステータスはチェックされていません。

セッションオブジェクト:

フィールド 種類 説明
id クライアントが割り当てられているバックエンドの一意の識別子。
セッション 文字列 セッションの一意の識別子 それはクライアントIPです。

データリンクファーム統計は実際には利用できません。

モジュールの状態を表示する

モジュールの状態を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/farms/modules

GET /stats/farms/modules

モジュール統計の要約を入手してください。 この呼び出しは、各モジュールのステータス、構成されている数、停止および起動しているファームの数を示します。

モジュールについての定義は 農場 のセクションから無料でダウンロードできます。

応答例:

{
   "description" : "Module status",
   "params" : {
      "dslb" : {
         "critical" : 0,
         "down" : 1,
         "problem" : 0,
         "total" : 2,
         "up" : 1
      },
      "lslb" : {
         "critical" : 0,
         "down" : 2,
         "problem" : 0,
         "total" : 4,
         "up" : 2
      }
   }
}

応答パラメータ

応答は3つのキーを持つJSONになります。 dslb and LSB.

フィールド 種類 説明
重大な 危機的状況にある農場の数。 ファームが稼働していて、すべてのバックエンドにアクセスできない(停止またはメンテナンス)場合、ファームは重要です。
ダウン 停止した農場の数 ファームはシステム管理者によって停止されます。
問題 問題のある農場の数 ファームが稼働していて、ほとんどバックエンドが停止している場合は、ファームに問題があります。
合計 総農場数
up 稼働中のファームの数 これはmaintenancedと表示され、ファームの状態を再起動する必要があります。

モジュール統計を表示する

モジュール統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/stats/farms/modules/lslb

GET /stats/farms/modules/<module>

指定されたモジュールの農場統計を表示します。

使用可能な値 モジュール パラメータは次のとおりです。 LSB or dslb.

応答例:

{
   "description" : "List lslb farms stats",
   "farms" : [
      {
         "established" : 0,
         "farmname" : "newfarm",
         "pending" : 0,
         "profile" : "http",
         "status" : "up",
         "vip" : "192.168.100.199",
         "vport" : "40"
      },
      {
         "established" : 0,
         "farmname" : "nwl4farm",
         "pending" : 0,
         "profile" : "l4xnat",
         "status" : "down",
         "vip" : "192.168.100.241",
         "vport" : "88"
      },
      {
         "established" : 0,
         "farmname" : "l4farm",
         "pending" : 0,
         "profile" : "l4xnat",
         "status" : "up",
         "vip" : "192.168.100.102",
         "vport" : "70"
      }
   ]
}

応答パラメータ

応答は、モジュール内のファームに関する情報を含むJSONオブジェクトになります。

フィールド 種類 説明
設立 現在確立されている接続の総数
農場名 文字列 ファーム名、ファームの一意の識別子。
ペンディング 保留中の接続数
プロフィール 文字列 農場のタイプ 可能な値は次のとおりです。 データリンク, l4xnat, HTTP or HTTPS。 各プロファイルは自分自身で定義されています。
status 文字列 農場の状況 使用可能な状況値は以下のとおりです。 ダウンファームが稼働していません。 再起動が必要ファームは稼働していますが、再起動アクションが保留中です。 重大なファームが稼働しており、すべてのバックエンドにアクセスできない、またはメンテナンス中です。 問題ファームは稼働しており、到達不能なバックエンドがいくつかありますが、ほとんどのバックエンドが稼働中です。 メンテナンス、ファームは稼働しており、稼働中のバックエンドがありますが、ほとんどのバックエンドはメンテナンスモードです。 up、農場は稼働しており、すべてのバックエンドは成功しています。
VIP 文字列 仮想サービスが待機しているファームのIP。
vport 文字列 仮想サービスが待機しているファームのポート。

監視 - グラフ

このセクションは、CPU使用率、スワップメモリ​​、RAMメモリ、設定されているすべてのneworkインタフェース、負荷、およびハードディスクストレージのパラメータを使用して、内部ロードバランサシステムを監視して問題を検出するのに役立ちます。

また、あなたは毎週、蛾と毎年の歴史にアクセスすることができるでしょう。

情報を含むグラフはbase64形式で応答されます。

利用可能なグラフを一覧表示する

利用可能なグラフを一覧表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/graphs

GET /graphs

システムで利用可能なすべてのグラフを含むオブジェクトを表示します。 可能な要求を示しています。

応答例:

{
   "description" : "These are the possible graphs, you`ll be able to access to the daily, weekly, monthly or yearly graph",
   "farms" : [
      "l4farm",
      "newfarm",
      "nwl4farm",
      "httpweb"
   ],
   "interfaces" : [
      "eth0.1",
      "eth2",
      "eth1",
      "eth3",
      "eth0"
   ],
   "system" : [
      "cpu",
      "load",
      "ram",
      "swap",
      {
         "disk" : [
            "root/",
            "root/boot",
            "root/usr/local/zenloadbalancer/config",
            "root/var/log"
         ]
      }
   ]
}

応答パラメータ

応答はJSONの3種類のグラフになります。 農場, インターフェース and システム.

フィールド 種類 説明
農場 String [] 利用可能な農場グラフのリスト。
インターフェース String [] 利用可能なインタフェースグラフのリスト。
システム オブジェクト[] 利用可能なシステムグラフのリスト。 この配列には、ディスクマウントポイントを示す配列を持つオブジェクトがあります。

システムオブジェクト:

システムオブジェクトには、システムに関連する配列リストと次の形式のディスクオブジェクトが含まれています。

フィールド 種類 説明
ディスク String [] この配列の値はすべて存在します マウントポイント システムでは、それぞれが利用可能なグラフを持っています。

グラフを表示

グラフを表示

農場のリクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/graphs/farms/httpweb

インターフェースのリクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/graphs/interfaces/eth3

ディスクのリクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/graphs/system/disk/root/boot

GET /graphs/<graph>

使用可能な値 グラフ には次の値があります:

説明
farms/<farmname> 農場名ファーム固有の識別子。
interfaces/<interface> インタフェースインターフェイス固有の識別子。
system/<system> システム可能なシステムグラフは次のとおりです。 CPU, 負荷, ラム or swap.
system/disk/<mount point> マウントポイントは、の値です ディスク 'GET / graphs'呼び出しによって返されるオブジェクト。

応答例:

{
   "description" : "Get cpu graphs",
   "graphs" : [
      {
         "frequency" : "daily",
         "graph" : "PNG IN BASE 64"
      },
      {
         "frequency" : "weekly",
         "graph" : "PNG IN BASE 64"
      },
      {
         "frequency" : "monthly",
         "graph" : "PNG IN BASE 64"
      },
      {
         "frequency" : "yearly",
         "graph" : "PNG IN BASE 64"
      }
   ]
}

応答パラメータ

フィールド 種類 説明
周波数 文字列 グラフの生成に使用された期間。 可能な値は次のとおりです。 daily, weekly, monthly or 毎年.
グラフ 文字列 基本64形式のグラフ。

頻度グラフを表示

頻度グラフを表示

農場のリクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/graphs/farms/httpweb/daily

インターフェースのリクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/graphs/interfaces/eth3/monthly

ディスクのリクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/graphs/system/disk/root/boot/yearly

GET /graphs/<graph>/<frequency>

使用可能な値 グラフ には次の値があります:

説明
farms/<farmname> 農場名ファーム固有の識別子。
interfaces/<interface> インタフェースインターフェイス固有の識別子。
system/<system> システム可能なシステムグラフは次のとおりです。 CPU, 負荷, ラム or swap.
system/disk/<mount point> マウントポイントは、の値です ディスク 'GET / graphs'呼び出しによって返されるオブジェクト。

使用可能な値 周波数 には次の値があります:

フィールド 種類 説明
周波数 文字列 グラフの生成に使用された期間。 可能な値は次のとおりです。 daily, weekly, monthly or 毎年.

応答例:

{
    "description" : "Get farm graphs",
    "graph" : "PNG IN BASE 64"
}

応答パラメータ

フィールド 種類 説明
グラフ 文字列 基本64形式のグラフ。

エントルピー

システムオプションを使用すると、バランサで実行されているサービスとグローバルパラメータをカスタマイズすることができます。

バージョンを表示

バージョンを表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/version

GET /system/version

製品のバージョンに関する情報を表示します。

応答例:

{
   "description" : "Get version",
   "params" : {
      "appliance_version" : "ZVA 4100, hypervisor: xen",
      "hostname" : "DEV5",
      "kernel_version" : "3.16.7-ckt20",
      "system_date" : "Thu Feb  2 10:34:27 2017",
      "zevenet_version" : "5.0"
   }
}

応答パラメータ

応答は以下のパラメータを持つJSONオブジェクトになります。

フィールド 種類 説明
appliance_version 文字列 応募バージョン 仮想マシンの場合はハイパーバイザーも表示します。
hostname 文字列 ホスト名
kernel_version 文字列 Linuxカーネルのバージョン
system_date 文字列 システム日付
zevenet_version 文字列 Zevenetのバージョン

DNSを表示

DNSを表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/dns

GET /system/dns

DNSサービス設定を表示します。

応答例:

{
   "description" : "Get dns",
   "params" : {
      "primary" : "8.8.8.8",
      "secondary" : null
   }
}

応答パラメータ

応答は以下のパラメータを持つJSONオブジェクトになります。

フィールド 種類 説明
主要な 文字列 システムに設定されているプラ​​イマリDNS。
二次 文字列 セカンダリDNSがシステムに設定されています。

DNSの変更

DNSの変更

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"primary":"8.8.4.4","secondary":"8.8.8.8"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/dns

POST /system/dns

DNSサービス設定を変更します。

リクエストパラメータ

フィールド 種類 説明
主要な 文字列 システムに設定されているプラ​​イマリDNS。
二次 文字列 セカンダリDNSがシステムに設定されています。

応答例:

{
   "description" : "Post dns",
   "params" : {
      "primary" : "8.8.4.4",
      "secondary" : "8.8.8.8"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

SNMPを表示

SNMPを表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/snmp

GET /system/snmp

SNMPサービス設定を表示します。

応答例:

{
   "description" : "Get snmp",
   "params" : {
      "community" : "public",
      "ip" : "*",
      "port" : "161",
      "scope" : "0.0.0.0/0",
      "status" : "false"
   }
}

応答パラメータ

応答は以下のパラメータを持つJSONオブジェクトになります。

フィールド 種類 説明
コミュニティ 文字列 コミュニティ名。 読み取り専用コミュニティが使用されました。
ip 文字列 SNMPサービスが実行されているインターフェイスIP。 Allインタフェースを有効にしておくことは安全です。 キャラクター *.
ポート 文字列 SNMPサービスが実行されているポート。
スコープ 文字列 アクセス権を持つIPまたはサブネット(IP /ビット)。 1つのIPのみにアクセスを許可したい場合は、クライアントIPからSNMPDサービスへのアクセスを許可してください。ビット「/ 32」を使用してください。
status 文字列 SNMPサービスのステータス 可能な値は次のとおりです。 trueサービスは実行中です。 または false、サービスは停止しています。

SNMPを変更する

SNMPを変更する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.100.241","port":"170","scope":"0.0.0.0/0","status":"true","community":"public"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/snmp

POST /system/snmp

SNMPサービス設定を変更します。

リクエストパラメータ

フィールド 種類 説明
コミュニティ 文字列 コミュニティ名。 読み取り専用コミュニティが使用されました。
ip 文字列 SNMPサービスが実行されているインターフェイスIP。 Allインタフェースを有効にしておくことは安全です。 キャラクター *.
ポート 文字列 SNMPサービスが実行されているポート。
スコープ 文字列 アクセス権を持つIPまたはサブネット(IP /ビット)。 1つのIPのみにアクセスを許可したい場合は、クライアントIPからSNMPDサービスへのアクセスを許可してください。ビット「/ 32」を使用してください。
status 文字列 SNMPサービスのステータス 可能な値は次のとおりです。 trueサービスは実行中です。 または false、サービスは停止しています。

応答例:

{
   "description" : "Post snmp",
   "params" : {
      "community" : "public",
      "ip" : "192.168.100.241",
      "port" : "170",
      "scope" : "0.0.0.0/0",
      "status" : "true"
   }
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

ライセンスを取得する

ライセンスを取得する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/license/txt

GET /system/license/<format>

Zevenetのライセンスをフォーマットで表示します。 利用できる フォーマット 値は HTML or TXT.

NTPを表示

NTPを表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/ntp

GET /system/ntp

NTPサービス設定を表示します。

応答例:

{
   "description" : "Get ntp",
   "params" : {
      "server" : "pool.ntp.org"
   }
}

応答パラメータ

応答は以下のパラメータを持つJSONオブジェクトになります。

フィールド 種類 説明
サーバー 文字列 NTPクライアントが要求を行うサーバー。

NTPを変更する

NTPを変更する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"server":"pool.ntp.org"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/ntp

POST /system/ntp

NTPサービス設定を変更します。

リクエストパラメータ

フィールド 種類 説明
サーバー 文字列 NTPクライアントが要求を行うサーバー。

応答例:

{
   "description" : "Post ntp",
   "params" : "pool.ntp.org"
}

応答パラメータ

応答はすべての要求された値が更新されたJSONになります。 詳しくは、応答例を参照してください。

サポートセーブをダウンロードする

サポートセーブをダウンロードする

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/supportsave > supportsave.tar.gz

GET /system/supportsave

システムで実行されているすべての設定とプロセスを含むシステムステータスイメージを取得します。 これは問題を見つけることや援助を支援することが必要であることを意味します。

現在のユーザーを取得します

現在のユーザーを取得します

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/users

GET /system/users

現在のユーザーに関する情報を表示します。 現在のユーザーは、から取得したユーザーです。 ZAPI_KEY またはwebguiによってログインされたユーザー

応答例:

{
   "description" : "Retrieve the user root",
   "params" : {
      "user" : "root",
      "zapi_permissions" : "true"
   }
}

応答パラメータ

応答は以下のパラメータの配列を持つJSONオブジェクトになります。

フィールド 種類 説明
user 文字列 それはの所有者です ZAPI_KEY。 これはrootのデフォルトユーザーになることができます。
zapi_permissions 文字列 値が true、ユーザーはユーザーのzapikeyを使用してZevenetAPIを使用できます。 または値が false、ユーザーがzapiを使用することを無効にしました。

現在のユーザーを変更する

現在のユーザーを変更する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"password":"CDe0c3ck","newpassword":"v2mfcvv2","zapi_permissions":"false","zapikey":"vCeH60mQFf2MgH5"}'

https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/users

POST /system/users

現在のユーザーの設定を変更します。 現在のユーザーは、から取得したユーザーです。 ZAPI_KEY またはWebguiによってログインしたユーザー。

リクエストパラメータ:

フィールド 種類 説明 必須
ザピキー 文字列 各ユーザーはzapikeyを持つことができます。 このzapikeyを使用すると、ユーザーは、ユーザーのロールの権限を使用して、zapikeyを介してアクションを実行できます。
zapi_permissions 文字列 可能な値は次のとおりです。 truezapiを介してロードバランサにアクセスできるようにする。 または false、ザピを介してアクセスを許可しないようにします。
新しいパスワード 文字列 Web GUI経由でアクセスするための新しいユーザーパスワード。
パスワード 文字列 現在のユーザーパスワード いつ必要か 新しいパスワード 送信されます。

応答例:

{
   "description" : "Modify the user Shadi",
   "message" : "Settings was changed successful."
}

ログファイルを一覧表示する

ログファイルを一覧表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/logs

GET /system/logs

利用可能なログファイルを一覧表示します。

応答例:

{
   "description" : "Get logs",
   "params" : [
      {
         "date" : "Mon Jan 30 06:25:02 2017",
         "file" : "syslog.4.gz"
      },
      {
         "date" : "Tue Jan 31 06:25:03 2017",
         "file" : "syslog.3.gz"
      },
      {
         "date" : "Wed Feb  1 06:25:04 2017",
         "file" : "syslog.2.gz"
      },
      {
         "date" : "Thu Feb  2 06:25:03 2017",
         "file" : "syslog.1"
      },
      {
         "date" : "Sun Jan 29 06:25:03 2017",
         "file" : "syslog.5.gz"
      },
      {
         "date" : "Fri Feb  3 04:28:56 2017",
         "file" : "syslog"
      }
   ]
}

応答パラメータ

応答はログファイルの配列を持つJSONになります。 各オブジェクトのパラメータは次のとおりです。

フィールド 種類 説明
date 文字列 ファイルが最後に変更された日付。
file 文字列 ログファイルのファイル名 ログの一意の識別子として使用されます。

ログファイルの行を表示する

ログファイルの行を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/logs/kern.log/lines/2

GET /system/logs/<file>/lines/<lines>

ログファイルの行数をリストします。 URIパラメータ file 読み取りからのログファイルです。 ラインズ 最後から表示する行数です。

応答例:

{
   "description" : "Show a log file",
   "log" : [
      "Aug 28 09:44:00 maq2 kernel: [258451.740173] Netfilter messages via NETLINK v0.30.\n",
      "Aug 28 09:44:00 maq2 kernel: [258451.775666] ctnetlink v0.93: registering with nfnetlink.\n"
   ]
}

応答パラメータ

応答はログファイルの配列を持つJSONになります。 キーはlogで、その値は要求された行数を含む配列です。

ログファイルをダウンロードする

ログファイルをダウンロードする

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/logs/syslog.2.gz > log.gz

GET /system/logs/<file>

GET要求中にリストされた使用可能なログファイルのログファイルをダウンロードします。

file ログファイルの一意の識別子です。

システム - バックアップ

バックアップオプションを使用すると、現在のシステム設定を保存してダウンロードできます。

このセクションでは、バックアップファイルを作成、復元、アップロード、ダウンロードすることができます。

リストバックアップ

リストバックアップ

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/backup

GET /system/backup

応答例:

{
   "description" : "Get backups",
   "params" : [
      {
         "date" : "Fri Feb  3 06:01:04 2017",
         "name" : "newbackup"
      },
      {
         "date" : "Fri Feb  3 05:50:48 2017",
         "name" : "firstConf"
      }
   ]
}

応答パラメータ

応答は一連のバックアップを含むJSONになります。 各配列要素のパラメータは次のとおりです。

フィールド 種類 説明
date 文字列 最後の修正日。
文字列 一意の識別子として使用されるファイル名です。 ファイル拡張子は .tar.gz.

バックアップを作成する

バックアップを作成する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
 -d '{"name":"firstConf"}'
 https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/backup

POST /system/backup

現在の設定のシステム設定バックアップを作成します。

リクエストパラメータ

フィールド 種類 説明
文字列 一意の識別子として使用されるファイル名です。 ファイル拡張子は .tar.gz.

応答例:

{
   "description" : "Create a backups",
   "message" : "Backup firstConf was created successful.",
   "params" : "firstConf"
}

バックアップをダウンロードする

バックアップをダウンロードする

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
 https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/backup/firstConf > ~/zevenetConf.tar.gz

バックアップファイルはTAR GZ形式です。

GET /system/backup/<name>

システム構成のバックアップをダウンロードしてください。 バックアップの一意の識別子です。

バックアップをアップロードする

バックアップをアップロードする

リクエスト例:

curl -k -X PUT -H 'Content-Type: text/plain'
--data-binary @/opt/1mar.tar.gz -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/backup/newbackup

PUT /system/backup/<name>

ローカルに保存されたバックアップをZevenetにアップロードします。 Zevenetに保存されるバックアップの一意の識別子です。

リクエストパラメータ

バックアップをアップロードするには、–data-binaryを使用する必要があります。

応答例:

{
   "description" : "Upload a backup",
   "message" : "Backup newbackup was created successful.",
   "params" : "newbackup"
}

バックアップを削除する

バックアップを削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/backup/firstConf

DELETE /system/backup/<name>

Zevenetシステムからバックアップファイルを削除します。 バックアップの一意の識別子です。

応答例:

{
   "description" : "Delete backup firstConf'",
   "message" : "The list firstConf has been deleted successful.",
   "success" : "true"
}

バックアップを適用する

バックアップを適用する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"action":"apply"}'
https://<zevenet_server>:444/zapi/v4.0/zapi.cgi/system/backup/firstConf/actions

POST /system/backup/<name>/actions

バックアップファイルから設定を復元します。 バックアップの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明
アクション 文字列 バックアップ設定を復元するには、値を 適用する.

応答例:

{
   "description" : "Apply a backup to the system",
   "params" : {
      "action" : "apply"
   }
}