k8s证书管理:如何配置Cert-Manager与Let‘s Encrypt集成以自动申请证书?
  0SnbOly3LC5t 2023年11月19日 20 0


要配置Cert-Manager与Let’s Encrypt集成以自动申请证书,您需要完成以下步骤:

  1. 安装Cert-Manager:请参考之前提到的安装Cert-Manager的步骤。
  2. 创建一个证书颁发机构(Issuer)对象:
  • 创建一个名为letsencrypt-prod的文件,例如letsencrypt-prod.yaml,并添加以下内容:
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt-prod
spec:
  acme:
    email: your-email@example.com
    server: https://acme-v02.api.letsencrypt.org/directory
    privateKeySecretRef:
      name: letsencrypt-prod
    solvers:
      - http01:
          ingress:
            class: nginx
  • your-email@example.com替换为您自己的电子邮件地址。
  • 应用Issuer配置:kubectl apply -f letsencrypt-prod.yaml
  1. 创建一个Ingress对象并关联证书:
  • 创建一个名为example-ingress的文件,例如example-ingress.yaml,并添加以下内容:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: example-ingress
  annotations:
    cert-manager.io/issuer: "letsencrypt-prod"
spec:
  tls:
    - hosts:
        - example.com
      secretName: example-tls
  rules:
    - host: example.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: example-app
                port:
                  number: 80
  • example.com替换为您自己的域名。
  • example-app替换为您正在使用的后端服务。
  • 应用Ingress配置:kubectl apply -f example-ingress.yaml
  1. 等待证书颁发:
  • Cert-Manager将自动监视您的Ingress对象,并在需要时向Let’s Encrypt发出证书申请。
  • Cert-Manager将为您的域名验证所有权,并在成功验证后自动颁发证书。
  • 您可以使用kubectl describe certificate example-tls命令来查看证书颁发的状态和事件。

通过以上步骤,您将配置了Cert-Manager与Let’s Encrypt的集成,并使其自动申请和管理证书。请确保您的域名解析正确,并且在公共Internet中可访问。Cert-Manager将处理证书的自动更新和续期,以确保您的应用程序始终使用有效的证书。

请注意,示例中使用的是Let’s Encrypt的生产环境,对于测试和开发环境,您可以使用Let’s Encrypt的Staging环境(https://acme-staging-v02.api.letsencrypt.org/directory),以避免达到Let’s Encrypt生产环境的频率限制。

这只是一个简单的示例,您可以根据自己的需求和环境进行更详细的配置和调整。Cert-Manager和Let’s Encrypt提供了更多高级功能和选项,您可以查阅官方文档以获取更多信息和示例:https://cert-manager.io/docs/


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月19日 0

暂无评论

推荐阅读
0SnbOly3LC5t