gRPC エンドツーエンド構成
エンドツーエンドの gRPC 設定の仕組み
-
gRPC 構成をデプロイするには、まず HTTP プロファイルで HTTP/2 を有効にし、サーバー側で HTTP/2 サポートをグローバルに有効にする必要があります。
-
クライアントが gRPC リクエストを送信すると、負荷分散仮想サーバーはポリシーを使用して gRPC トラフィックを評価します。
-
ポリシー評価に基づいて、負荷分散仮想サーバー(gRPC サービスがバインドされている)は要求を終了し、gRPC 要求としてバックエンドの gRPC サーバーに転送します。
-
同様に、gRPC サーバーがクライアントに応答すると、アプライアンスは応答を終了し、gRPC 応答としてクライアントに転送します。
gRPC サーバーに送信された gRPC リクエストの例
```
HEADERS (flags = END_HEADERS)
: method = POST
: scheme = http
: path = /helloworld.citrix-adc/SayHello
: authority = 10.10.10.10.:80
grpc-timeout = 15
content-type = application/grpc+proto
grpc-encoding = gzip
DATA (flags = END_STREAM)
<Length-Prefixed Message>
```
gRPCサーバーからNetScaler ADCアプライアンスへのgRPC応答ヘッダーの例
```
HEADERS (flags = END_HEADERS)
: status = 200
Grpc-encoding= gzip
Content-type = application/grpc+proto
DATA
<Length-Prefixed Message>
HEADERS (flags = END_STREAM, END_HEADERS)
grpc-status = 0 # OK
```
CLIを使用してgRPCを構成する
-
HTTP/2 および HTTP/2 ダイレクトが有効になっている HTTP プロファイルを追加します。
-
HTTP パラメータでグローバルバックエンド HTTP/2 サポートを有効にする
-
SSL/HTTP タイプの負荷分散仮想サーバーを追加し、HTTP プロファイルを設定します
-
gRPC エンドポイント用サービスの追加と HTTP プロファイルの設定
-
gRPC エンドポイントサービスを負荷分散仮想サーバーにバインド
HTTP/2 および HTTP/2 ダイレクトが有効な状態で HTTP プロファイルを追加
add ns httpProfile <name> - http2 ( ENABLED | DISABLED ) [-http2Direct ( ENABLED | DISABLED )]
add ns httpProfile http2gRPC -http2Direct ENABLED -http2 ENABLED
HTTP パラメータによるグローバルバックエンド HTTP/2 サポートを有効にする
set ns httpParam -http2ServerSide( ON | OFF )
set ns httpParam -http2ServerSide ON
SSL/HTTP タイプの負荷分散仮想サーバーを追加し、HTTP プロファイルを設定します
add lb vserver <name> <service type> [(<IP address>@ <port>)] [-httpProfileName <string>]
add lb vserver lb-grpc HTTP 10.10.10.11 80 -httpProfileName http2gRPC
gRPC エンドポイント用サービスの追加と HTTP プロファイルの設定
add service <name> (<IP> | <serverName> ) <serviceType> <port> [-httpProfileName <string>]
add service svc-grpc 10.10.10.10 HTTP 80 -httpProfileName http2gRPC
gRPC エンドポイントサービスを負荷分散仮想サーバーにバインド
bind lb vserver <name> <serviceName>
bind lb vserver lb-grpc svc-grpc
GUI を使用してエンドツーエンドの gRPC デプロイメントを設定
HTTP/2 および HTTP/2 ダイレクトが有効な状態で HTTP プロファイルを追加
-
System > Profilesに移動してHTTP Profilesをクリックします。
-
新しい HTTP プロファイルまたは既存の HTTP プロファイルの HTTP/2 チェックボックスを選択します。
HTTP パラメータでグローバルバックエンド HTTP/2 サポートを有効にする
SSL/HTTP タイプの負荷分散仮想サーバーを追加し、HTTP プロファイルを設定します
gRPC エンドポイント用サービスの追加と HTTP プロファイルの設定
-
[Traffic Management]>[Load Balancing]>[Services] の順に移動します。
-
負荷分散サービスのページで 、 プロファイルセクションに移動します 。