0

我正在尝试按照此处的说明设置带有 TLS 的入口和自动预配的证书,以进行新的 AKS 部署。

我最初配置了所有这些,但未能获得分配给 LB 的静态 IP 地址,因为我使用旧脚本创建了带有错误 SKU 的 IP 地址。修复 IP 地址后,我尝试使用生产服务器重新创建集群颁发者、入口和证书,但没有成功。我从以下 kubectl 命令的顺序中看到的错误:

kubectl describe order ao-tls-secret-12341234-12341234

原因:无法完成订单:400 urn:ietf:params:acme:error:malformed: 错误完成订单 :: 证书公钥必须不同于帐户密钥

我尝试切换到letsencrypt登台服务器并立即收到证书。切换回生产服务器,它再次挂起。

4

1 回答 1

2

正如错误所说,您不应该为 Let's Encrypt 帐户私钥(由 issuer.spec.acme.privateKeySecretRef 引用的那个)以及证书的实际证书(ingress.spec.tls[] .secretName)。

通常,您会将您的帐户私钥命名为类似于letsencrypt-staging-private-key 的名称,并将您的入口证书命名为类似于您现在所拥有的名称(例如vs-portal-tls-secret)。

Issuer 私钥用于在 ACME 服务器上识别您的 ACME 帐户,它与用于服务的私钥无关。

https://github.com/jetstack/cert-manager/issues/1387

于 2020-03-25T11:07:07.843 回答