问题:HTTPS转发报错failed to convert certificate chain from PEM to DER: PEM_read_bio_X509_AUX() failed
分析:谷歌搜索https://github.com/kubernetes/ingress-nginx/issues/4106分析是Nginx Ingress Controller版本问题,

	It can be fixed by upgrading the Nginx Ingress Controller to version 0.25.0 or higher. Alternatively, you can downgrade to version 0.23.0.

解决:无论升级还是降级都没有解决问题,反而Nginx Ingress Controller无法启动了。
但是在升级到version 0.25.0的过程中看到了日志设置了个参数–enable-ssl-chain-completion=false,这个参数跟以上问题看着有点关系,所以决定改回v0.24.0版本,并添加以上参数。

"spec": {
        "containers": [
          {
            "name": "nginx-ingress-controller",
            "image": "quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.24.0",
            "args": [
              "/nginx-ingress-controller",
              "--enable-ssl-chain-completion=false",
              "--default-backend-service=kube-system/ningx-ingress-nginx-ingress-default-backend",
              "--election-id=ingress-controller-leader",
              "--ingress-class=nginx",
              "--configmap=kube-system/ningx-ingress-nginx-ingress-controller"
            ],

添加以上参数后问题结局。此问题解决可谓是一波三折,百度,谷歌都没有解决,无意中发现这个参数,竟然解决了。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