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

Zevenet コミュニティ エディション API v3.1

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

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

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

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

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

鑑定書

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

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

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

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
https://<zevenet_server>:444/zapi/v3.1/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/v3.1/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/v3.1/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/v3.1/zapi.cgi/certificates

POST /certificates

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

リクエストパラメータ

フィールド 種類 説明 必須
文字列 証明書IDの名前 true
fqdn 文字列 サーバーの完全修飾ドメイン名 true
分裂 文字列 証明書を処理している組織の部門。 true
組織 文字列 あなたの組織の正式な名前。 true
地域 文字列 組織が配置されている市。 true
状態 文字列 組織が所在する州/地域。 true
文字列 組織が所在地である国の2文字のISOコード。 true
電子メール 文字列 組織への連絡に使用される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/v3.1/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/v3.1/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は オブジェクト[] 証明書オブジェクトのリスト。

証明書オブジェクト

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

農場

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

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

すべての農場を一覧表示

すべての農場を一覧表示

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v3.1/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/v3.1/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/v3.1/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 ロード バランシング (またはアプリケーション デリバリー コントローラー) です。 このプロファイルは、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/v3.1/zapi.cgi/farms/httpFarm

GET /farms/<farmname>

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

応答例:

{
   "description" : "List farm httpFarm",
   "params" : {
      "certlist" : [
         {
            "file" : "zencert.pem",
            "id" : 1
         }
      ],
      "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" : [],
         "fgenabled" : "false",
         "fglog" : "false",
         "fgscript" : "",
         "fgtimecheck" : 5,
         "httpsb" : "false",
         "id" : "service3",
         "leastresp" : "false",
         "persistence" : "",
         "redirect" : "",
         "redirecttype" : "",
         "sessionid" : "",
         "ttl" : 0,
         "urlp" : "",
         "vhost" : ""
      },
      {
         "backends" : [
            {
               "id" : 0,
               "ip" : "192.168.0.168",
               "port" : 80,
               "status" : "up",
               "timeout" : null,
               "weight" : null
            }
         ],
         "fgenabled" : "false",
         "fglog" : "false",
         "fgscript" : "tcp_check",
         "fgtimecheck" : 5,
         "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、naccepted 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 仮想サービスが待機しているファームのポート。

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

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

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

フィールド 種類 説明
バックエンド オブジェクト[] サービスに定義されているバックエンド。
想像できる 文字列 農場の保護者の使用を有効にします。 true ファームの保護者が有効になっており、バックエンドのステータスを確認 false ファームの保護者は無効になっており、バックエンドのステータスをチェックしていません。 HTTPプロファイルでは、Farm Guardianが無効になっている場合でもcheck_tcpがデフォルトで実行されます。
fglog 文字列 ファーム保護者でログの使用を有効にします。 true 有効にします。 false無効になっています。 想像できる 必要とされている。
fgscript 文字列 農場の保護者がバックエンドの健康状態をチェックするために使用するコマンド。 true 有効にします。 false無効になっています。 想像できる 必要とされている。
fgtimecheck ファームガーディアンは、バックエンドのヘルスステータスを「timetocheck」秒ごとにチェックします。 想像できる 必要とされている。
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であり、このバックエンドに使用される特別な重みではありません。

新しい農場を作る

新しい農場を作る

リクエスト例:

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/v3.1/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,"ignore_100_continue":"true",
"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://<zenlb_server>:444/zapi/v3.1/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、naccepted 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/v3.1/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"
}

HTTP - サービス

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

サービスオブジェクトの内部には、サービス関連とファームガード関連の2種類の値があります。

Farmguardianは、バックエンドの状態を詳細に監視するために使用され、現在のサービス用の独自のスクリプト用に完全にパーソナライズされています。 farmguardianが問題を検出すると、自動的に実サーバーが無効になり、ブラックリストに登録されます。

IDでサービスを取得

IDでサービスを取得

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
https://<zevenet_server>:444/zapi/v3.1/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
         },
         {
            "id" : 0,
            "ip" : "192.168.100.254",
            "port" : 80,
            "status" : "up",
            "timeout" : null,
            "weight" : null
         }
      ],
      "fgenabled" : "false",
      "fglog" : "false",
      "fgscript" : "check_tcp -H HOST -p PORT",
      "fgtimecheck" : 5,
      "httpsb" : "false",
      "id" : "serv",
      "leastresp" : "false",
      "persistence" : "COOKIE",
      "redirect" : "",
      "redirecttype" : "",
      "sessionid" : "JSESSIONID",
      "ttl" : 18,
      "urlp" : "(?i)^/music$",
      "vhost" : ""
   }
}

応答パラメータ

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

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

