external-dns icon indicating copy to clipboard operation
external-dns copied to clipboard

feat: add new flag to allow configuring per pod FQDNs for service source.

Open SerjKol80 opened this issue 1 month ago • 14 comments

What does it do ?

Currently if you create FQDNs for K8S headless services, a service source will generate DNS record for the source. Also, in addition to that, if pods related to that service has a hostname configured, then FQDNs for each pod will also be created. I.e. if you have service service-1 resulting into FQDN service-1.some.domain there will also be FQDNs like pod-1.service-1.some.domain be generated.

With this change

Fixes #5937

Motivation

I need to generate per pod FQDNs for pods created by Deployment.

More

  • [x] Yes, this PR title follows Conventional Commits
  • [x] Yes, I added unit tests
  • [x] Yes, I updated end user documentation accordingly

SerjKol80 avatar Nov 04 '25 22:11 SerjKol80

CLA Signed

The committers listed above are authorized under a signed CLA.

  • :white_check_mark: login: SerjKol80 / name: Sergey Kolosov (214b9164e9e7fd83daf8bda9177c73b9be6fac10)

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Once this PR has been reviewed and has the lgtm label, please assign mloiseleur for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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

k8s-ci-robot avatar Nov 04 '25 22:11 k8s-ci-robot

Welcome @SerjKol80!

It looks like this is your first PR to kubernetes-sigs/external-dns 🎉. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes-sigs/external-dns has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. :smiley:

k8s-ci-robot avatar Nov 04 '25 22:11 k8s-ci-robot

Hi @SerjKol80. Thanks for your PR.

I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions 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-sigs/prow repository.

k8s-ci-robot avatar Nov 04 '25 22:11 k8s-ci-robot

What for? There is FQDN support https://github.com/kubernetes-sigs/external-dns/blob/master/docs/advanced/fqdn-templating.md. Is way more flexible

ivankatliarchuk avatar Nov 05 '25 08:11 ivankatliarchuk

What for? There is FQDN support https://github.com/kubernetes-sigs/external-dns/blob/master/docs/advanced/fqdn-templating.md. Is way more flexible

@ivankatliarchuk I'm not sure I got your point. how templating helps me to enable or disable per pods FQDNs for particular service. I.e. today "--source=service" flag will generate tons of DNS records (one per each pod created by StatefulSet). How can I disable it? Or another example: if I want such DNS records for K8s service backed by Deployments' pods. There is no way to do it today. Unless I misunderstood something.

SerjKol80 avatar Nov 05 '25 17:11 SerjKol80

Closing, as feature supported with --fqdn-template=""

/close

ivankatliarchuk avatar Nov 07 '25 08:11 ivankatliarchuk

@ivankatliarchuk: Closed this PR.

In response to this:

Closing, as feature supported with --fqdn-template=""

/close

Instructions 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-sigs/prow repository.

k8s-ci-robot avatar Nov 07 '25 08:11 k8s-ci-robot

@ivankatliarchuk Would you please explain deeper how --fqdn-template="" supports what I need? I axplain my thoughts deeper in issue's comment: https://github.com/kubernetes-sigs/external-dns/issues/5937#issuecomment-3504275607

SerjKol80 avatar Nov 09 '25 21:11 SerjKol80

/reopen

SerjKol80 avatar Nov 09 '25 21:11 SerjKol80

@SerjKol80: Reopened this PR.

In response to this:

/reopen

Instructions 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-sigs/prow repository.

k8s-ci-robot avatar Nov 09 '25 21:11 k8s-ci-robot

https://github.com/kubernetes-sigs/external-dns/pull/5938#issuecomment-3489939497

/hold

ivankatliarchuk avatar Nov 10 '25 20:11 ivankatliarchuk

Please provide evidences that --fqdn-template does not support your use case.

ivankatliarchuk avatar Nov 10 '25 20:11 ivankatliarchuk

Please provide evidences that --fqdn-template does not support your use case.

@ivankatliarchuk I explained it in deep details in issue comment: https://github.com/kubernetes-sigs/external-dns/issues/5937#issuecomment-3504275607

SerjKol80 avatar Nov 12 '25 00:11 SerjKol80

PR needs rebase.

Instructions 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-sigs/prow repository.

k8s-ci-robot avatar Dec 15 '25 02:12 k8s-ci-robot