6.10. Ingress controller configuration#

You can use multiple ingress controllers with Nubus for Kubernetes. Univention develops and tests Nubus for Kubernetes with Traefik and NGINX.

6.10.1. Buffer size requirements#

Nubus components use the default buffer sizes that common ingress controllers provide. However, the following components have specific requirements:

UDM HTTP REST API

Set a response header buffer size of at least 64 KiB to handle large HTTP response headers.

Keycloak

Set a proxy buffer size of at least 8 KiB for large JWT tokens and authentication headers. Most ingress controllers provide this by default.

6.10.2. Traefik Ingress Controller#

To use Traefik with Nubus, set the ingress class in your custom_values.yaml file, as shown in Listing 6.27. To apply the configuration, follow the steps in Apply configuration. You don’t need additional configuration. Traefik automatically configures the buffer sizes that Nubus components need.

Listing 6.27 Configure Traefik as ingress controller#
global:
  ingressClass: "traefik"

See also

Traefik Kubernetes Ingress

for information about Traefik ingress configuration.

6.10.3. NGINX Ingress Controller#

NGINX is the default ingress controller for Nubus. The Helm Chart includes NGINX-specific annotations that automatically configure appropriate buffer sizes for all components.

If you use NGINX, you don’t need additional configuration. The default settings work without changes.

For custom buffer size settings, refer to the ingress section in the Helm Chart reference for configuration options.

See also

NGINX Ingress Controller Annotations

for information about NGINX ingress annotations.