フィールド 種類 説明
バックエンド オブジェクト[] サービスに定義されているバックエンド。
想像できる 文字列 農場の保護者の使用を有効にします。 true ファームの保護者が有効になっており、バックエンドのステータスを確認 false ファームの保護者は無効になっており、バックエンドのステータスをチェックしていません。 HTTPプロファイルでは、Farm Guardianが無効になっている場合でもcheck_tcpがデフォルトで実行されます。
fglog 文字列 ファーム保護者でログの使用を有効にします。 true 有効にします。 false無効になっています。 想像できる 必要とされている。
fgscript 文字列 農場の保護者がバックエンドの健康状態をチェックするために使用するコマンド。 true 有効にします。 false無効になっています。 想像できる 必要とされている。
fgtimecheck ファーム ガーディアンは、「timetocheck」秒ごとにバックエンドの健全性ステータスをチェックします。 想像できる 必要とされている。
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であり、このバックエンドに使用される特別な重みではありません。

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

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

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"id":"newserv"}' https://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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プロトコルのトラフィックをバックエンドに送信します。

応答例:

{
   "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" : [],
      "fgenabled" : "false",
      "fglog" : "false",
      "fgscript" : "",
      "fgtimecheck" : 5,
      "httpsb" : "true",
      "id" : "newsrv",
      "leastresp" : "true",
      "persistence" : "",
      "redirect" : "http://zenloadbalancer.com",
      "redirecttype" : "default",
      "sessionid" : "sid",
      "ttl" : 125,
      "urlp" : "^/myapp1$",
      "vhost" : "www.mywebserver.com"
   },
   "status" : "needed restart"
}

応答パラメータ

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

農場の保護者を変更する

農場の保護者を変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"fgtimecheck":5,"fgscript":"check_tcp","fgenabled":"true",
"fglog":"true","service":"service1"}' https://<zevenet_server>:444/zapi/v3.1/zapi.cgi/farms/FarmHTTP/fg

Farmguardianは、バックエンドの状態を詳細に監視するために使用され、現在のサービス用の独自のスクリプト用に完全にパーソナライズされています。 farmguardianが問題を検出すると、自動的に実サーバーが無効になり、ブラックリストに登録されます。

PUT /farms/<farmname>/fg

指定されたHTTPプロファイル内のFarm Guardianのパラメーターを変更します。

リクエストパラメータ

フィールド 種類 説明 必須
fgtimecheck ファームガーディアンは、「timetocheck」秒ごとにバックエンドのヘルスステータスをチェックします。
fgscript 文字列 バックエンドの健康状態をチェックするためにFarm Guardianが実行するコマンド
想像できる 文字列 指定されたサービスで農場の保護者を有効にします。 true 農場の保護者はバックエンドのステータスをチェックするために使用される予定です。 false 農場の保護者は無効にされる予定です
fglog 文字列 ファーム保護者でログの使用を有効にします。 true 農場の保護者が行動を記録します。 false 農場の保護者はいかなる行動も記録するつもりはない、それを有効にすることをお勧めします fglog トラブルシューティング専用です。
サービス 文字列 一意の識別子として使用されるサービス名 true

応答例:

{
   "description" : "Modify farm FarmHTTP",
   "params" : {
      "fgenabled" : "true",
      "fglog" : "true",
      "fgscript" : "checktcp",
      "fgtimecheck" : 5,
      "service" : "service1"
   }
}

サービスを削除する

サービスを削除する

リクエスト例:

curl -k -X DELETE -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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
      },
      {
         "id" : 1,
         "ip" : "192.168.102.245",
         "port" : 80,
         "status" : "up",
         "timeout" : 22,
         "weight" : 2
      }
   ]
}

応答パラメータ

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

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

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

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

リクエスト例:

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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/httpfarm/services/newsrv/backends

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

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

リクエストパラメータ

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

応答例:

