Tengo un controlador de ingreso nginx en aks que configuré usando la guía oficial . También quería configurar nginx para permitir guiones bajos en el encabezado, así que escribí el siguiente mapa de configuración
apiVersion: v1 kind: ConfigMap data: enable-underscores-in-headers: "true" metadata: name: nginx-configurationTenga en cuenta que estoy usando el espacio de nombres predeterminado para nginx. Sin embargo, al aplicar el mapa de configuración, parece que no sucede nada. No veo eventos. ¿Qué estoy haciendo mal aquí?
Name: nginx-configuration Namespace: default Labels: <none> Annotations: kubectl.kubernetes.io/last-applied-configuration: {"apiVersion":"v1","data":{"enable-underscores-in-headers":"true"},"kind":"ConfigMap","metadata":{"annotations":{},"name":"nginx-configura... Data ==== enable-underscores-in-headers: ---- true Events: <none>La implementación del controlador de ingreso nginx hace referencia a un ConfigMap que se puede verificar describiendo la implementación.
args: - /nginx-ingress-controller - --configmap=$(POD_NAMESPACE)/nginx-configurationDebe editar ese configMap y agregar ese parámetro en lugar de crear uno nuevo.
kubectl edit cm nginx-configuration -n namespacenameLa solución fue nombrar correctamente el mapa de configuración, primero hice que kubectl describe deploy nginx-ingress-controller que contenía el mapa de configuración que busca esta implementación. En mi caso, fue algo como esto --configmap=default/nginx-ingress-controller . Cambié el nombre de mi mapa de configuración a nginx-ingress-controller . Tan pronto como lo hice, ese controlador recogió los datos de mi mapa de configuración y cambió la configuración dentro de mi pod nginx.