前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >k8s安装自动证书签发cert-manager letsencrypt

k8s安装自动证书签发cert-manager letsencrypt

作者头像
少羽大怪兽
发布2020-10-16 10:58:42
8240
发布2020-10-16 10:58:42
举报
文章被收录于专栏:架构技术架构技术
  1. 创建 namespace kubectl create namespace cert-manager
  2. 安装 crds
代码语言:javascript
复制
kubectl apply -f https://raw.githubusercontent.com/jetstack/cert-manager/release-0.11/deploy/manifests/00-crds.yaml
  1. 标记命名空间 cert-manager 为 disable-validation
代码语言:javascript
复制
kubectl lab el namespace cert-manager certmanager.k8s.io/disable-validation=true
  1. 将 jetstack 加入到 helm repos
代码语言:javascript
复制
helm repo add jetstack https://charts.jetstack.io
  1. 更新 helm 仓库
代码语言:javascript
复制
helm repo update
  1. 使用helm chart 安装 cert-manager
代码语言:javascript
复制
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v0.11.0/cert-manager.yaml
  1. 创建 clusterissuer # issuer.yaml apiVersion: v1 kind: ClusterIssuer metadata: name: letsencrypt-prod #这里是issuer的名称,后面要使用 spec: acme: # 邮箱,证书过期前会发邮件到这个邮箱 email: admin@arfront.com server: https://acme-v02.api.letsencrypt.org/directory privateKeySecretRef: name: issuer-key solvers: - http01: ingress: class: nginx
代码语言:javascript
复制
kubectl apply -f issuer.yaml
  1. 测试
代码语言:javascript
复制
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    cert-manager.io/cluster-issuer: letsencrypt-prod #需要使用这个标记,letsencrypt-prod是上面issuer的名称
  name: nginx
  namespace: default
spec:
  rules:
  - host: dev.arfront.cn
    http:
      paths:
      - backend:
          serviceName: nginx
          servicePort: 80
        pathType: ImplementationSpecific
  tls:
  - hosts:
    - dev.arfront.cn 
    secretName: dev.arfront.cn #证书的域名
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-10-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档