{
   "description" : "New service backend",
   "message" : "Added backend to service succesfully",
   "params" : {
      "id" : 0,
      "ip" : "192.168.102.244",
      "port" : 80,
      "timeout" : 2,
      "weight" : 2
   },
   "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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/FarmHTTP/service/service1/backends/1

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

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

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

リクエストパラメータ

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

応答例:

{
   "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
   },
   "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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/httpfarm/services/newsrv/backends/0/maintenance

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

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

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

リクエストパラメータ

フィールド 種類 説明 必須
アクション 文字列 希望する動作を設定します。 アクションは以下のとおりです。 up バックエンドはクライアントのリクエストを受け取る準備ができています。 メンテナンス バックエンドはクライアント要求を受信する準備ができていません。このアクションはクライアントに影響を与えずにバックエンドサーバーを停止するのに役立ちます。 true
モード 文字列 メンテナンスモードを選択してください。 利用可能なオプションは以下のとおりです。 ドレイン、バックエンドは新しい接続を受け入れませんが、現在の接続を引き続き処理します。 または 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://<zenlb_server>:444/zapi/v3.1/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プロファイルで使用されているように1つの仮想ポートだけでなく、さまざまなポートをバインドできます。 L4xNATファームで仮想ポートの範囲または特定の仮想ポートを選択できるようにするには、プロトコルタイプを選択することが必須です。 それ以外の場合、ファームは仮想IPからのすべてのポートをリッスンします(文字 'で示されます)。')。 TCPまたはUDPプロトコルを選択すると、ポート、 '、'の間のいくつかのポート、 ':'の間のポート範囲、または ''の付いたすべてのポートを指定することができます。'。 それらすべての組み合わせも有効です。

名前で農場を検索する

名前で農場を検索する

リクエスト例:

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

GET /farms/<farmname>

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

レスポンスボディ:

{
   "backends" : [
      {
         "id" : 0,
         "ip" : "192.168.55.40",
         "max_conns" : 0,
         "port" : "88",
         "priority" : 2,
         "status" : "undefined",
         "weight" : 1
      },
      {
         "id" : 1,
         "ip" : "192.168.55.41",
         "max_conns" : 0,
         "port" : "88",
         "priority" : 3,
         "status" : "undefined",
         "weight" : 2
      }
   ],
   "description" : "List farm l4farm",
   "params" : {
      "algorithm" : "weight",
      "fgenabled" : "false",
      "fglog" : "false",
      "fgscript" : "",
      "fgtimecheck" : 5,
      "listener" : "l4xnat",
      "nattype" : "nat",
      "persistence" : "",
      "protocol" : "tcp",
      "status" : "down",
      "ttl" : 120,
      "vip" : "192.168.100.241",
      "vport" : "88"
   }
}

応答パラメータ

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

農場オブジェクト:

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

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

フィールド 種類 説明
アルゴリズム 文字列 ファームで使用されている負荷分散アルゴリズムの種類。 オプションは以下のとおりです。 Leastconn 常に最小接続サーバーに接続します。 重量 重量による接続線形発送、 プリオ 利用可能な最もprioへの接続。
リスナー 文字列 リスナーは、ファームがクライアントからの要求をどのように処理するかを定義します。 情報フィールド、変更できません。
ナタイプ 文字列 ロードバランサレイヤ4コアの動作方法 オプションは以下のとおりです。 NAT sNATモードとも呼ばれ、バックエンドはクライアントに応答を送信するためにロードバランサーに応答します。 DNAT バックエンドはクライアントに直接応答します。ロードバランサーはバックエンドサーバーのゲートウェイとして設定する必要があります。
持続性 文字列 同じIPアドレスが同じサーバーに接続されます。 オプションは以下のとおりです。 "" 空の値、永続性は無効、 ip 永続化は有効化され、起点IPはセッション内の固有IDのように使用されます。
文字列 レイヤ4でバランスをとるためのプロトコル。 オプションは以下のとおりです。 プロファイルは任意のL4プロトコルを負荷分散します。 TCP ロードバランサはTCP L4プロトコルのバランスをとるだけです。 UDP ロードバランサはUDP L4プロトコルのバランスをとるだけです。 一口 ロードバランサは、SIPまたはVoIP L7プロトコルのバランスをとるだけです。 FTP ロードバランサはFTP L7プロトコルのバランスをとるだけです。 tftp ロードバランサはTFTP L7プロトコルのバランスをとるだけです。
status 文字列 農場の状況 使用可能な状況値は以下のとおりです。 ダウンファームが稼働していません。 再起動が必要ファームは稼働していますが、再起動アクションが保留中です。 重大なファームが稼働しており、すべてのバックエンドにアクセスできない、またはメンテナンス中です。 問題ファームは稼働しており、到達不能なバックエンドがいくつかありますが、ほとんどのバックエンドが稼働中です。 メンテナンス、ファームは稼働しており、稼働中のバックエンドがありますが、ほとんどのバックエンドはメンテナンスモードです。 up、農場は稼働しており、すべてのバックエンドは成功しています。
TTL このフィールド値は、クライアントのソースとバックエンドの間の持続性が割り当てられている秒数を秒単位で示します。 持続性を設定する必要があります。
VIP 文字列 仮想サービスが待機しているファームのIP。
vport 文字列 仮想サービスが待機しているファームのポート。 一意のポートを指定でき、範囲ポートは区切り文字を使って指定できます : そしていくつかのポートはセパレータで指定できます ,.
想像できる 文字列 農場の保護者の使用を可能にします。 true 農場の保護者が有効になっている、 false 農場の保護者は無効です。
fglog 文字列 ファーム保護者のログの使用を有効にします。 想像できる 有効にする必要があります。
fgscript 文字列 農場の保護者が確認するコマンド。 利用可能なコマンドはlibexecパスにあります。 想像できる 有効にする必要があります。
fgtimecheck ファームガーディアンは、「timetocheck」秒ごとにチェックします。 想像できる 有効にする必要があります。

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

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

新しい農場を作る

新しい農場を作る

リクエスト例:

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/v3.1/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","persistence":"","newfarmname":"l4farm", "protocol":"tcp",
"nattype":"nat","ttl":125,"vip":"178.62.126.152","vport":"81"}' 
https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/newfarml4

