<p>Currently, I am studying Kubernetes and I came across the term Ingress object. I was wondering if there is a list of differences between the two as to me they seem like synonyms. To me it seems that an NGINX is a more functional ingress as it allows for instance video and image compression, pre-fetching and caching. </p>

<p>On the other hand, Ingresses seem to overlap with NGINX' reverse proxies by providing load-balancing, traffic routing, TLS/SSL terminating. The only thing I see that an ingress may have compared to a NGINX/Envoy RP is that it is a "kubernetes API object".</p>

<p>Does this mean that it consists of 2 parts - an interfacing one between the API and some actual reverse proxy? Meaning, is an "ingress" just a kubernetes term for a wrapper of an NGINX RP enforcing Kubernetes' API on it OR it is a totally separate type of server?   </p>

<p>Could you please list some list of the differences between the two?</p>

<p>You are right in your understanding. Ingress has two parts a controller which implements Kubernetes ingress API interface for an automated and fast way to configure a reverse proxy such as Nginx or envoy.</p>
<p>The other part is the reverse proxy itself such as Nginx, envoy.</p>
<p>So when you deploy an ingress setup in Kubernetes it will deploy an ingress controller and a reverse proxy in your Kubernetes cluster.</p>
