With Ingress, you can route traffic to different services based on the URL path or hostname. This allows you to easily handle multiple domains or subdomains within a single cluster, and to route traffic to different services based on the URL path as depicted in the following diagram.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. An Ingress may be configured to give Services externally-reachable URLs, load balance traffic, terminate SSL / TLS, and offer name-based virtual hosting.Regarding the disadvantages of the use of ingress controller, the most relevant is is due to the loss of balance control because, in some case, the reverse proxy configured is not fully controllable with the available annotations, or, how it happens in the cloud, the external load balancer doesn't have the flexibility …
What is the use of ingress class : An Ingress resource can target a specific Ingress controller instance which is useful when running multiple ingress controllers in the same cluster. Targetting an Ingress controller means only a specific controller should handle/implement the ingress resource.
Why use ingress instead of load balancer
The main difference is ingresses are native objects inside the cluster that can route to multiple services, while load balancers are external to the cluster and only route to a single service.
Why do we need ingress in Kubernetes : An Ingress controller abstracts away the complexity of Kubernetes application traffic routing and provides a bridge between Kubernetes services and external ones. Kubernetes Ingress controllers: Accept traffic from outside the Kubernetes platform, and load balance it to pods (containers) running inside the platform.
Kubernetes Ingress is an API object that helps developers expose their applications and manage external access by providing http/s routing rules to the services within a Kubernetes cluster.
To get traffic into your Kubernetes cluster, you need an ingress controller. To properly address security, availability, and developer workflows in a Kubernetes environment, you need more. Learn why you really need an Edge Stack API Gateway to securely and effectively manage traffic to your Kubernetes application.
What is the point load balancer to ingress in Kubernetes
Load Balancers in Kubernetes have quite a bit of overlap with ingresses. This is because they are primarily used to expose services to the internet, which, as we saw above, is also a feature of ingresses. However, load balancers have different characteristics from ingresses.Load balancer distributes workloads among servers or Kubernetes clusters in this instance in an equal manner. Ingress functions as a proxy to bring traffic into the cluster, then uses internal service routing to direct it where it is needed.Ingress can not sit between servers and the internet. Load balancers sit between servers and the internet.
Benefits of Using Ingress Controllers
Traffic Management and Load Balancing: Ingress Controllers allow for advanced traffic routing and load balancing strategies. This enables efficient distribution of incoming requests across multiple instances of a service, ensuring high availability and scalability.