envoyproxy/envoy

subset lb: support customized response code when using NO_FALLBACK

Open

#11,983 建立於 2020年7月9日

在 GitHub 查看
 (1 留言) (0 反應) (0 負責人)C++ (5,373 fork)batch import
area/load balancingdesign proposalhelp wanted

倉庫指標

Star
 (27,997 star)
PR 合併指標
 (平均合併 8天) (30 天內合併 378 個 PR)

描述

We have a use case for the subset LB in which we'd like to return a 404 when there is no metadata/subset match. Right now, a 503 (no healthy hosts) response is the only possible response:

https://github.com/envoyproxy/envoy/blob/master/api/envoy/config/cluster/v3/cluster.proto#L206

We could make this knob something specific to the subset LB; or we could make it something generic for all LBs similar to ClusterNotFoundResponseCode (e.g.: EndpointNotFoundResponseCode):

https://github.com/envoyproxy/envoy/blob/master/api/envoy/config/route/v3/route_components.proto#L794

Thoughts?

cc: @zuercher @fishcakez @janephilipps @mattklein123

貢獻者指南