website/content/en/docs/concepts/services-networking/ingress-controllers.md

4.1 KiB

title reviewers content_template toc_hide
Ingress Controllers templates/concept true

{{% capture body %}}

Ingress controllers

In order for the Ingress resource to work, the cluster must have an ingress controller running. This is unlike other types of controllers, which run as part of the kube-controller-manager binary, and are typically started automatically with a cluster. Choose the ingress controller implementation that best fits your cluster.

  • Kubernetes as a project currently supports and maintains GCE and nginx controllers.

Additional controllers include:

Using multiple Ingress controllers

You may deploy any number of ingress controllers within a cluster. When you create an ingress, you should annotate each ingress with the appropriate ingress.class to indicate which ingress controller should be used if more than one exists within your cluster.

If you do not define a class, your cloud provider may use a default ingress provider.

Ideally, all ingress controllers should fulfill this specification, but the various ingress controllers operate slightly differently.

{{< note >}} Make sure you review your ingress controller's documentation to understand the caveats of choosing it. {{< /note >}}

{{% /capture %}}

{{% capture whatsnext %}}

{{% /capture %}}