--
I suspect for either non-HTTP traffic or when you don't want to use a NodePort as per:
>An Ingress does not expose arbitrary ports or protocols. Exposing services other than HTTP and HTTPS to the internet typically uses a service of type Service.Type=NodePort or Service.Type=LoadBalancer.
https://kubernetes.io/docs/concepts/services-networking/ingress/