"Ingress exposes HTTP and HTTPS routes from outside the cluster to services within the cluster. Traffic routing is controlled by rules defined on the Ingress resource."
What the latter means, basically you need an Ingress controller and some Ingress rules(routing rules to manage external users access to the services the cluster) which will be passed to the controller.
Ingress controllers come in various flavors with different capabilities: Istio, Google Cloud Load Balancer, Nginx, Contour...more ingress controllers here.
In conclusion, Ingress represents a single entry-point to your cluster that routes the request to different services and acts as a reverse proxy...usually what happens in the real world it's that the request "hits" a service-mesh via Ingress, a.k.a Ingress through Istio gateways 🤯.