<p>I have a Minikube instance installed on an Ubuntu VM (Digital Ocean). I have also configured ingress for one my deployments but when I curl the hostname I am getting an error :</p>
<pre><code>curl myserver.xyz
curl: (7) Failed to connect to myserver.xyz port 80: Connection refused
</code></pre>
<p>My deployment :</p>
<pre><code>apiVersion: v1
kind: Service
metadata:
  name: echo2
spec:
  ports:
  - port: 80
    targetPort: 5678
  selector:
    app: echo2
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: echo2
spec:
  selector:
    matchLabels:
      app: echo2
  replicas: 1
  template:
    metadata:
      labels:
        app: echo2
    spec:
      containers:
      - name: echo2
        image: hashicorp/http-echo
        args:
        - &quot;-text=echo2&quot;
        ports:
        - containerPort: 5678
</code></pre>
<p>And the ingress resource (deployed in same namespace) :</p>
<pre><code>apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: echo-ingress
  annotations: 
    kubernetes.io/ingress.class: &quot;nginx&quot;
spec:
  rules:
  - host: myserver.xyz
    http:
        paths:
        - pathType: Prefix
          path: &quot;/&quot;
          backend:
            service:
              name: echo1
              port:
                number: 80
</code></pre>
<p>My ingress is deployed using :</p>
<pre><code> kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.1/deploy/static/provider/do/deploy.yaml
</code></pre>
<p>What I have tried so far --&gt;  1.
Changing the nginx service to type LoadBalancer :</p>
<pre><code> kubectl patch svc ingress-nginx-controller -n ingress-nginx -p '{&quot;spec&quot;: {&quot;type&quot;: &quot;LoadBalancer&quot;, &quot;externalIPs&quot;:[&quot;146.190.XXX.XXX&quot;]}}'
</code></pre>
<ol start="2">
<li><p>Checking status of ingress</p>
<pre><code> kubectl get ingress
 NAME              CLASS    HOSTS              ADDRESS        PORTS   AGE
 echo-ingress      &lt;none&gt;   myserver.xyz       192.168.XX.X   80      2d9h
 example-ingress   nginx    hello-world.info   192.168.XX.X   80      61d
</code></pre>
</li>
<li><p>Checking status of the services</p>
</li>
</ol>
<pre><code>        kubectl get svc --namespace=ingress-nginx
        NAME                                 TYPE           CLUSTER-IP       EXTERNAL-IP       PORT(S)                      AGE
      ingress-nginx-controller             LoadBalancer   10.108.xxx.XXX   146.190.XXX.XXX   
      80:317XX/TCP,443:320XX/TCP   2d23h
      ingress-nginx-controller-admission   ClusterIP      10.101.xxx.XXX   &lt;none&gt;            443/TCP 2d23h
</code></pre>
<ol start="3">
<li>Checking the ingress definition</li>
</ol>
<pre><code>kubectl describe ingress echo-ingress
Name:             echo-ingress
Labels:           &lt;none&gt;
Namespace:        default
Address:          192.168.XX.X
Ingress Class:    &lt;none&gt;
Default backend:  &lt;default&gt;
Rules:
  Host             Path  Backends
  ----             ----  --------
  myserver.xyz
                   /   echo1:80 (XX.XXX.X.XXX:5678)
Annotations:       kubernetes.io/ingress.class: nginx
Events:
  Type    Reason  Age                  From                      Message
  ----    ------  ----                 ----                      -------
  Normal  Sync    131m                 nginx-ingress-controller  Scheduled for sync
  Normal  Sync    126m (x2 over 126m)  nginx-ingress-controller  Scheduled for sync
  Normal  Sync    108m                 nginx-ingress-controller  Scheduled for sync
</code></pre>
<p>I have already pointed the domain name and DNS A records to the DigitalOcean VM 's External IP Address.</p>
<p>I have also checked /etc/hosts and I added an entry for the domain as follows :</p>
<pre><code>146.190.XXX.XXX    myserver.xyz
</code></pre>
<p>What am I missing?</p>
<p>Do I need to install <strong>metallb</strong> Minikube addon or its not applicable in this context ?</p>
<p>PS: I am following the example tutorial given <a href="https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nginx-ingress-with-cert-manager-on-digitalocean-kubernetes" rel="nofollow noreferrer">here</a></p>

Golide
<p>Per @jordanm</p>
<blockquote>
<p>If you use service type of LoadBalancer, you connect to the load balancer IP, not to the VMs IP. If you want to connect directly to the VM, your nginx ingress should be a service type of NodePort.</p>
</blockquote>
