title: How to install nginx-ingress with hostNetwork on bare-metal?
body: <p>I created a single-node kubeadm cluster on bare-metal and after some research I would go for a host network approach (<a href="https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network" rel="noreferrer">https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network</a>), since NodePort is not an option due to network restrictions. </p>
  
  <p>I tried installing nginx-ingress with helm chart through the command:</p>
  
  <pre><code>   helm install stable/nginx-ingress \
       --set controller.hostNetwork=true
  </code></pre>
  
  <p>The problem is that it is creating a LoadBalancer service which is Pending forever and my ingress objects are not being routed:</p>
  
  <pre><code>NAME                                                                 READY   STATUS    RESTARTS   AGE
  pod/whopping-kitten-nginx-ingress-controller-5db858b48c-dp2j8        1/1     Running   0          5m34s
  pod/whopping-kitten-nginx-ingress-default-backend-5c574f4449-dr4xm   1/1     Running   0          5m34s
  
  NAME                                                    TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
  service/kubernetes                                      ClusterIP      10.96.0.1       &lt;none&gt;        443/TCP                      6m43s
  service/whopping-kitten-nginx-ingress-controller        LoadBalancer   10.97.143.40    &lt;pending&gt;     80:30068/TCP,443:30663/TCP   5m34s
  service/whopping-kitten-nginx-ingress-default-backend   ClusterIP      10.106.217.96   &lt;none&gt;        80/TCP                       5m34s
  
  NAME                                                            READY   UP-TO-DATE   AVAILABLE   AGE
  deployment.apps/whopping-kitten-nginx-ingress-controller        1/1     1            1           5m34s
  deployment.apps/whopping-kitten-nginx-ingress-default-backend   1/1     1            1           5m34s
  
  NAME                                                                       DESIRED   CURRENT   READY   AGE
  replicaset.apps/whopping-kitten-nginx-ingress-controller-5db858b48c        1         1         1       5m34s
  replicaset.apps/whopping-kitten-nginx-ingress-default-backend-5c574f4449   1         1         1       5m34s
  </code></pre>
  
  <p>Is there any other configuration that needs to be done to succeed in this approach?</p>
  
  <p>UPDATE: here are the logs for the ingress-controller pod</p>
  
  <pre><code>-------------------------------------------------------------------------------
  NGINX Ingress controller
    Release:    0.24.1
    Build:      git-ce418168f
    Repository: https://github.com/kubernetes/ingress-nginx
  -------------------------------------------------------------------------------
  
  I0707 19:02:50.552631       6 flags.go:185] Watching for Ingress class: nginx
  W0707 19:02:50.552882       6 flags.go:214] SSL certificate chain completion is disabled (--enable-ssl-chain-completion=false)
  nginx version: nginx/1.15.10
  W0707 19:02:50.556215       6 client_config.go:549] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
  I0707 19:02:50.556368       6 main.go:205] Creating API client for https://10.96.0.1:443
  I0707 19:02:50.562296       6 main.go:249] Running in Kubernetes cluster version v1.15 (v1.15.0) - git (clean) commit e8462b5b5dc2584fdcd18e6bcfe9f1e4d970a529 - platform linux/amd64
  I0707 19:02:51.357524       6 main.go:102] Validated default/precise-bunny-nginx-ingress-default-backend as the default backend.
  I0707 19:02:51.832384       6 main.go:124] Created fake certificate with PemFileName: /etc/ingress-controller/ssl/default-fake-certificate.pem
  W0707 19:02:53.516654       6 store.go:613] Unexpected error reading configuration configmap: configmaps "precise-bunny-nginx-ingress-controller" not found
  I0707 19:02:53.527297       6 nginx.go:265] Starting NGINX Ingress controller
  I0707 19:02:54.630002       6 event.go:209] Event(v1.ObjectReference{Kind:"Ingress", Namespace:"default", Name:"staging-ingress", UID:"9852d27b-d8ad-4410-9fa0-57b92fdd6f90", APIVersion:"extensions/v1beta1", ResourceVersion:"801", FieldPath:""}): type: 'Normal' reason: 'CREATE' Ingress default/staging-ingress
  I0707 19:02:54.727989       6 nginx.go:311] Starting NGINX process
  I0707 19:02:54.728249       6 leaderelection.go:217] attempting to acquire leader lease  default/ingress-controller-leader-nginx...
  W0707 19:02:54.729235       6 controller.go:373] Service "default/precise-bunny-nginx-ingress-default-backend" does not have any active Endpoint
  W0707 19:02:54.729334       6 controller.go:797] Service "default/face" does not have any active Endpoint.
  W0707 19:02:54.729442       6 controller.go:797] Service "default/test" does not have any active Endpoint.
  I0707 19:02:54.729535       6 controller.go:170] Configuration changes detected, backend reload required.
  I0707 19:02:54.891620       6 controller.go:188] Backend successfully reloaded.
  I0707 19:02:54.891654       6 controller.go:202] Initial sync, sleeping for 1 second.
  I0707 19:02:54.948639       6 leaderelection.go:227] successfully acquired lease default/ingress-controller-leader-nginx
  I0707 19:02:54.949148       6 status.go:86] new leader elected: precise-bunny-nginx-ingress-controller-679b9557ff-n57mc
  [07/Jul/2019:19:02:55 +0000]TCP200000.000
  W0707 19:02:58.062645       6 controller.go:373] Service "default/precise-bunny-nginx-ingress-default-backend" does not have any active Endpoint
  W0707 19:02:58.062676       6 controller.go:797] Service "default/face" does not have any active Endpoint.
  W0707 19:02:58.062686       6 controller.go:797] Service "default/test" does not have any active Endpoint.
  W0707 19:03:02.406151       6 controller.go:373] Service "default/precise-bunny-nginx-ingress-default-backend" does not have any active Endpoint
  W0707 19:03:02.406188       6 controller.go:797] Service "default/face" does not have any active Endpoint.
  W0707 19:03:02.406357       6 controller.go:797] Service "default/test" does not have any active Endpoint.
  [07/Jul/2019:19:03:02 +0000]TCP200000.000
  W0707 19:03:05.739438       6 controller.go:797] Service "default/face" does not have any active Endpoint.
  W0707 19:03:05.739467       6 controller.go:797] Service "default/test" does not have any active Endpoint.
  [07/Jul/2019:19:03:05 +0000]TCP200000.001
  W0707 19:03:09.072793       6 controller.go:797] Service "default/face" does not have any active Endpoint.
  W0707 19:03:09.072820       6 controller.go:797] Service "default/test" does not have any active Endpoint.
  W0707 19:03:12.406121       6 controller.go:797] Service "default/face" does not have any active Endpoint.
  W0707 19:03:12.406143       6 controller.go:797] Service "default/test" does not have any active Endpoint.
  [07/Jul/2019:19:03:15 +0000]TCP200000.000
  I0707 19:03:54.959607       6 status.go:295] updating Ingress default/staging-ingress status from [] to [{ }]
  I0707 19:03:54.961925       6 event.go:209] Event(v1.ObjectReference{Kind:"Ingress", Namespace:"default", Name:"staging-ingress", UID:"9852d27b-d8ad-4410-9fa0-57b92fdd6f90", APIVersion:"extensions/v1beta1", ResourceVersion:"1033", FieldPath:""}): type: 'Normal' reason: 'UPDATE' Ingress default/staging-ingress
  </code></pre>