Kubernetes证书管理
412 字
2 分钟
Kubernetes证书管理
后面 traefik 自己集成了证书管理,参考文档后面补充
1 准备工作
先安装对应 webhook,这里我使用腾讯的 DNSPod,其它的从这里找
git clone https://github.com/qqshfox/cert-manager-webhook-dnspod.git
1.1 获取 apiID 与 apiToken

2 部署 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.7.2 \ # 版本 --set ingressShim.defaultIssuerName=letsencrypt-prod \ # 下面三个参数是自动生成ClusterIssuer --set ingressShim.defaultIssuerKind=ClusterIssuer \ --set ingressShim.defaultIssuerGroup=cert-manager.io \ --set installCRDs=true # 创建cert-manager所需要的crd2.1 查看
kubectl get pod -n cert-managerNAME READY STATUS RESTARTS AGEcert-manager-88c9c88d7-5vmdm 1/1 Running 0 3m2scert-manager-cainjector-857f5bd88c-bwkfg 1/1 Running 0 3m2scert-manager-webhook-5cd99556d6-jnl4w 1/1 Running 0 3m2s3 部署 DNSPod webhook
helm install cert-manager-webhook-dnspod ./cert-manager-webhook-dnspod/deploy/cert-manager-webhook-dnspod \ --namespace 部署的命名空间 \ --set groupName=组名 \ --set secrets.apiID=apiID,secrets.apiToken=apiToken \ --set clusterIssuer.enabled=true,clusterIssuer.email=邮箱3.1 查看
kubectl get pod -n cert-managerNAME READY STATUS RESTARTS AGEcert-manager-88c9c88d7-5vmdm 1/1 Running 0 3m44scert-manager-cainjector-857f5bd88c-bwkfg 1/1 Running 0 3m44scert-manager-webhook-5cd99556d6-jnl4w 1/1 Running 0 3m44scert-manager-webhook-dnspod-7cbb554d57-bkdrx 1/1 Running 0 13skubectl get ClusterIssuerNAME READY AGEcert-manager-webhook-dnspod-cluster-issuer True 16s4 使用
cat ingress.yamlapiVersion: networking.k8s.io/v1kind: Ingressmetadata: annotations: cert-manager.io/cluster-issuer: cert-manager-webhook-dnspod-cluster-issuer # kubectl get ClusterIssuer查到的名字 name: hello-ingressspec: rules: - host: hello.ccops.cc http: paths: - pathType: Prefix path: / backend: service: name: myservice port: number: 443 tls: - hosts: - hello.ccops.cc secretName: hello-cert4.1 查看 dns 有没有自动添加

4.2 访问查看证书

5 遇到的问题
-
第一条 dns 解析能自动添加,第二条就没有了,日志也没任何报错
-
证书没自动创建,申请证书太多
Terminal window kubectl describe certificaterequest -n tekton-pipelines tekton-cert-sqrgxWarning OrderFailed 48m cert-manager Failed to wait for order resource "xxx-cert-sqrgx-3392950336" to become ready: order is in "errored" state: Failed to create Order: 429 urn:ietf:params:acme:error:rateLimited: Error creating new order :: too many certificates (5) already issued for this exact set of domains in the last 168 hours: xxx.ccops.cc: see https://letsencrypt.org/docs/rate-limits/
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
相关文章 智能推荐
1
如何安全的备份Kubernetes
🐳云原生 如何安全的备份Kubernetes
2
Kubernetes命令总结
🐳云原生 在使用Kubernetes中,命令使用到的总结
3
Kubernetes自定义权限
🐳云原生 Kubernetes权限管理,实现访问控制
4
Kubespray 国内安装k8s集群
🐳云原生 最可靠的k8s安装工具
5
RookCeph管理
🐳云原生 如何管理运行在k8s里的ceph
随机文章 随机推荐