-
-
-
VMware ESX、Linux KVM、およびCitrix HypervisorでCitrix ADC VPXのパフォーマンスを最適化する
-
Linux-KVMプラットフォームへのCitrix ADC VPXインスタンスのインストール
-
-
-
-
-
-
-
-
-
-
-
-
-
This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
gRPC bridging
クライアントがリクエストを送信するとき HTTP/1.1 プロトコルでは、Citrix ADCアプライアンスはgRPCリクエストのブリッジングをサポートします HTTP/1.1 gRPCサーバーに準拠しているプロトコル HTTP/2 プロトコル。同様に、リバースブリッジングでは、アプライアンスはクライアントのgRPC要求を HTTP/2 プロトコルを実行し、のgRPCサーバーに準拠してgRPCリクエストのリバースブリッジを実行します。 HTTP/1.1 プロトコル。
How gRPC bridging works
このシナリオでは、Citrix ADCアプライアンスは、受信したgRPCコンテンツをシームレスにブリッジします。 HTTP/1.1 接続し、それをバックエンドgRPCサーバーに転送します HTTP/2.
次の図は、gRPCブリッジ構成でコンポーネントがどのように相互作用するかを示しています。
- gRPCリクエストが送信されると、Citrix ADCアプライアンスは接続が HTTP/1.1 コンテンツタイプは application/grpc. ザ・ HTTP/1.1 リクエストは、次の疑似ヘッダーに変換されます。
- でgRPCリクエストを受信すると HTTP/1.1. Content-Typeヘッダーで示される接続では、ADCアプライアンスはリクエストをgRPCに変換します。 HTTP/2 以下のように:
:method: Method-name in HTTP/1.1 request
:path: Path is HTTP/1.1 request
content-type: application/grpc
<!--NeedCopy-->
- ポリシー評価に基づいて、負荷分散仮想サーバー(gRPCサービスがバインドされている)は要求を終了するか、転送します HTTP/2 バックエンドgRPCサーバーへのフレーム。
- で応答を受信すると HTTP/2 gRPCサーバーからの接続、アプライアンスは受信するまでバッファリングします HTTP/2 トレーラーを開き、gRPCステータスコードを確認します。ゼロ以外のgRPCエラーステータスの場合、アプライアンスはマッピングHTTPステータスコードを探し、適切なものを送信します HTTP/1.1 エラー応答。
CLIを使用してgRPCブリッジを構成する
To configure gRPC reverse bridging, you must complete the following steps:
- HTTP/2 および HTTP/2 ダイレクトを有効にした HTTP プロファイルを追加
- グローバルバックエンドを有効にする HTTP/2 HTTPパラメータでのサポート
- SSL/HTTP タイプの負荷分散仮想サーバーを追加し、HTTP プロファイルを設定します
- gRPCエンドポイントのサービスを追加し、HTTPプロファイルを設定します
- gRPCエンドポイントサービスを負荷分散仮想サーバーにバインドする
- gRPCステータスコードをゼロ以外のgRPCステータスのHTTP応答にマップします
- 時間および/またはサイズによるgRPCバッファリングの構成
HTTP/2 および HTTP/2 ダイレクトを有効にした HTTP プロファイルを追加
設定を開始するには、HTTP プロファイルで HTTP/2 機能を有効にする必要があります。クライアントがHTTP1.1リクエストを送信すると、アプライアンスはリクエストをブリッジしてバックエンドサーバーに転送します。
コマンドプロンプトで入力します。
add ns httpProfile <name> - http2 ( ENABLED | DISABLED ) [-http2Direct ( ENABLED | DISABLED )]
例:
add ns httpProfile http2gRPC -http2Direct ENABLED -http2 ENABLED
グローバルバックエンドを有効にする HTTP/2 HTTPパラメータでのサポート
To enable HTTP/2 support globally on the server side by using the Citrix ADC command line.
コマンドプロンプトで入力します。
set ns httpParam -http2ServerSide( ON | OFF )
例:
set ns httpParam -http2ServerSide ON
SSL/HTTP タイプの負荷分散仮想サーバーを追加し、HTTP プロファイルを設定します
Citrix ADC コマンドインターフェイスを使用して負荷分散仮想サーバーを追加するには
コマンドプロンプトで入力します。
add lb vserver <name> <service type> [(<IP address>@ <port>)] [-httpProfileName <string>]
例:
add lb vserver lb-grpc HTTP 10.10.10.10 80 -httpProfileName http2gRPC
注:
タイプSSLの負荷分散仮想サーバーを使用している場合は、サーバー証明書をバインドする必要があります。詳細については、「 サーバー証明書のバインド 」のトピックを参照してください。
gRPCエンドポイントのサービスを追加し、HTTPプロファイルを設定します
Citrix ADC コマンドインターフェイスを使用して、HTTPプロファイルを使用してgRPCサービスを追加します。
コマンドプロンプトで入力します。
add service <name> (<IP> | <serverName> ) <serviceType> <port> [-httpProfileName <string>]
例:
add service svc-grpc 10.10.10.10 HTTP 80 -httpProfileName http2gRPC
gRPCエンドポイントサービスを負荷分散仮想サーバーにバインドする
CLIを使用して、gRPCエンドポイントサービスを負荷分散仮想サーバーにバインドします。
コマンドインターフェイスで、次のように入力します。
bind lb vserver <name> <serviceName>
例:
bind lb vserver lb-grpc svc-grpc
gRPCステータスコードをHTTP/1.1 応答のHTTPステータスコードにマップします
gRPCブリッジングシナリオでは、gRPCサービスはgRPCステータスコードでリクエストに応答します。アプライアンスは、gRPCステータスコードを対応するHTTP応答コードと理由フレーズにマップします。マッピングは、以下の表に基づいて行われます。送信時のCitrix ADCアプライアンス HTTP/1.1 クライアントへの応答は、HTTPステータスコードと理由フレーズを送信します。
gRPC status-code | HTTP response status-code | HTTP response reason-phrase |
---|---|---|
OK = 0 | 200 | OK |
CANCELLED = 1 | 499 | * |
UNKNOWN = 2 | 500 | 内部サーバー エラー |
INVALID_ARGUMENT = 3 | 400 | 不正な要求 |
DEADLINE_EXCEEDED = 4 | 504 | Gateway Timeout |
NOT_FOUND = 5 | 404 | * |
ALREADY_EXISTS = 6 | 409 | 競合 |
PERMISSION_DENIED = 7 | 403 | 禁止 |
UNAUTHENTICATED = 16 | 401 | 未承認 |
RESOURCE_EXHAUSTED = 8 | 429 | * |
FAILED_PRECONDITION = 9 | 400 | 不正な要求 |
ABORTED = 10 | 409 | 競合 |
OUT_OF_RANGE = 11 | 400 | 不正な要求 |
UNIMPLEMENTED = 12 | 501 | Not Implemented |
INTERNAL = 13 | 500 | 内部サーバー エラー |
UNAVAILABLE = 14 | 503 | Service Unavailable |
DATA_LOSS = 15 | 500 | 内部サーバー エラー |
時間および/またはサイズによるgRPCバッファリングの構成
Citrix ADCアプライアンスは、応答トレーラーが受信されるまで、バックエンドサーバーからのgRPC応答をバッファリングします。これにより、双方向のgRPC呼び出しが中断されます。また、gRPC応答が大きい場合、応答を完全にバッファリングするために大量のメモリを消費します。この問題を解決するために、gRPCブリッジ構成が拡張され、時間によるバッファリングが制限されます。 and/or サイズ。バッファサイズまたは時間制限がしきい値を超えると、制限のいずれかがトリガーされた場合でも(設定されたバッファサイズ内でトレーラーが受信されない場合、または設定されたタイムアウトが発生した場合)、アプライアンスはバッファリングを停止し、応答をクライアントに転送します。その結果、構成されたポリシーとその式(grpc-statusコードに基づく)が期待どおりに機能しません。
時間によってgRPCバッファリングを制限するには and/or CLIによるサイズで、新しいHTTPプロファイルを追加するときに構成したり、既存のプロファイルを変更するときに構成したりできます。
コマンドプロンプトで入力します。
add ns httpProfile http2gRPC [-grpcHoldLimit <positive_integer>] [-grpcHoldTimeout <positive_integer>]
または
set ns httpProfile http2gRPC [-grpcHoldLimit <positive_integer>] [-grpcHoldTimeout <positive_integer>]
各項目の意味は次のとおりです。
grpcholdlimit
。トレーラーが受信されるまでgRPCパケットをバッファリングできるバイト単位の最大サイズ。パラメータといずれか1つを設定できます。
デフォルト値:131072 最小値:0 最大値:33554432
grpcholdtimeout
。トレーラーが受信されるまでgRPCパケットをバッファリングできる最大時間(ミリ秒単位)。値は100の倍数である必要があります。
デフォルト値:1000
最小値:0
最大値:180000
例:
add httpprofile http2gRPC -grpcholdlimit 1048576 -grpcholdtimeout 5000
set httpprofile http2gRPC -grpcholdlimit 1048576 -grpcholdtimeout 5000
GUIを使用してgRPCブリッジを構成する
Citrix ADC GUIを使用してgRPCブリッジングを構成するには、次の手順を実行します。
HTTP/2 および HTTP/2 ダイレクトを有効にした HTTP プロファイルを追加
- System > Profilesに移動してHTTP Profilesをクリックします。
- HTTPプロファイルでHTTP/2を選択します。
グローバルバックエンドを有効にする HTTP/2 HTTPパラメータでのサポート
- System > Settings > HTTP Parametersに移動します。
- [ HTTPパラメータ の構成]ページで、[ HTTP/2 サーバー側 オプション。
- [OK] をクリックします。
SSL/HTTP タイプの負荷分散仮想サーバーを追加し、HTTP プロファイルを設定します
- Traffic Management > Load Balancing > Virtual Serversに移動します。
- AddをクリックしてgRPCトラフィックの負荷分散仮想サーバーを作成します。
- Load Balancing Virtual ServerページでProfilesをクリックします。
- [ プロファイル] セクションで、プロファイルタイプをHTTPとして選択します。
- [ OK]、[ 完了]の順にクリックします。
gRPCエンドポイントのサービスを追加してHTTPプロファイルを設定する
- Traffic Management > Load Balancing > Servicesに移動します。
- AddをクリックしてgRPCトラフィックのアプリケーションサーバーを作成します。
- [ 負荷分散サービス]ページで、[ プロファイル] セクションに移動します。
- [ プロファイル]で、gRPCエンドポイントのHTTPプロファイル を追加します。
- [ OK]、[ 完了]の順にクリックします。
gRPCエンドポイントのサービスを負荷分散仮想サーバーにバインドする
- Traffic Management > Load Balancing > Virtual Serversに移動します。
- AddをクリックしてgRPCトラフィックの負荷分散仮想サーバーを作成します。
- [ 負荷分散仮想サーバー ] ページで、[ サービスとサービスグループ ] セクションをクリックします。
- [ 負荷分散仮想サーバーサービスのバインド] ページで、バインドするgRPCサービスを選択します。
- [閉じる]、[完了]の順にクリックします。
GUIを使用して、時間とサイズでgRPCバッファリングを構成します
- System > Profilesに移動してHTTP Profilesをクリックします。
- HTTPプロファイルでHTTP/2を選択します。
-
「 HTTPプロファイル の構成」ページで、以下のパラメーターを設定します。
- grpcHoldTimeout. トレーラーが受信されるまでgRPCパケットをバッファリングする時間をミリ秒単位で入力します。
- grpcHoldLimit. トレーラーが受信されるまでgRPCパケットをバッファリングするための最大サイズをバイト単位で入力します。
- [ OK]をクリックして[閉じる]をクリックします。
サービスと負荷分散仮想サーバーをバインドするための GUI 手順の詳細については、「 負荷分散 」のトピックを参照してください。
共有
共有
This Preview product documentation is Citrix Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Citrix Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Citrix product purchase decisions.
If you do not agree, select Do Not Agree to exit.