external-dns: No endpoints could be generated from ingress (when backing service is invalid)

What happened:

I noticed that external dns was not creating a route53 entry in AWS for an ingress that I created. I later found out that part of the ingress was malformed, in that it was pointing to a service that didn’t exist. The ingress to be created is a ALB Ingress, which was successfully performed.

The following log statement is what triggered that:

time="2020-06-30T22:52:12Z" level=debug msg="No endpoints could be generated from ingress my-namespace/my-app"

What you expected to happen:

Despite an invalid backing service to the ingress, external-dns should have still creating a entry that pointed to the ALB.

How to reproduce it (as minimally and precisely as possible):

I believe (untested), if you create an ingress, that points to a non-existent service, this can be reproduced.

Anything else we need to know?:

Environment:

  • External-DNS version (use external-dns --version): 0.7.1
  • DNS provider: AWS Route53
  • Others: Kubernetes 1.14

About this issue

  • Original URL
  • State: open
  • Created 4 years ago
  • Comments: 17 (1 by maintainers)

Most upvoted comments

The generation of endpoints seems to be directly tied to the Ingress having an “Address”. In my case, I was able to get this working by setting by my ingress controller to publish its address to the ingress resources

For traefik: kubernetesIngress.publishedService.enabled=true

For nginx: controller.publishService.enabled=true

Perhaps you don’t have the ingress controller installed. To install it you need to run the following command: kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/deploy/static/provider/cloud/deploy.yaml