
Using this simple annotation, you're able to restrict who can access the applications in your kubernetes cluster by its IPs. Please note that not all ingress-controllers support whitelisting, please check the documentation of the ingress-controller you're using. The global value can be overwritten using annotation in the Ingress rule. In the example below we use the NGINX ingress-controller and could set that default value in the config-map used for the ingress-controller.

An Ingress Controller reads and processes the Ingress Resource information and usually runs as pods within the Kubernetes cluster. An ingress controller is responsible for. An Ingress Controller is essential because it is the actual implementation of the Ingress API. In terms of actual implementation, the Ingress Controller is an application hosted inside a Kubernetes cluster that actively manages a load balancer following. If you want to set a default global set of IPs this needs to be set in the config of the ingress-controller. Kubernetes supports a high level abstraction called Ingress, which allows simple host or URL based HTTP routing. The value is a comma separated list of CIDR block, e.g. An Ingress does not expose arbitrary ports or protocols. This can be done with specifying the allowed client IP source ranges through the `/whitelist-source-range` annotation. An Ingress controller is responsible for fulfilling the Ingress, usually with a load balancer, though it may also configure your edge router or additional frontends to help handle the traffic. In such cases, IP whitelisting to restrict access can be used.


One possible use case would be that you have a development setup and don't want to make all the fancy new features available to everyone, especially competitors. To resolve this be sure to explicitly set ServiceAccount name the same as the ingress controller service name using its respective helm configurations. They have additional components that monitor the Kubernetes cluster for new. Consul on Kubernetes requires the ServiceAccount and Service to have the same name. The Ingress Controller is not just another load balancer or a reverse proxy service. If you are using Ingress on your Kubernetes cluster it is possible to restrict access to your application based on dedicated IP addresses. The Ingress Controllers ServiceAccount name and Service name differ by default in some platforms.
