Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added dns resolver proposal #305

Merged
merged 3 commits into from
May 23, 2024

Conversation

hzxuzhonghu
Copy link
Member

What type of PR is this?

What this PR does / why we need it:

Which issue(s) this PR fixes:
Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing change?:


Signed-off-by: Zhonghu Xu <xuzhonghu@huawei.com>
Signed-off-by: Zhonghu Xu <xuzhonghu@huawei.com>
A good summary is probably at least a paragraph in length.
-->

Envoy supports many different cluster types, including `Strict Dns`, `Logical DNS`. However, given to kmesh works in the kernel with ebpf. Previously kmesh does not either of the DNS typed clusters. For traffic matches these kind of cluster, it will be dropped.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Envoy supports many different cluster types, including `Strict Dns`, `Logical DNS`. However, given to kmesh works in the kernel with ebpf. Previously kmesh does not either of the DNS typed clusters. For traffic matches these kind of cluster, it will be dropped.
Envoy supports many different cluster types, including `Strict Dns`, `Logical DNS`. However, given to Kmesh works in the kernel with ebpf. Previously Kmesh does not either of the DNS typed clusters. For traffic matches these kind of cluster, it will be dropped.

this KEP. Describe why the change is important and the benefits to users.
-->

In istio, [External Name service](https://kubernetes.io/docs/concepts/services-networking/service/#externalname) and DNS resolution typed ServiceEntry are widely used. For both kind of configs, istiod will generate associated DNS typed clusters.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In istio, [External Name service](https://kubernetes.io/docs/concepts/services-networking/service/#externalname) and DNS resolution typed ServiceEntry are widely used. For both kind of configs, istiod will generate associated DNS typed clusters.
In istio, [External Name service](https://kubernetes.io/docs/concepts/services-networking/service/#externalname) and [DNS resolution typed ServiceEntry](https://istio.io/latest/docs/reference/config/networking/service-entry/) are widely used. For both kind of configs, istiod will generate associated DNS typed clusters.

nitty-gritty.
-->

We shold implement a new component to do dns resove, called `dns resolver`. It should basically do:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
We shold implement a new component to do dns resove, called `dns resolver`. It should basically do:
We shold implement a new component to do dns resolve, called `dns resolver`. It should basically do:

Signed-off-by: Zhonghu Xu <xuzhonghu@huawei.com>
@@ -0,0 +1,218 @@
---
title: Your short, descriptive title
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The title doesn't seem to have changed.

"metadata": {
"filterMetadata": {
"istio": {
"workload": ";;;;"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the meaning of this line?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a composed string including some metadata from pod. If these are empty, then it will be this type

nitty-gritty.
-->

We shold implement a new component to do dns resolve, called `dns resolver`. It should basically do:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shold->should

@nlgwcy
Copy link
Contributor

nlgwcy commented May 23, 2024

/lgtm

@nlgwcy
Copy link
Contributor

nlgwcy commented May 23, 2024

/approve

@kmesh-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: nlgwcy

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kmesh-bot kmesh-bot merged commit 83692b4 into kmesh-net:main May 23, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants