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 端到端配置
gRPC 端到端配置的工作方式是通过 HTTP/2 协议从客户端发送 gRPC 请求,然后再次转发 GrPC 服务器响应的 gRPC 消息。
端到端 grPC 配置的工作原理
下图显示了 gRPC 配置在 Citrix ADC 设备中的工作原理。
- 要部署 gRPC 配置,必须首先在 HTTP 配置文件中启用 HTTP/2,还必须在服务器端启用全局 HTTP/2 支持。
- 当客户端发送 gRPC 请求时,负载平衡虚拟服务器将使用策略评估 gRPC 流量。
- 根据策略评估,负载平衡虚拟服务器(GrPC 服务绑定到它)终止请求并将其作为 gRPC 请求转发到后端 gRPC 服务器。
- 同样,当 gRPC 服务器响应客户端时,设备会终止响应并将其作为 gRPC 响应转发给客户端。
发送到 gRPC 服务器的 gRPC 请求示例
请求标头作为 HEADERS + 延续帧中的 HTTP/2 标头发送。
```
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>
<!--NeedCopy--> ```
从 GRPC 服务器到 Citrix ADC 设备的 GRPC 响应头示例
仅响应标题和预告片在单个 HTTP/2 头帧块中交付。预计大多数响应都有标题和预告片,但是对于产生即时错误的呼叫,允许 Tailers-Only。即使 HTTP 状态码正常,状态也必须在 Tailers 中发送。
```
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
<!--NeedCopy--> ```
使用 CLI 配置 gRPC
要配置端到端 gRPC 部署,必须完成以下操作:
- 添加启用 HTTP/2 和 HTTP/2 直接启用的 HTTP 配置文件。
- 在 HTTP 参数中启用全局后端 HTTP/2 支持
- 添加 SSL/HTTP 类型的负载平衡虚拟服务器并设置 HTTP 配置文件
- 为 grPC 端点添加服务并设置 HTTP 配置文件
- 将 gRPC 端点服务绑定到负载平衡虚拟服务器
在 HTTP/2 和 HTTP/2 直接启用的情况下添加 HTTP 配置文件
您必须在 HTTP 配置文件中启用 HTTP/2 和 HTTP/2 直接参数。此外,如果需要使用通过 HTTP/2 明文的 gRPC,则必须启用 HTTP/2 直接参数。
在命令提示符下,键入:
add ns httpProfile <name> - http2 ( ENABLED | DISABLED ) [-http2Direct ( ENABLED | DISABLED )]
示例:
add ns httpProfile http2gRPC -http2Direct ENABLED -http2 ENABLED
通过 HTTP 参数启用全局后端 HTTP/2 支持
使用 Citrix ADC 命令行在服务器端全局启用 HTTP/2 支持。
在命令提示符下,键入:
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.11 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 端点服务绑定到负载平衡虚拟服务器
要使用 Citrix ADC 命令界面将 gRPC 服务绑定到负载平衡虚拟服务器,请执行以下操作:
在命令界面,键入:
bind lb vserver <name> <serviceName>
示例:
bind lb vserver lb-grpc svc-grpc
使用 GUI 配置端到端 gRPC 部署
完成以下步骤以使用 GUI 配置 gRPC。
在 HTTP/2 和 HTTP/2 直接启用的情况下添加 HTTP 配置文件
- 导航到系统 > 配置文件,然后单击 HTTP 配置文件。
- 在新的 HTTP 配置文件或现有 HTTP 配置文件中启用 HTTP/2 选项
在 HTTP 参数中启用全局后端 HTTP/2 支持
- 导航到“系统”>“设置”>“HTTP 参数”。
- 在“配置 HTTP 参数”页中,选择服务器端的 HTTP/2。
- 单击 OK(确定)。
添加 SSL/HTTP 类型的负载平衡虚拟服务器并设置 HTTP 配置文件
- 导航到流量管理 > 负载平衡 > 虚拟服务器。
- 单击添加为 GRPC 通信创建负载平衡虚拟服务器。
- 在“负载平衡虚拟服务器”页中,单击 概要文件。
- 在“配置文件”部分中,选择配置文件类型为 HTTP。
- 单击 确定 ,然后单击完成。
为 grPC 端点添加服务并设置 HTTP 配置文件
- 导航到流量管理 > 负载平衡 > 服务。
- 单击添加为 GRPC 通信创建应用程序服务器。
- 在“负载平衡服务”页面中,转到“概要文件”部分。
- 在配置文件下,为 GRPC 端点添加 HTTP 配置文件。
- 单击 确定 ,然后单击完成。
有关与负载平衡相关的详细 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.