ADC

带有重写策略的 gRPC

带重写策略的 gRPC 用例解释了 NetScaler 设备在重写 gRPC 请求或响应中的某些信息时是如何工作的。下图显示了组件的交互作用。

下图显示了组件如何使用重写策略配置在 gRPC 中相互交互。 带有重写策略的 gRPC

  1. 在设备上启用重写功能。
  2. 配置重写操作以修改、添加或删除 gRPC 标头。
  3. 配置重写策略以确定必须对哪些 gRPC 请求(流量)采取操作。
  4. 将重写策略绑定到负载平衡虚拟服务器,以检查流量是否与策略表达式相匹配。
  5. 通过使用重写策略,您可以基于 gRPC 状态代码执行以下操作。
    1. 修改来自 gRPC Web 服务器的响应。
    2. 修改、添加或删除 gRPC 标头。
    3. 修改发往 gRC 服务器的请求的 URL。

使用重写策略配置 gRPC 呼叫终止

要使用重写策略配置 gRPC 呼叫终止,必须完成以下步骤:

  1. 启用重写功能
  2. 添加重写策略
  3. 将重写策略绑定到负载平衡虚拟服务器

启用重写功能

要使用重写功能,必须先将其启用。

在命令提示符下,键入:

enable ns rewrite

添加重写策略

配置重写操作后,接下来必须配置重写策略以选择 NetScaler 设备必须重写的 gRPC 请求。

在命令提示符下,键入:

add rewrite policy <name> <expression> <action> [<undefaction>]-appFlowaction <actionName>

示例:

add rewrite policy grpc-rewr_pol1 "http.res.header(\"grpc-status\").NE(\"0\")" RESET

将重写策略绑定到负载平衡虚拟服务器

要使策略生效,必须使用 gRPC 服务将其绑定到负载平衡虚拟服务器。

在命令提示符下,键入:

bind rewrite global <policyName> <priority> [<gotoPriorityExpression> [-type <type>] [-invoke (<labelType> <labelName>)]

示例:

bind lb vserver lb-grpc –policyName grpc-rewr_pol1 –priority 100

带有重写策略的 gRPC