[英]Kubernetes Ingress can't find SSL secret created by CertManager
我一直在嘗試從 Let's Encrypt 生成 SSL 證書到我的域,但 cert-manager 創建了秘密並添加了一個隨機后綴,導致 NGINX 入口 Z594C103F2C6E004C3D8AB05 無法找到它:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: nginx-ingress
annotations:
kubernetes.io/ingress.class: "nginx"
cert-manager.io/issuer: scaleway
kubernetes.io/tls-acme: "true"
spec:
rules:
- host: <DOMAIN>
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: my-svc
port:
number: 80
tls:
- hosts:
- <DOMAIN>
secretName: tls-cert
這是 NGINX 日志中的錯誤:
Error obtaining X.509 certificate: no object matching key "default/tls-cert" in local store
Error getting SSL certificate "default/storek8s.igesa.it": local SSL certificate default/storek8s.igesa.it was not found. Using default certificate
秘密總是這樣創建的:
NAME TYPE DATA AGE
...
tls-secret-fjrm5 Opaque 1 60m
如何禁用為 Ingress 生成的密鑰添加隨機后綴? 有什么辦法可以解決這個問題嗎?
目前我掌握的信息太少,無法給出准確的答案。 例如,您是否使用此Helm 圖表以及使用哪些values.yaml
?
我知道 cert-manager 創建的tls
機密應該是kubernetes.io/tls
類型,而不是像您的情況那樣Opaque
。 所以那里肯定有問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.