使用Helm图表和Traefik配置新的入口控制器并创建机密。
Kubernetes版本:1.9.3
头盔版本:2.9
Traefik图表版本:1.5
Traefik版本:1.7.2
我正在通过官方头盔图表部署Traefik,但我总是在日志中遇到同样的问题"Error configuring TLS for ingress default/traefik-testing-tls: secret default/traefik-tls does not exist"
我在相同的命名空间中正确创建和配置了秘密,并检查了clusterrole和clusterrolebinds是否正常并允许访问机密
我试图改变defaultCert
和defaultKey
,但不确定这一点。
data:
traefik.toml: |
# traefik.toml
logLevel = "INFO"
defaultEntryPoints = ["http", "https", "httpn"]
[entryPoints]
[entryPoints.http]
address = ":80"
compress = true
[entryPoints.https]
address = ":443"
compress = true
[entryPoints.httpn]
address = ":8880"
compress = true
[kubernetes]
namespaces = ["default", "kube-system"]
[traefikLog]
format = "json"
[accessLog]
format = "common"
[accessLog.fields]
defaultMode = "keep"
[accessLog.fields.names]
[accessLog.fields.headers]
defaultMode = "keep"
[accessLog.fields.headers.names]
看起来你错过了traefik-tls
秘密,对于你的traefik-testing-tls
入口,可能持有你的TLS证书。你可以关注this。
代替:
kubectl -n kube-system create secret tls traefik-ui-tls-cert --key=tls.key --cert=tls.crt
您可以使用:
kubectl -n kube-system create secret tls traefik-tls --key=tls.key --cert=tls.crt
经过几次检查,rbacs,名称空间等来自Traefik的成员告诉我们k8s对象是异步加载的(因此可以在秘密之前加载入口)这是原因,因为它在Traefik启动时出现了问题。