<p>I have kubernetes Cluster v1.10 Over Centos 7 </p>

<p>I installed kubernetes by hard-way </p>

<p>I have installed Kong ingress controller using helm </p>

<pre><code>helm repo add stable https://kubernetes-charts.storage.googleapis.com
helm install stable/kong
</code></pre>

<p>and this output </p>

<pre><code>NOTES:
1. Kong Admin can be accessed inside the cluster using:
 DNS=guiding-wombat-kong-admin.default.svc.cluster.local
 PORT=8444

To connect from outside the K8s cluster:
 HOST=$(kubectl get nodes --namespace default -o jsonpath='{.items[0].status.addresses[0].address}')
 PORT=$(kubectl get svc --namespace default guiding-wombat-kong-admin -o jsonpath='{.spec.ports[0].nodePort}')


2. Kong Proxy can be accessed inside the cluster using:
 DNS=guiding-wombat-kong-proxy.default.svc.cluster.local
 PORT=8443


To connect from outside the K8s cluster:
 HOST=$(kubectl get nodes --namespace default -o jsonpath='{.items[0].status.addresses[0].address}')
 PORT=$(kubectl get svc --namespace default guiding-wombat-kong-proxy -o jsonpath='{.spec.ports[0].nodePort}')
</code></pre>

<p>and I deployed dummy file </p>

<pre><code>apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: http-svc
spec:
  replicas: 1
  selector:
    matchLabels:
      app: http-svc
  template:
    metadata:
      labels:
        app: http-svc
    spec:
      containers:
      - name: http-svc
        image: gcr.io/google_containers/echoserver:1.8
        ports:
        - containerPort: 8080
        env:
        - name: NODE_NAME
          valueFrom:
            fieldRef:
              fieldPath: spec.nodeName
        - name: POD_NAME
          valueFrom:
            fieldRef:
              fieldPath: metadata.name
        - name: POD_NAMESPACE
          valueFrom:
            fieldRef:
              fieldPath: metadata.namespace
        - name: POD_IP
          valueFrom:
            fieldRef:
              fieldPath: status.podIP

---

apiVersion: v1
kind: Service
metadata:
  name: http-svc
  labels:
    app: http-svc
spec:
  type: NodePort
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP
  name: http
    selector:
      app: http-svc

---
</code></pre>

<p>and I deployed ingress.yaml</p>

<pre><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: foo-bar
spec:
  rules:
  - host: foo.bar
    http:
      paths:
      - path: /
        backend:
          serviceName: http-svc
          servicePort: 80
</code></pre>

<p>and when I run : </p>

<pre><code>kubectl get ing
NAME      HOSTS     ADDRESS   PORTS     AGE
foo-bar   foo.bar             80        1m
</code></pre>

<p>and when I browse </p>

<pre><code>https://node-IP:controller-admin
{"next":null,"data":[]}
</code></pre>

<p>How can I troubleshoot this issue and find the solution? </p>

<p>Thank you :D </p>

<p>I recommend installing it using <a href="https://github.com/Kong/kubernetes-ingress-controller/blob/master/deploy/minikube.md" rel="nofollow noreferrer">this guide</a> only not using minikube.</p>

<p>It work for me on AWS:</p>

<pre><code>$ curl -H 'Host: foo.bar' http://35.162.32.30


Hostname: http-svc-66ffffc458-jkxsl

Pod Information:
    node name:  ip-x-x-x-x.us-west-2.compute.internal
    pod name:   http-svc-66ffffc458-jkxsl
    pod namespace:  default
    pod IP: 192.168.x.x

Server values:
    server_version=nginx: 1.13.3 - lua: 10008

Request Information:
    client_address=192.168.x.x
    method=GET
    real path=/
    query=
    request_version=1.1
    request_uri=http://192.168.x.x:8080/

Request Headers:
    accept=*/*
    connection=keep-alive
    host=192.168.x.x:8080
    user-agent=curl/7.58.0
    x-forwarded-for=172.x.x.x
    x-forwarded-host=foo.bar
    x-forwarded-port=8000
    x-forwarded-proto=http
    x-real-ip=172.x.x.x

Request Body:
    -no body in request-
</code></pre>
