ignore STRICT_DNS/STATIC Cluster doesnot have endpoints#20981
ignore STRICT_DNS/STATIC Cluster doesnot have endpoints#20981istio-testing merged 5 commits intoistio:masterfrom
Conversation
|
Hi @ydh926. Thanks for your PR. I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
We found a Contributor License Agreement for you (the sender of this pull request), but were unable to find agreements for all the commit author(s) or Co-authors. If you authored these, maybe you used a different email address in the git commits than was used to sign the CLA (login here to double check)? If these were authored by someone else, then they will need to sign a CLA as well, and confirm that they're okay with these being contributed to Google. ℹ️ Googlers: Go here for more info. |
|
STRICT_DNS/STATIC Cluster does not have endpoint will block envoy. Impact on pilot: |
|
@googlebot I fixed it |
|
CLAs look good, thanks! ℹ️ Googlers: Go here for more info. |
|
/ok-to-test |
There was a problem hiding this comment.
Can you explain how can this happen?
There was a problem hiding this comment.
For example:
- configure a DNS type ServiceEntry
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
name: static-20191230
namespace: gateway-system
spec:
endpoints:
- address: 10.108.251.133
ports:
http: 80
- address: 10.96.144.80
ports:
http: 80
exportTo:
- '*'
hosts:
- com.netease.static-20191230
location: MESH_EXTERNAL
ports:
- name: http
number: 80
protocol: HTTP
resolution: DNS- configure a subset, which cannot select any endpoint
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: static-1230
namespace: gateway-system
spec:
host: com.netease.static-20191230
subsets:
- altStatName: healthCheckTest
name: static-20191230-test1
labels:
app: none|
@ydh926 Add a test for it in |
1362d2a to
b27b4b1
Compare
|
There was a problem hiding this comment.
Remove the error message please as this is going to get very noisy. Instead add it as a metric (look around pilot code for how we do metrics for these kinds of things).
3699941 to
a38dae2
Compare
|
/retest |
pilot/pkg/model/push_context.go
Outdated
There was a problem hiding this comment.
pilot_dns_cluster_without_endpoints
hzxuzhonghu
left a comment
There was a problem hiding this comment.
One question: we do have a BlackHoleCluster cluster of static type without endpoints, why there is no error?
The field loadassignment of BlackHoleCluster is nil,envoy will give it a default value. But it in STRICT_DNS cluster is a struct with an empty Endpoints array, envoy will try to resolve it. That is a bug in envoy, but I am not sure when they will fix it. |
d3f70b2 to
6d21ead
Compare
pilot/pkg/model/push_context.go
Outdated
There was a problem hiding this comment.
pilot_dns_cluster_without_endpoints, actually we donot sum up ths static cluster.
There was a problem hiding this comment.
sorry,it is a mistake. fixed already
|
I think we should exclude |
In your description, a ServiceEntry of static type will be converted to a cluster of type eds. If so, these changes will not affect the ServiceEntry of static type. We only deal with static or DNS clusters.
Static type clusters seem to only be used internally, so I will remove the description to avoid ambiguity |
|
make sense, fix the lint, and i will approve. |
|
Ah.. sorry. Makes sense. Thank you |
|
fixed @hzxuzhonghu |
|
@ydh926 Do you forget to push? |
|
cherrypick/release-1.4 |
|
cherrypick/release-1.5 |
istio/istio#22837 (comment) envoyproxy#10728 istio/istio#20981 Signed-off-by: Venil Noronha <veniln@vmware.com>
|
@lambdai I don't think the cherrypick in 1.4 worked. Any idea? |
No description provided.