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

nginx-ingress unable to publish endpoints to ingress when using ClusterIP type controller service #4461

Closed
rtnpro opened this issue Aug 18, 2019 · 0 comments · Fixed by #4490

Comments

@rtnpro
Copy link

rtnpro commented Aug 18, 2019

Is this a request for help?
No

What keywords did you search in NGINX Ingress controller issues before filing this one?

ClusterIP publish service


Is this a BUG REPORT or FEATURE REQUEST? (choose one):

BUG REPORT

NGINX Ingress controller version:

0.25

Kubernetes version (use kubectl version):

v1.14.3

Environment:

  • Cloud provider or hardware configuration: DigitalOcean
  • OS (e.g. from /etc/os-release): Debian GNU/Linux 9 (stretch)
  • Kernel (e.g. uname -a): 4.19.0-0.bpo.5-amd64
  • Install tools: DigitalOcean managed Kubernetes
  • Others:

What happened:

When I run nginx-controller behind ClusterIP type service along with enabling publish-service for the ClusterIP nginx-controller service, the nginx-ingress controller fails to publish the service's endpoint to the associated ingress. With endpoints missing for an ingress object, external-dns fails to create DNS records for these ingresses.

What you expected to happen:

Even if the nginx-controller service is of type ClusterIP, when --publish-service is enabled, it should publish the private IP for the service to the associated ingress objects.

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

  • Install nginx-ingress via helm with values like
controller:
  image:
    repository: quay.io/kubernetes-ingress-controller/nginx-ingress-controller
    tag: "0.25"
  ingressClass: internal-ingress
  publishService:
    enabled: true
  replicaCount: 1
  resources:
    requests:
      cpu: 100m
      memory: 100Mi
    limits:
      memory: 256Mi

  service:
    type: ClusterIP
  • Deploy an app with ingress using internal-ingress as the ingress class. It will not receive any endpoint from the nginx-controller service.

Here are artifacts from my Kubernetes cluster to reproduce this bug:

Anything else we need to know:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant