<p>Getting error msg when I trying to access with public IP:</p>
<pre><code>&quot;{&quot;message&quot;:&quot;failure to get a peer from the ring-balancer&quot;}&quot;
</code></pre>
<p>Looks like Kong is unable to the upstream services.</p>
<p>I am using voting app</p>
<p><strong>ingress.yaml</strong></p>
<pre class="lang-yaml prettyprint-override"><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: telehealth-ingress
  namespace: kong
  annotations:
    kubernetes.io/ingress.class: &quot;kong&quot;
spec:
  rules:
  - http:
      paths:
      - backend:
          serviceName: voting-service
          servicePort: 80
</code></pre>
<p><strong>service.yaml</strong></p>
<pre class="lang-yaml prettyprint-override"><code>apiVersion: v1
kind: Service
metadata:
  name: voting-service
  labels:
    name: voting-service
    app: voting-app
spec:
  ports:
    - targetPort: 80
      port: 80
  selector:
    name: voting-app-pod
    app: voting-app
</code></pre>
<p><strong>deployment.yaml</strong></p>
<pre class="lang-yaml prettyprint-override"><code>apiVersion: apps/v1
kind: Deployment
metadata:
  name: voting-app-pod
  labels:
    name: voting-app-pod
    app: voting-app
spec:
  template:
    metadata:
      labels:
        name: voting-app-pod
        app: voting-app
    spec:
      containers:
        - name: voting-app
          image: dockersamples/examplevotingapp_vote
          ports:
           - containerPort: 80
  replicas: 2
  selector:
    matchLabels:
      app: voting-app
</code></pre>

<p>There could be one of many things wrong here. But essentially your ingress cannot get to your backend.</p>
<p>If your backend up and running?</p>
<ul>
<li><p>Check backend pods are &quot;Running&quot;</p>
<pre><code>kubectl get pods
</code></pre>
</li>
<li><p>Check backend deployment has all replicas up</p>
<pre><code>kubectl get deploy
</code></pre>
</li>
<li><p>Connect to the app pod and run a localhost:80 request</p>
<pre><code>kubectl exec -it &lt;pod-name&gt; sh
# curl http://localhost
</code></pre>
</li>
<li><p>Connect to the ingress pod and see if you can reach the service from there</p>
<pre><code>kubectl exec -it &lt;ingress-pod-name&gt; sh
# dig voting-service  (can you DNS resolve it)
# telnet voting-sevice 80
# curl http://voting-service
</code></pre>
</li>
</ul>
<p><a href="https://github.com/Kong/kong/issues/3518" rel="noreferrer">This issue</a> might shed some insights as to why you can't reach the backend service. What http error code are you seeing?</p>