PUT /farms/<farmname>

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

リクエストパラメータ

フィールド 種類 説明
newfarmname 文字列 新しいファームの名前。 農場はそれを止めなければなりません。
アルゴリズム 文字列 ファームで使用されている負荷分散アルゴリズムの種類。 オプションは以下のとおりです。 Leastconn 常に最小接続サーバーに接続します。 重量 重量による接続線形発送、 プリオ 利用可能な最もprioへの接続。
ナタイプ 文字列 ロードバランサレイヤ4コアの動作方法 オプションは以下のとおりです。 NAT sNATモードとも呼ばれ、バックエンドはクライアントに応答を送信するためにロードバランサーに応答します。 DNAT バックエンドはクライアントに直接応答します。ロードバランサーはバックエンドサーバーのゲートウェイとして設定する必要があります。
持続性 文字列 同じIPアドレスが同じサーバーに接続されます。 オプションは以下のとおりです。 "" 空の値、永続性は無効、 ip 永続化は有効化され、起点IPはセッション内の固有IDのように使用されます。
文字列 レイヤ4でバランスをとるためのプロトコル。 オプションは以下のとおりです。 プロファイルは任意のL4プロトコルを負荷分散します。 TCP ロードバランサはTCP L4プロトコルのバランスをとるだけです。 UDP ロードバランサはUDP L4プロトコルのバランスをとるだけです。 一口 ロードバランサは、SIPまたはVoIP L7プロトコルのバランスをとるだけです。 FTP ロードバランサはFTP L7プロトコルのバランスをとるだけです。 tftp ロードバランサはTFTP L7プロトコルのバランスをとるだけです。
TTL このフィールド値は、クライアントのソースとバックエンドの間の持続性が割り当てられている秒数を秒単位で示します。 持続性を設定する必要があります。
VIP 文字列 仮想サービスが待機しているファームのIP。
vport 文字列 仮想サービスが待機しているファームのポート。 一意のポートを指定でき、範囲ポートは区切り文字を使って指定できます : そしていくつかのポートはセパレータで指定できます ,.

応答例:

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

応答パラメータ

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

農場の保護者を変更する

農場の保護者を変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"fgtimecheck":5,"fgscript":"Command of Farm Guardian","fgenabled":"true",
"fglog":"true","service":"service1"}' https://<zevenet_server>:444/zapi/v3.1/zapi.cgi/farms/l4farm/fg

Farmguardianは、バックエンドの状態を詳細に監視するために使用され、現在のサービス用の独自のスクリプト用に完全にパーソナライズされています。 farmguardianが問題を検出すると、自動的に実サーバーが無効になり、ブラックリストに登録されます。

PUT /farms/<farmname>/fg

L4xNATサービスのファーム保護者のパラメータを変更します。

リクエストパラメータ

フィールド 種類 説明
想像できる 文字列 農場の保護者の使用を可能にします。 true 農場の保護者が有効になっている、 false 農場の保護者は無効です。
fglog 文字列 ファーム保護者のログの使用を有効にします。 想像できる 有効にする必要があります。
fgscript 文字列 農場の保護者が確認するコマンド。 利用可能なコマンドはlibexecパスにあります。 想像できる 有効にする必要があります。
fgtimecheck ファームガーディアンは、「timetocheck」秒ごとにチェックします。 想像できる 有効にする必要があります。

応答例:

{
   "description" : "Modify farm guardian",
   "message" : "Success, some parameters have been changed in farm guardian in farm l4farm.",
   "params" : {
      "fgenabled" : "true",
      "fglog" : "true",
      "fgscript" : "check_tcp",
      "fgtimecheck" : 5
   }
}

応答パラメータ

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

L4xNAT - バックエンド

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

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

リクエスト例:

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

GET /farms/<farmname>/backends

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

応答例:

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

応答パラメータ

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

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

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

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

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.5.100","port":8080,"max_conns":400}' 
https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/l4farm/backends

POST /farms/<farmname>/backends

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

