
Augment description of custom-headers behavior. Explain the purpose of the two configmaps, making explicit that one cites the other by `namespace/name`. Link the two example yaml files, so they're more easily navigated to from a browser looking at https://kubernetes.github.io/ingress-nginx/examples/customization/custom-headers/ Campfire: grammar, standard installation is in the `ingress-nginx` namespace.
1.5 KiB
Custom Headers
This example demonstrates configuration of the nginx ingress controller via a ConfigMap to pass a custom list of headers to the upstream server.
custom-headers.yaml defines a ConfigMap in the ingress-nginx
namespace named custom-headers
, holding several custom X-prefixed HTTP headers.
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/docs/examples/customization/custom-headers/custom-headers.yaml
configmap.yaml defines a ConfigMap in the ingress-nginx
namespace named nginx-configuration
. This controls the global configuration of the ingress controller, and already exists in a standard installation. The key proxy-set-headers
is set to cite the previously-created ingress-nginx/custom-headers
ConfigMap.
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/docs/examples/customization/custom-headers/configmap.yaml
The nginx ingress controller will read the ingress-nginx/nginx-configuration
ConfigMap, find the proxy-set-headers
key, read HTTP headers from the ingress-nginx/custom-headers
ConfigMap, and include those HTTP headers in all requests flowing from nginx to the backends.
Test
Check the contents of the ConfigMaps are present in the nginx.conf file using:
kubectl exec nginx-ingress-controller-873061567-4n3k2 -n ingress-nginx cat /etc/nginx/nginx.conf