nginx-ingress-controller pod 失败
来源:6-6 ingress实践

慕侠2486442
2025-01-27
NGINX Ingress controller 用的是0.29.0 版本,这个版本已经下载的虚拟机上,提示启动容器失败,查看容器日志,提示没有这个证书,default-fake-certificate.pem
这个证书怎么生成呢?这个路径下没有这个证书,/etc/ingress-controller/ssl/default-fake-certificate.pem:
写回答
1回答
-
清风
2025-01-31
1. 让 Ingress 使用一个有效的 TLS 证书
默认情况下,NGINX Ingress Controller 需要一个 TLS 证书来处理 HTTPS 请求。如果你没有手动指定证书,它会尝试使用
default-fake-certificate.pem
,而这个证书可能不存在或未正确创建。
✅ 手动创建一个自签名证书,并设置为默认 TLS 证书:sh复制编辑openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ -keyout tls.key -out tls.crt -subj "/CN=default-fake-certificate"
创建 Kubernetes Secret:
sh复制编辑kubectl create secret tls default-fake-certificate \ --key tls.key --cert tls.crt -n ingress-nginx
然后更新 NGINX Ingress Controller 的
Deployment
或ConfigMap
,确保它使用这个 Secret:sh复制编辑kubectl patch deployment nginx-ingress-controller \ -n ingress-nginx \ --type='json' -p='[{"op": "add", "path": "/spec/template/spec/containers/0/args/-", "value":"--default-ssl-certificate=ingress-nginx/default-fake-certificate"}]'
022025-02-07
相似问题