Входной контроллер Helm3 Отказано в расположении, причина: неверный формат (пространство имен / имя) - PullRequest
0 голосов
/ 13 апреля 2020

Я использую helm3 для развертывания приложения на основе PHP в kubernetes. Я использую контроллер доступа ниже версии. Я получаю ниже упомянутую ошибку. Несмотря на то, что в желаемом пространстве имен есть секреты, он выдает эту ошибку. Когда я делаю развертывание с использованием "kubectl apply -f yaml", оно работает отлично. Nginx контроллер поддерживает бэкэнд HTTPS с этой аннотацией "nginx .ingress.kubernetes.io / backend-protocol:" HTTPS ", но каким-то образом он не распознается, как показано в ошибке. Кто-то может помочь?

NGINX Ingress controller
  Release:       0.30.0
  Build:         git-7e65b90c4
  Repository:    https://github.com/kubernetes/ingress-nginx
  nginx version: nginx/1.17.8

Nginx ошибка контроллера

W0413 17:30:53.061666       6 main.go:60] Protocol "HTTPS" is not a valid value for the backend-protocol annotation. Using HTTP as protocol
W0413 17:30:56.382073       6 controller.go:1105] Error getting SSL certificate "tls-test/php-tls-secret": local SSL certificate tls-test/php-tls-secret was not found. Using default certificate
E0413 17:19:32.942187       6 annotations.go:200] error reading ProxySSL annotation in Ingress tls-test/abc-demo: Location denied, reason: invalid format (namespace/name) found in "abc-tls-secret

"

Values.yaml

  annotations:
    nginx.ingress.kubernetes.io/proxy-ssl-secret: |
      "tls-test/abc-tls-secret"
    nginx.ingress.kubernetes.io/auth-tls-secret: |
       "tls-test/php-tls-secret"
    nginx.ingress.kubernetes.io/backend-protocol: |
      "HTTPS"

1 Ответ

2 голосов
/ 14 апреля 2020
nginx.ingress.kubernetes.io/backend-protocol: |
  "HTTPS"

Не указывает HTTPS в качестве backend-protocol, он указывает "HTTPS"\n в качестве backned-protocol

nginx.ingress.kubernetes.io/backend-protocol: HTTPS

- это правильный параметр, не только потому, что он удаляет новую строку, вызванную оператором yaml pipe, а также двойными кавычками, которые происходят между каналом и буквальными " символами


, что касается сообщения об ошибке, это не может быть более ясным: удалите Спецификатор пространства имен, поскольку нет результата, через который ресурс Ingress будет обращаться к какому-либо пространству имен, кроме того, в котором он создан

...