リクエストパラメータ

フィールド 種類 説明 必須
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。 true
ポート 実際のサービスがリッスンしているバックエンドのポート。 空の値が受け入れられ、仮想ポートと同じ構成が使用されます。
max_conns これは、バックエンドの同時接続の最大数です。 このフィールドの値が0の場合、バックエンドは接続制限を構成していません。
優先順位 これは現在の実サーバーの優先順位の値です。 1が最も優先されるところでは、常に最も利用可能なものへの接続。 デフォルト値は1です。
重量 これは、現在の実サーバーの重み値です。 重みが大きいバックエンドは、より多くの接続を受け取ります。 デフォルト値は1です。

応答例:

{
   "description" : "New farm backend",
   "message" : "Backend added",
   "params" : {
      "id" : 5,
      "ip" : "192.168.5.100",
      "port" : 8080,
      "max_conns" : 400,
      "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","port":8080,"max_conns":220,"priority":4,"weight":7}' 
  https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/l4farm/backends/2

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

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

リクエストパラメータ

フィールド 種類 説明
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
ポート 実際のサービスがリッスンしているバックエンドのポート。 空の値が受け入れられ、仮想ポートと同じ構成が使用されます。
max_conns これは、バックエンドの同時接続の最大数です。 このフィールドの値が0の場合、バックエンドは接続制限を構成していません。
優先順位 これは現在の実サーバーの優先順位の値です。 1が最も優先されるところでは、常に最も利用可能なものへの接続。
重量 これは、現在の実サーバーの重み値です。 重みが大きいバックエンドは、より多くの接続を受け取ります。

応答例:

{
   "description" : "Modify backend",
   "message" : "Backend modified",
   "params" : {
      "ip" : "192.168.5.40",
      "port" : 8080,
      "max_conns" : 220,
      "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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/l4farm/backends/1/maintenance

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

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

リクエストパラメータ

フィールド 種類 説明 必須
アクション 文字列 希望する動作を設定します。 アクションは以下のとおりです。 up バックエンドはクライアントのリクエストを受け取る準備ができています。 メンテナンス バックエンドはクライアント要求を受信する準備ができていません。このアクションはクライアントに影響を与えずにバックエンドサーバーを停止するのに役立ちます。 true
モード 文字列 メンテナンスモードを選択してください。 利用可能なオプションは以下のとおりです。 ドレイン、バックエンドは新しい接続を受け入れませんが、現在の接続を引き続き処理します。 または 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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/l4farm/backends/4

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

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

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

応答例:

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

データリンクファーム

データリンクファームプロファイルを使用すると、バックエンドがアップリンクルータまたはゲートウェイであるルートベースのファームを作成できます。 この種のファームプロファイルは、アップリンクチャネルマルチプレクサ(1入力と複数のルータ回線出力)としてロードバランサを使用して、複数のアップリンクWANルータアクセスを共有する準備ができています。 それ故、データリンクファームは、高利用可能通信リンクとして使用することができ、さらにルータ間の帯域幅の量に加わる帯域幅の増加としてリンクを使用することができる。

名前で農場を検索する

名前で農場を検索する

リクエスト例:

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

GET /farms/<farmname>

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

応答例:

{
   "backends" : [
      {
         "id" : 0,
         "interface" : "eth0",
         "ip" : "192.168.100.10",
         "priority" : 2,
         "status" : "undefined",
         "weight" : 2
      },
      {
         "id" : 1,
         "interface" : "eth0",
         "ip" : "192.168.100.11",
         "priority" : 2,
         "status" : "undefined",
         "weight" : 1
      }
   ],
   "description" : "List farm dlink",
   "params" : {
      "algorithm" : "weight",
      "status" : "down",
      "vip" : "192.168.100.199"
   }
}

応答パラメータ

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

農場オブジェクト:

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

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

フィールド 種類 説明
アルゴリズム 文字列 ファームで使用されている負荷分散アルゴリズムの種類。 オプションは以下のとおりです。 重量より高いウェイトを持つより多くのチャージバックエンドが与えられた場合、バランサはすべての利用可能なバックエンドの間で分配します。 プリオこれは、すべての接続をマイナー値でバックエンドに送信します。 優先順位.
status 文字列 農場の状況 使用可能な状況値は以下のとおりです。 ダウンファームが稼働していません。 再起動が必要ファームは稼働していますが、再起動アクションが保留中です。 重大なファームが稼働しており、すべてのバックエンドに到達できません。 問題ファームは稼働しており、到達不能なバックエンドがいくつかありますが、ほとんどのバックエンドが稼働中です。 up、農場は稼働しており、すべてのバックエンドは成功しています。
VIP 文字列 仮想サービスが待機しているファームのIP。

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

フィールド 種類 説明
id ファーム内のバックエンドの一意の識別子。
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
インタフェース 文字列 バックエンドが接続されているローカルネットワークインターフェースです。
優先順位 これは現在の実サーバーの優先順位の値です。 それはいつ使用されます アルゴリズム 優先順位が低く優先順位が低いため、このフィールドは構成です。
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 未定義バックエンドのステータスはチェックされていません。
重量 これは、現在の実サーバーの重み値です。 次の場合に使用されます アルゴリズム フィールドはウェイトとして設定です。

新しい農場を作る

新しい農場を作る

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
-d '{"farmname":"dlink", "vip":"192.168.100.241", "profile":"datalink" }' 
https://<zevenet_server>:444/zapi/v3.1/zapi.cgi/farms

POST /farms

新しいデータリンクファームを作成します。

リクエストパラメータ

フィールド 種類 説明 必須
農場名 文字列 ファーム名、一意の識別子 true
プロフィール 文字列 作成したファームのプロフィール。 データリンクファームの場合 データリンク true
VIP 文字列 仮想サービスが待機しているファームのIP。 true

応答例:

{
   "description" : "Creating farm 'dlink'",
   "params" : {
      "farmname" : "dlink",
      "interface" : "eth0",
      "profile" : "datalink",
      "vip" : "192.168.100.241"
   }
}

応答パラメータ

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

農場を変更する

農場を変更する

リクエスト例:

curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
-d '{"newfarmname":"dlink2", "vip":"192.168.100.199","algorithm":"weight"}' 
https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/dlink

PUT /farms/<farmname>

データリンクファームの構成を変更します。

リクエストパラメータ

フィールド 種類 説明
newfarmname 文字列 新しい農場の名前 農場は止めなければなりません。
アルゴリズム 文字列 ファームで使用されている負荷分散アルゴリズムの種類。 オプションは以下のとおりです。 重量より高いウェイトを持つより多くのチャージバックエンドが与えられた場合、バランサはすべての利用可能なバックエンドの間で分配します。 プリオこれは、すべての接続をマイナー値でバックエンドに送信します。 優先順位.
VIP 文字列 仮想サービスが待機しているファームのIP。

応答例:

{
   "description" : "Modify farm dlink",
   "params" : {
      "algorithm" : "weight",
      "vip" : "192.168.100.199",
      "newfarmname" : "dlink2"
   }
}

応答パラメータ

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

データリンク - バックエンド

データリンクファームのバックエンドは、サービスをルーティングするためのゲートウェイです。 サービスはこのゲートウェイ間で多重化され、そのうちのいくつかは利用できません、サービスは他を使用します。

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

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

リクエスト例:

curl  -k -X GET -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/dlink/backends

GET /farms/<farmname>/backends

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

応答例:

[
   {
      "id" : 6,
      "interface" : "eth0",
      "ip" : "192.168.100.10",
      "priority" : 2,
      "status" : "undefined",
      "weight" : 2
   },
   {
      "id" : 7,
      "interface" : "eth0",
      "ip" : "192.168.100.11",
      "priority" : 2,
      "status" : "undefined",
      "weight" : 1
   }
]

応答パラメータ

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

フィールド 種類 説明
id ファーム内のバックエンドの一意の識別子。 この識別子はシステムによって生成されます。
インタフェース 文字列 バックエンドが接続されているローカルネットワークインターフェースです。
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。
優先順位 これは現在のバックエンドの優先順位の値です。 それはいつ使用されます アルゴリズム 優先順位が低く優先順位が低いため、このフィールドは構成です。
status 文字列 バックエンドのステータス 可能な値は次のとおりです。 upファームが実行されており、バックエンドは接続を受信する準備ができています。 ダウンファームが実行中で、サービスはバックエンドが機能していないことを検出しました。 未定義バックエンドのステータスはチェックされていません。
重量 これは、現在のバックエンドの重み値です。 次の場合に使用されます アルゴリズム フィールドはウェイトとして設定です。

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

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

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
-d '{"ip":"192.168.100.10","interface":"eth0","priority":2,"weight":2}' 
https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/dlink/backends

POST /farms/<farmname>/backends

特定のデータリンクファームに新しいバックエンドを作成します。

リクエストパラメータ

フィールド 種類 説明 必須
ip 文字列 実際のサービスがリッスンしているバックエンドのIP。 true
インタフェース 文字列 バックエンドが接続されているローカルネットワークインターフェースです。 true
優先順位 これは現在の実サーバーの優先順位の値です。 アルゴリズム 優先順位が低く優先順位が低いため、このフィールドは構成です。 デフォルト値は1です。
重量 これは、現在のバックエンドの重み値です。 次の場合に使用されます アルゴリズム フィールドはウェイトとして設定です。 デフォルト値は1です。

応答例:

{
   "description" : "New farm backend",
   "message" : "Backend added",
   "params" : {
      "id" : 6,
      "interface" : "eth0",
      "ip" : "192.168.100.10",
      "priority" : 2,
      "weight" : 2
   }
}

応答パラメータ

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

バックエンドを修正する

バックエンドを修正する

リクエスト例:

 curl -k -X PUT -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
  -d '{"ip":"192.168.102.50","interface":"eth0", "weight":1,"timeout":1}' 
  https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/datalink/backends/2

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

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

リクエストパラメータ

フィールド 種類 説明
文字列 ip 実際のサービスがリッスンしているバックエンドのIP。
インタフェース 文字列 バックエンドが接続されているローカルネットワークインターフェースです。
タイムアウト 特定のリクエストに応答するのはバックエンドのタイムアウトです。
重量 これは、現在のバックエンドの重み値です。

応答例:

{
   "description" : "Modify backend",
   "message" : "Backend modified",
   "params" : {
      "interface" : "eth0",
      "ip" : "192.168.102.50",
      "timeout" : 1,
      "weight" : 1
   }
}

応答パラメータ

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

バックエンドを削除する

バックエンドを削除する

リクエスト例:

curl -k -X DELETE -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/farms/dlink/backends/4

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

データリンクファームのサービス内の特定のバックエンドを削除します。 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://<zenlb_server>:444/zapi/v3.1/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 文字列 このフィールドは、このインターフェイスが 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/v3.1/zapi.cgi/interfaces/gateway

GET /interfaces/gateway

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

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

応答例:

{
   "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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/interfaces

PUT /interfaces/gateway

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

応答例:

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

リクエストパラメータ

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

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

DELETE /interfaces/gateway

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

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

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

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/zapi.cgi/interfaces/gateway

応答メッセージ

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

応答例:

{
   "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://<zenlb_server>:444/zapi/v3.1/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 文字列 このフィールドは、このインターフェイスが VLAN インターフェイスの親であるかどうかを示します。 このフィールドは NIC インターフェイス専用です。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 パケットを別のネットワークセグメントに送信するために使用されるIP。
MAC 文字列 リンク層の一意の識別子。 それは修正不可能です。
文字列 インターフェイスの名前。 インターフェイスの一意の識別子として使用されます。
status 文字列 値は upインターフェイスはパケットを受信できます。 ダウン、インターフェイスはパケットを受信できません。

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

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

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/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インターフェイスはパケットを受信できます。 ダウン、インターフェイスはパケットを受信できません。

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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/interfaces/nic/eth1

PUT /interfaces/nic/<name>

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

リクエストパラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。

応答例:

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

応答パラメータ

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

NIC設定を削除する

NIC設定を削除する

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/interfaces/vlan/eth0.1

PUT /interfaces/vlan/<name>

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

リクエストパラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP それは親インタフェースIPとは異なる場合があります。
ネットマスク 文字列 インターフェイスが機能しているネットワークセグメントを定義します。
ゲートウェイ 文字列 異なるネットワークセグメントのパケットを送信するために使用されるIP。

応答例:

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

応答パラメータ

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

VLANインタフェースを削除

VLANインタフェースを削除

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/interfaces/virtual/eth0:virtiface

PUT /interfaces/virtual/<name>

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

リクエストパラメータ

フィールド 種類 説明
ip 文字列 インターフェイスのIP IPは、親インターフェイスと同じネットワークセグメントになければなりません。

応答例:

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

応答パラメータ

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

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

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

リクエスト例:

curl -k -X DELETE -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zenlb_server>:444/zapi/v3.1/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://<zenlb_server>:444/zapi/v3.1/zapi.cgi/interfaces/virtual/eth0:virtiface/actions

POST /interfaces/virtual/<name>/actions

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

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

リクエストパラメータ

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

応答例:

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

応答パラメータ

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

モニタリング - 統計

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

システム統計を表示する

システム統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
https://<zevenet_server>:444/zapi/v3.1/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.1 in in" : 0,
         "eth0.1 out out" : 0,
         "eth1 in in" : 234.72,
         "eth1 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/v3.1/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" : "2703.88",
            "interface" : "eth0",
            "out" : "50917.65"
         },
         {
            "in" : "815.69",
            "interface" : "eth0.1",
            "out" : "4300.38"
        }
      ]
   }
}

応答パラメータ

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

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

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

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

農場の統計を表示する

農場の統計を表示する

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v3.1/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/v3.1/zapi.cgi/stats/farms/httpFarm

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" : null,
         "id" : 5,
         "ip" : "192.168.5.100",
         "pending" : 0,
         "port" : "8080",
         "status" : "up"
      }
   ],
   "description" : "List farm stats"
}

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

