Nginx【有与无】【NP-AG3-6】gRPC健康检查

说明

  • NP: NGINX Plus
  • AG: Admin Guide
  • 会话: session
  • 上游:  upstream
  • 流量:traffic
  • 后端:backend

目录

1.gRPC健康检查

2.介绍

3.先决条件

4.接受健康检查协议的gRPC服务器

5.不接受运行状况检查协议的gRPC服务器

6.也可以看看


1.gRPC健康检查

本章介绍如何为负载平衡的上游服务器组中的gRPC服务器配置运行状况检查。

2.介绍

NGINX Plus可以通过进行主动运行状况检查来监视上游服务器的运行状况。 NGINX Plus R23支持gRPC运行状况检查协议,以便可以测试上游gRPC服务处理新请求的能力。 这在动态和容器化环境中尤其重要。 添加gRPC服务的新实例时,将请求发送到完全运行的服务很重要。

3.先决条件

你已经配置了处理gRPC网络流量的上游服务器组,并指定了一个保留这些服务器状态的共享内存区域,例如:

stream {
    #...
    upstream grpc_backend {
        zone   grpc_backend 64k;
        server 10.0.0.1:50051;
        server 10.0.0.2:50051;
    }
    #...
}

你已经配置了将gRPC请求路由到上游服务器组的服务器:

location /grpc {
    grpc_pass grpc://grpc_backend;
}

4.接受健康检查协议的gRPC服务器

如果你的gRPC服务支持gRPC运行状况检查协议,请指定health_check 指令的type=grpc参数:

location / {
    grpc_pass    grpc://grpc_backend;
    health_check mandatory type=grpc;
}

在此示例中,根据运行状况检查协议,将调用运行Health服务的Check方法,并且将以SERVING响应的gRPC服务器视为运行状况良好。

mandatory参数确保运行状况检查必须在实例上发送流量之前通过,例如引入或重新加载时。 请注意,必须在所有其他health_check 参数之后指定type=grpc

如果每个上游服务器上都有多个gRPC服务公开,则可以通过使用grpc_service参数指定服务名称来监视最重要的服务:

location / {
    grpc_pass    grpc://grpc_backend;
    health_check mandatory type=grpc grpc_service=MyStatus;
}

5.不接受运行状况检查协议的gRPC服务器

如果你的gRPC服务未实现gRPC运行状况检查协议,则仍然可以通过发送Check方法并期望使用特定的状态代码来执行运行状况检查。 这将测试上游服务器是否正在响应gRPC请求。 使用grpc_status参数指定gRPC错误响应代码:

location / {
    grpc_pass    grpc://grpc_backend;
    health_check type=grpc grpc_status=12; # 12=unimplemented
}

在这种情况下,gRPC状态为12 / UNIMPLEMENTED的响应将被认为是健康的。

请注意,type=grpc 参数与uri 或health_check 指令的match 参数不兼容。 必须在所有其他指令参数之后指定type=grpc 参数:grpc_servicegrpc_status 必须遵循 type=grpc

6.也可以看看

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琴 韵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值