#kubernetes #google-kubernetes-engine #kubernetes-ingress
#kubernetes #google-kubernetes-engine #kubernetes-вход
Вопрос:
Я пытаюсь настроить jetstack / cert-manager в kubernetes. Это обеспечит сертификаты для нескольких моих поддоменов. Это отлично работало, пока мне не понадобилось создать файл nginx.conf.
Что происходит сейчас, так это то, что все запросы от cert-manager к http://www.redacted.com/.well-know/challenge/xx
обрабатываются моим модулем приложений, а не блоками cert-manager.
Кто-нибудь знает, как я могу сохранить файл конфигурации nginx, но позволить всем известным запросам обрабатываться блоками cert-manager? Кажется, что если бы я мог выбрать порядок входов, я мог бы установить приоритет для входа моего приложения на последний, чтобы автоматически созданные входы cert-manager запускались первыми.
Большое спасибо!
Ответ №1:
Попробуйте добавить службу для своих модулей cert manager, а затем создайте и введите ресурс с hostPath как /.well-known. Все ваши запросы по указанному вами URL будут отправлены в службу, которую вы создадите для модулей.
Ответ №2:
Итак, я понял это, и это, конечно, не было проблемой с cert-manager!
Мой корневой домен, например, <redacted>.com
автоматически перенаправлялся на www.<redacted>.com
, но также пытался сгенерировать сертификат на <redacted>.com
, а также для поддоменов. Сбой Cert-manager, поскольку он не смог достичь .well-known/acme-challenge корневого домена при перенаправлении.
Способ, которым я планирую решить эту проблему, заключается в создании корневого сертификата через DNS, а не HTTP, и таким образом сертификат все еще будет действителен для <redacted>.com
, и я все еще могу пересылать как http, так и https-соединения на поддомен www.