首先我们需要去CloudFlare上去获取签发证书的token,点击您的头像➡️配置文件➡️API令牌,然后点击创建令牌,使用API 令牌模板,使用"编辑区域 DNS"或者创建自定义令牌这两个模板即可。

创建好以后会自动生成一个token,这个token你需要记录好。
创建证书所需的记录token的Secret
apiVersion: v1
kind: Secret
metadata:
name: cloudflare-token-secret
namespace: cert-manager
type: Opaque
stringData:
api-token: xxx创建证书签发者,我们使用clusterissuer进行全局的证书签发
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: letsencrypt-cloudflare-prod
spec:
acme:
server: https://acme-v02.api.letsencrypt.org/directory
email: <你的收件邮箱,证书到期会有邮件通知>
privateKeySecretRef:
name: letsencrypt-prod-account-key
solvers:
- dns01:
cloudflare:
apiTokenSecretRef:
name: cloudflare-token-secret
key: api-token创建域名证书,clusterIssuer自动签发tls
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: cloudflare-ca
namespace: higress-system
spec:
dnsNames:
- "sulao.cn"
- '*.sulao.cn'
issuerRef:
kind: ClusterIssuer
name: letsencrypt-cloudflare-prod
secretName: cloudflare-ca-tls部署完成以后我们可以查看证书状态是否是True,如果是Ture的话他会自动创建tls,名字就是上述中写的cloudflare-ca-tls
另外我们需要更改域名,直接修改Certificate资源apply就生效,不需要改ClusterIssuer,不用手动操作Secret,注意不要频繁去做这个操作,频繁去申请证书可能导致请求被封禁
另外一下是一些插件的排查问题的命令
查看Certificate状态
kubectl -n higress-system get certificate cloudflare-ca
kubectl -n higress-system describe certificate cloudflare-ca查看Order资源
kubectl -n higress-system get order
kubectl -n higress-system describe order <order-name>查看 challenge 状态(DNS01 核心)
kubectl get challenges -A
kubectl -n higress-system describe challenge <challenge-name>后续如果有需要使用到域名的Ingress规则,直接在Ingress规则中进行这个证书的引用即可。
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: sulao-ingress
namespace: higress-system
spec:
tls:
- hosts:
- api.sulao.cn
secretName: cloudflare-ca-tls # 直接引用你生成的泛域名secret
rules:
- host: api.sulao.cn
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: sulao-svc #业务的svc
port:
number: 80
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://sulao.cn/post/1183
相关阅读
- 在k8s集群中使用NodeLocal DNSCache(localdns)
- k8s安装cert-manager使用Ingress暴露服务
- AI程序索引越界引起的nvidia-fabricnamage异常问题排查
- k8s更新证书的步骤和影响范围
- linux基于cloudreve搭建私有云盘
- ubuntu22.04安装nvidia-fabricmanager
- k8s中calico匹配多种网络接口名字的方法
- k8s网络cni插件calico的安装和网络模式切换
- GPU计算能力(Compute Capability)对照表
- rust运行cargo run命令以后报错linker `link.exe` not found
评论列表