【发布时间】:2021-12-14 20:24:54
【问题描述】:
我已经在我的 k8 环境中设置了 cert-manager。使用 cert-manager v1.6.1(撰写时最新)
我设置了一个使用 dns01 挑战的 ACME 颁发者。
我创建了一个证书资源,将 spec.duration 指定为 7 小时。
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: mydomain.com
namespace: my-app
spec:
secretName: app-certs
duration: 7h
renewBefore: 6h
issuerRef:
name: acme-issuer
kind: Issuer
commonName: mydomain.com
dnsNames:
- mydomain.com
我可以在 certifiatesigningrequest 资源上看到它解释了我在证书上设置的持续时间。
Spec:
Duration: 7h0m0s
证书签名请求似乎一切正常。没有错误或任何东西,我看到证书已成功生成。
Conditions:
Last Transition Time: 2021-12-14T20:10:15Z
Message: Certificate request has been approved by cert-manager.io
Reason: cert-manager.io
Status: True
Type: Approved
Last Transition Time: 2021-12-14T20:10:16Z
Message: Certificate fetched from issuer successfully
Reason: Issued
Status: True
Type: Ready
但证书实际上使用的是默认持续时间(请参阅续订时间)
Status:
Conditions:
Last Transition Time: 2021-12-14T20:10:16Z
Message: Certificate is up to date and has not expired
Observed Generation: 4
Reason: Ready
Status: True
Type: Ready
Not After: 2022-03-14T19:10:14Z
Not Before: 2021-12-14T19:10:15Z
Renewal Time: 2022-03-14T18:30:14Z
那么我做错了什么吗?我认为如果 acme 挑战失败,它不会颁发任何证书。如何正确设置持续时间?
【问题讨论】: