gpt4 book ai didi

kubernetes-ingress - Kubernetes 证书不是为证书管理器创建的

转载 作者:行者123 更新时间:2023-12-05 03:57:15 25 4
gpt4 key购买 nike

我无法使用 cert-manager 创建证书。

我正在遵循本指南 https://docs.cert-manager.io/en/latest/getting-started/install/kubernetes.html

这个有效:

antonswanevelder$ kubectl get pods --namespace cert-manager
NAME READY STATUS RESTARTS AGE
cert-manager-69b4f77ffc-4296b 1/1 Running 0 9m5s
cert-manager-cainjector-576978ffc8-2mxz6 1/1 Running 0 2d13h
cert-manager-webhook-c67fbc858-sdjff 1/1 Running 1 2d13h

但是运行测试

kubectl describe certificate -n cert-manager-test

什么都不产生。

有什么办法解决这个问题吗?

最佳答案

重新创建 K8s 集群并按照上面 cert-manager 页面中的步骤进行操作。我犯的一个主要错误是在我的 Ingress 中引用了错误的命名空间。

请注意使用cert-manager.io/cluster-issuer

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
# add an annotation indicating the issuer to use.
cert-manager.io/cluster-issuer: letsencrypt-prod

另请注意,使用 v11 的 cert-manager 时,apiVersion 和求解器会略有不同。

apiVersion: cert-manager.io/v1alpha2
kind: ClusterIssuer
metadata:
name: letsencrypt-prod
spec:
acme:
# You must replace this email address with your own.
# Let's Encrypt will use this to contact you about expiring
# certificates, and issues related to your account.
email: youremail@domain.com
server: https://acme-v02.api.letsencrypt.org/directory
privateKeySecretRef:
# Secret resource used to store the account's private key.
name: letsencrypt-prod
# Add a single challenge solver, HTTP01 using nginx
solvers:
- http01:
ingress:
class: nginx

最后可能值得注意的是,Lets-encrypt 需要指向一个有效页面才能提供证书。确保您的域指向正确并且页面在该域的根目录下提供。 prod 上有一个速率限制器,因此最好与暂存颁发者合作,直到提供证书为止。如果您运行以下代码,它应该显示 CertificateCreated。

kubectl describe ingress

关于kubernetes-ingress - Kubernetes 证书不是为证书管理器创建的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58776873/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com