Merge pull request #1513 from maxlaverse/return_503_by_default
Return 503 by default when no endpoint is available
This commit is contained in:
commit
ae34a22a86
2 changed files with 10 additions and 4 deletions
|
@ -603,8 +603,8 @@ func (ic *GenericController) getBackendServers(ingresses []*extensions.Ingress)
|
||||||
for _, location := range server.Locations {
|
for _, location := range server.Locations {
|
||||||
if upstream.Name == location.Backend {
|
if upstream.Name == location.Backend {
|
||||||
if len(upstream.Endpoints) == 0 {
|
if len(upstream.Endpoints) == 0 {
|
||||||
glog.V(3).Infof("upstream %v does not have any active endpoints. Using default backend", upstream.Name)
|
glog.V(3).Infof("upstream %v does not have any active endpoints.", upstream.Name)
|
||||||
location.Backend = "upstream-default-backend"
|
location.Backend = ""
|
||||||
|
|
||||||
// check if the location contains endpoints and a custom default backend
|
// check if the location contains endpoints and a custom default backend
|
||||||
if location.DefaultBackend != nil {
|
if location.DefaultBackend != nil {
|
||||||
|
|
|
@ -808,8 +808,14 @@ stream {
|
||||||
proxy_set_header X-Service-Name $service_name;
|
proxy_set_header X-Service-Name $service_name;
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{ if not (empty $location.Backend) }}
|
||||||
{{ buildProxyPass $server.Hostname $all.Backends $location }}
|
{{ buildProxyPass $server.Hostname $all.Backends $location }}
|
||||||
{{ else }}
|
{{ else }}
|
||||||
|
# No endpoints available for the request
|
||||||
|
return 503;
|
||||||
|
{{ end }}
|
||||||
|
{{ else }}
|
||||||
# Location denied. Reason: {{ $location.Denied }}
|
# Location denied. Reason: {{ $location.Denied }}
|
||||||
return 503;
|
return 503;
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
Loading…
Reference in a new issue