Ingress-nginx: Ingress IP not equal to the Nginx ingress controller on GKE

Created on 30 Jan 2019  路  3Comments  路  Source: kubernetes/ingress-nginx

I'm having the same results as described in issue 1884. I used the helm chart to install the nginx-ingress controller on GKE following the guide at https://kubernetes.github.io/ingress-nginx/deploy/#gce-gke

$kube get services --namespace default
NAME                            TYPE           CLUSTER-IP      EXTERNAL-IP     PORT(S)                      AGE
nginx-ingress-controller        LoadBalancer   10.19.251.83    1.2.3.4   80:32581/TCP,443:30112/TCP   2m
nginx-ingress-default-backend   ClusterIP      10.19.253.199   <none>          80/TCP                       2m

but the ingress IP address is listed as

$kube get ingress
NAME     HOSTS           ADDRESS          PORTS     AGE
foo     foo.com          9.8.7.6          80        2h

I should also note that the IP address listed from the get ingress is the public IP address of one of my cluster's nodes.

$ kube get nodes -o wide
NAME                                                 STATUS    ROLES     AGE       VERSION         EXTERNAL-IP      OS-IMAGE                             KERNEL-VERSION   CONTAINER-RUNTIME
gke-internal-24g-cluster-high-memory-bdc98794-g23n   Ready     <none>    26d       v1.11.5-gke.5   3.3.2.2    Container-Optimized OS from Google   4.14.65+         docker://17.3.2
gke-internal-24g-cluster-high-memory-bdc98794-gjh9   Ready     <none>    27d       v1.11.5-gke.5   2.2.3.3     Container-Optimized OS from Google   4.14.65+         docker://17.3.2
gke-internal-24g-cluster-high-memory-d13e8c99-0scz   Ready     <none>    26d       v1.11.5-g

Shouldn't the ingress IP be the nginx-ingress controller's External IP?

Most helpful comment

@briananstett did you set --set controller.publishService.enabled=true during the helm chart installation?

Edit: the helm chart is not developed in this repository, that's the reason why we just have the basic command installing the chart. Please check https://github.com/helm/charts/blob/master/stable/nginx-ingress/values.yaml#L52

All 3 comments

@briananstett did you set --set controller.publishService.enabled=true during the helm chart installation?

Edit: the helm chart is not developed in this repository, that's the reason why we just have the basic command installing the chart. Please check https://github.com/helm/charts/blob/master/stable/nginx-ingress/values.yaml#L52

Ahh, thank you @aledbf that resolved my issue.

I also stumbled across these cli arguments but setting the value for a helm installation is definitely preferred.

@aledbf I am not using helm , but i Have set the args for the deployment

args:
            - /nginx-ingress-controller
            - --configmap=$(POD_NAMESPACE)/nginx-configuration
            - --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services
            - --udp-services-configmap=$(POD_NAMESPACE)/udp-services
            - --publish-service=$(POD_NAMESPACE)/ingress-nginx
Was this page helpful?
0 / 5 - 0 ratings