Closed pszeto closed 8 months ago
Zendesk ticket #2894 has been linked to this issue.
I believe what is occurring is the following: Static upstreams do not recheck for their ip configuration https://github.com/envoyproxy/envoy/blob/9fc968d757339d7c476ac890a3eea873caac5ee9/source/extensions/clusters/static/static_cluster.cc#L10 unlike say strict https://github.com/envoyproxy/envoy/blob/9fc968d757339d7c476ac890a3eea873caac5ee9/source/extensions/clusters/strict_dns/strict_dns_cluster.cc#L103
Solution: use logical or strict dns resolution
@nfuden: Since this "works as expected", can we close this one as "Not a bug - won't fix"?
I would argue for that. If the ux pain persists perhaps we need to add an insight around this or update our docs to call out the behavior more clearly
@nfuden: I did find the documentation in Envoy on discovered upstreams: https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/service_discovery
I know we have documentation on static upstreams in our GE docs: https://docs.solo.io/gloo-edge/latest/guides/traffic_management/destination_types/static_upstream/
... but I couldn't find anything on "Strict DNS" and/or "Logical" in our Gloo Edge docs and APIs. My guess is that the (some of) the other UpstreamSpecs (https://docs.solo.io/gloo-edge/1.7.23/reference/api/github.com/solo-io/gloo/projects/gloo/api/v1/upstream.proto.sk/) translate into this, but I lack a bit of insight here to guide the docs team (because I do think we should add something about this in our docs).
We set strict_dns if hostname is not empty in static upstreams
Can't reproduce on 1.15.14 when using strict_dns
(which is created when you use a hostname in the static Upstream
).
Reproducer project here: https://github.com/DuncanDoyle/ge-gloo-6331
Closing. Can't reproduce.
Gloo Edge Version
1.11.x (latest stable)
Kubernetes Version
1.21.x
Describe the bug
Requests through the gateway-proxy returns
200
successful after the dns record is deleted.Steps to reproduce the bug
gloo-test.duckdns.org
and point to34.231.5.222
which is httpbin.orggloo-test.duckdns.org
gloo-test.duckdns.org
and verify it's correct:Non-authoritative answer: Name: gloo-test.duckdns.org Address: 34.231.5.222
Expected Behavior
After deleting the dns record and getting the
** server can't find gloo-test.duckdns.org: NXDOMAIN
fromnslookup gloo-test.duckdns.org
. I expect the call to the static upstream that is referencing that host to return a503
- no health host. Access logs from the proxy shows:Once I reboot the gateway proxy, I get the expect 503
Additional Context
No response