证书经理-我的证书的期限和续订过程

时间:2019-03-26 13:16:30

标签: ssl-certificate azure-kubernetes cert-manager

我正在与cert-manager和kong-ingress-controller一起在kubernetes中启用https。

我想弄清楚更新过程如何,当我仅使用ClusterIssuer时,以及使用入口资源时默认生成的证书。

我没有使用kind: Certificate资源,这意味着我没有定义要签名的X.509自定义证书,也没有获得通过引用我的ClusterIssuer验证的证书。

目前,我已经创建了一个ClusterIssuer和一个入口资源,该入口资源会自动创建一个名为letsencrypt-prod的证书,该证书将用于在{{1}之间执行http01验证},并让CA加密

最后,我得到以下输出:

cert-manager

这意味着我的证书将在 1438h-59m-58.49343646s 内进行更新。这意味着大约三个月

这意味着真的会自动装修吗?

如指示here

  

所有证书的默认持续时间为90天,默认续订窗口为30天。这意味着证书被视为有效期为3个月,并且将在到期后的1个月内尝试续签。

证书管理器文档说:

  

尽管在证书资源上指定了持续时间和续订期限,但是相应的颁发者或ClusterIssuer必须支持此期限。

我的群集发行者是:

I0321 10:49:48.505664       1 controller.go:162] certificates controller: syncing item 'default/letsencrypt-prod'
I0321 10:49:48.506008       1 conditions.go:143] Found status change for Certificate "letsencrypt-prod" condition "Ready": "False" -> "True"; setting lastTransitionTime to 2019-03-21 10:49:48.506003434 +0000 UTC m=+168443.026129945
I0321 10:49:48.506571       1 sync.go:263] Certificate default/letsencrypt-prod scheduled for renewal in 1438h59m58.49343646s
I0321 13:57:46.226424       1 controller.go:168] certificates controller: Finished processing work item "default/letsencrypt-prod"
I0321 15:12:53.199067       1 controller.go:178] ingress-shim controller: syncing item 'default/kong-ingress-service'
I0321 15:12:53.199171       1 sync.go:183] Certificate "letsencrypt-prod" for ingress "kong-ingress-service" is up to date

如果不创建证书资源,如何管理apiVersion: certmanager.k8s.io/v1alpha1 kind: ClusterIssuer metadata: name: letsencrypt-prod spec: acme: server: https://acme-v02.api.letsencrypt.org/directory email: my-email@example.com privateKeySecretRef: name: letsencrypt-prod http01: {} duration参数。 ?

是否可以在我的ClusterIssuer中添加renewBeforeduration参数?也许是这样吗?

renewBefore

1 个答案:

答案 0 :(得分:1)

发行人\集群发行人仅在证书上不支持此功能。您可以创建admission controllers来对证书进行突变,也可以在创建证书资源后通过cronjob对其进行更新