レスポンスはキー付きのJSONになります バックエンド そして以下のパラメータでオブジェクト配列を評価します。

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

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

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

監視 - グラフ

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

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

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

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

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

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v3.1/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",
      "eth1",
      "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/v3.1/zapi.cgi/graphs/farms/httpweb

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

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

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

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v3.1/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/v3.1/zapi.cgi/graphs/farms/httpweb/daily

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

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v3.1/zapi.cgi/graphs/interfaces/eth0/monthly

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

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>"
https://<zevenet_server>:444/zapi/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/zapi.cgi/system/users

GET /system/users

システムで利用可能なユーザーを一覧表示します。

応答例:

{
   "description" : "Get users",
   "params" : [
      {
         "status" : "true",
         "user" : "root"
      },
      {
         "status" : "true",
         "user" : "zapi"
      }
   ]
}

応答パラメータ

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

フィールド 種類 説明
status 文字列 ユーザーステータス。 可能な値は次のとおりです。 trueユーザーがアクティブになります。 か否か falseユーザーは無効になります。
user 文字列 ユーザー名

zapiユーザーを取得する

zapiユーザーを取得する

リクエスト例:

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

GET /system/users/zapi

zapiユーザー構成を表示します。 このパラメータはzapiを通してZevenetサービスにアクセスするために必要です。

応答例:

{
   "description" : "Zapi user configuration.",
   "params" : {
      "key" : "root",
      "status" : "true"
   }
}

応答パラメータ

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

フィールド 種類 説明
キー 文字列 zapiで認証するための鍵。 これはパラメータです ZAPI_KEY zapiの呼び出しに使用されます。
status 文字列 Zapiユーザーの状況 その値が truezapiを使うことは可能です。 か否か falsezapiは無効化されているのでリクエストを送信することはできません。

zapiユーザー構成を変更する

zapiユーザー構成を変更する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
 -d '{"key":"newzapikey","status":"enable","newpassword":"password1234"}' 
 https://<zevenet_server>:444/zapi/v3.1/zapi.cgi/system/users/zapi

POST /system/users/zapi

zapiユーザー構成を変更します。 このパラメータはzapiを通してZevenetサービスにアクセスするために必要です。

リクエストパラメータ

フィールド 種類 説明
キー 文字列 zapiで認証するための鍵。 これはパラメータです ZAPI_KEY zapiの呼び出しに使用されます。
新しいパスワード 文字列 zapiユーザーの新しいパスワード。
status 文字列 Zapi ユーザーのステータス。 可能な値は次のとおりです。 enable zapi ユーザーを有効にするか、 disable zapi ユーザーを無効にします。 zapi ユーザーが無効になっている場合は、リクエストを送信できません。

