nginx 入口控制器不读取 configmap

use*_*088 2 nginx azure kubernetes

我在 aks 上有一个 nginx 入口控制器,我使用官方指南配置了它。我还想配置 nginx 以允许标头中使用下划线,所以我写下了以下配置映射

apiVersion: v1
kind: ConfigMap
data:
   enable-underscores-in-headers: "true"
metadata:
   name: nginx-configuration
Run Code Online (Sandbox Code Playgroud)

请注意,我使用 nginx 的默认命名空间。然而应用配置映射似乎没有发生任何事情。我没有看到任何事件。我在这里做错了什么?

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>
Run Code Online (Sandbox Code Playgroud)

use*_*088 6

解决方案是正确命名 configmap,首先我这样做,kubectl describe deploy nginx-ingress-controller其中包含此部署正在寻找的 configmap。就我而言,情况是这样的--configmap=default/nginx-ingress-controller。我将配置映射的名称更改为nginx-ingress-controller. 一旦我这样做,控制器就会从我的 configmap 中获取数据并更改我的 nginx pod 内的配置。