Kubernetes集群——Cert-manager与Let'sencrypt证书自动管理

Posted amazingWu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kubernetes集群——Cert-manager与Let'sencrypt证书自动管理相关的知识,希望对你有一定的参考价值。

1. Cert-manager安装

1.1. 安装自定义crd资源

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.11.0/cert-manager.crds.yaml

1.2. 使用helm安装cert-manager并新建一个命名空间

helm repo add jetstack https://charts.jetstack.io && helm repo update

helm install \\
  cert-manager jetstack/cert-manager \\
  --namespace cert-manager \\
  --create-namespace \\
  --version v1.11.0

 1.3. 查看安装情况

kubectl get pod -n cert-manager

出现如下图所示及正式安装成功

 

2. 配置使用Let\'s encrypt进行申请公网证书

2.1. 创建ClusterIssuer

创建文件:vim ClusterIssuer.yaml

内容如下,注意email字段需要填写自己的邮箱,class字段要对应ingress的class,详见Kubernetes集群(四)

apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt-prod
spec:
  acme:
    email: 【此处修改为你的邮箱】
    privateKeySecretRef:
      name: letsencrypt-prod
    server: https://acme-v02.api.letsencrypt.org/directory
    solvers:
      - http01:
          ingress:
            class: nginx

应用文件:kubectl apply -f ClusterIssuer.yaml

后续申请的证书使用letsencrypt这个ClusterIssuer就可以获取公网证书,前提是拥有这个公网域名。

以上是关于Kubernetes集群——Cert-manager与Let'sencrypt证书自动管理的主要内容,如果未能解决你的问题,请参考以下文章

Docker&Kubernetes ❀ Kubernetes集群实践与部署笔记知识点梳理

Docker&Kubernetes ❀ Kubernetes集群实践与部署笔记知识点梳理

快速搭建kubernetes高可用集群(3master+3worker+负载均衡)

Kubernetes 集群中的 Kafka - 如何从 Kubernetes 集群外部发布/使用消息

[K8s]Kubernetes-集群管理

管理数百个Kubernetes集群需要什么?