応答例:

{
   "description" : "Zapi user settings.",
   "message" : "Settings was changed successful.",
   "params" : {
      "key" : "newzapikey",
      "newpassword" : "password1234",
      "status" : "enable"
   }
}

応答パラメータ

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

rootパスワードを変更する

rootパスワードを変更する

リクエスト例:

curl -k -X POST -H 'Content-Type: application/json' -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
{"password":"admin","newpassword":"alwaysisbetterastrongpass"} 
https://<zevenet_server>:444/zapi/v3.1/zapi.cgi/system/users/root

POST /system/users/root

rootパスワードを変更します。 このユーザーは、GUIを介してzevenetサービスにアクセスするために使用されます。

リクエストパラメータ

フィールド 種類 説明 必須
パスワード 文字列 現在のrootユーザーのパスワード。 true
新しいパスワード 文字列 rootユーザーの新しいパスワード true

応答例:

{
   "description" : "User settings.",
   "message" : "Settings was changed succesful.",
   "params" : {
      "newpassword" : "alwaysisbetterastrongpass",
      "password" : "admin"
   }
}

応答パラメータ

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

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

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

リクエスト例:

curl -k -X GET -H "ZAPI_KEY: <ZAPI_KEY_STRING>" 
https://<zevenet_server>:444/zapi/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/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/v3.1/zapi.cgi/system/backup/firstConf/actions

POST /system/backup/<name>/actions

バックアップファイルから設定を復元します。 バックアップの一意の識別子です。

リクエストパラメータ

フィールド 種類 説明
アクション 文字列 バックアップ設定を復元するには、値を 適用する.

応答例:

{
   "description" : "Apply a backup to the system",
   "params" : {
      "action" : "apply"
   }
}

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

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

リクエスト例:

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

GET /system/supportsave

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