k8s中cert-manager管理https证书

本文介绍了如何在kubernetes(k8s)环境中利用cert-manager自动管理HTTPS证书,包括使用Helm安装cert-manager,配置ClusterIssuer,以及通过Nginx Ingress和DNS验证方式申请和更新免费的Let's Encrypt证书。此外,还提到了针对阿里云DNS的自动验证配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

目前https是刚需,但证书又很贵,虽然阿里云有免费的,但没有泛域名证书,每有一个子域名就要申请一个证书,有效期1年,1年一到全都的更换,太麻烦了。经过搜索,发现了自动更新证书神器cert-manager;当然cert-manager是基于k8s的。

安装采用Helm方式

Chart地址: https://artifacthub.io/packages/helm/cert-manager/cert-manager
Github地址: https://github.com/cert-manager/cert-manager

版本要求:

k8s > 1.20

一、安装cert-manager(1.13.3)

  1. 安装自定义资源
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.13.3/cert-manager.crds.yaml
  1. helm安装cert-manager
## Add the Jetstack Helm repository
helm repo add jetstack https://charts.jetstack.io

helm repo update

kubectl create ns cert-manager
## Install the cert-manager helm chart
$ helm install cert-manager --namespace cert-manager --version v1.13.3 jetstack/cert-manager
  1. 查看安装结果
helm ls -n cert-manager
kubectl get pod -n cert-manager

在这里插入图片描述

二、创建ClusterIssuer

官方说明创建ClusterIssuer
这里使用Nginx Ingress的配置方式,需要k8s中安装Nginx Ingress;并且域名指向正确

ClusterIssuer故名思意就是证书颁发者,主要用来配置证书颁发机构(这里配置的是免费证书颁发机构Let’s Encrypt)以及验证方式(这里配置的验证方式是http)

apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt-prod-http
  namespace: cert-manager
spec:
  acme:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

椰汁菠萝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值