You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cert-Manager DNS-01 Challenge pending(Azure环境)求助排查

Cert-Manager TLS Challenge Pending(令牌刷新失败)排查步骤

1. 深度检查MIC Pod运行状态

  • 查看MIC Pod的资源使用与重启情况,排查OOM或运行异常:
    kubectl top pods -n <mic-namespace>
    kubectl describe pod <mic-pod-name> -n <mic-namespace>
  • 提取Pod关联事件,捕捉未被日志记录的异常:
    kubectl get events -n <mic-namespace> --field-selector involvedObject.name=<mic-pod-name>

2. 解析Challenge资源的完整错误信息

  • 导出Challenge的YAML状态,挖掘隐藏的故障细节:
    kubectl get challenge <challenge-name> -n <your-namespace> -o yaml
  • 重点核查status.conditions字段,确认是否存在DNS解析失败、Ingress路由拦截等附加提示

3. 验证ClusterIssuer配置有效性

  • 检查ACME服务器地址、账户注册状态:
    kubectl get clusterissuer <clusterissuer-name> -o yaml
  • 确认status.conditions状态为Ready=True,ACME邮箱注册信息正常

4. 检查测试应用的Ingress路由配置

  • 确认Ingress已正确关联Certificate,且/.well-known/acme-challenge/路径未被拦截:
    kubectl get ingress <ingress-name> -n <your-namespace> -o yaml
  • 从集群内部测试Challenge路径可达性:
    kubectl run -it --rm test-pod --image=curlimages/curl -- curl http://<your-domain>/.well-known/acme-challenge/<token-from-challenge>

5. 排查网络策略与防火墙规则

  • 检查cert-manager与MIC所在命名空间的网络策略,确认组件间通信未被禁止:
    kubectl get networkpolicy -n <cert-manager-namespace>
    kubectl get networkpolicy -n <mic-namespace>
  • 确认集群节点防火墙放行ACME服务器的443端口出站请求

6. 审查Terraform代码配置疏漏

  • 检查Certificate资源的issuerRef字段,确认kind与name和ClusterIssuer完全匹配
  • 验证资源创建顺序,确保ClusterIssuer就绪后再创建Certificate、Order等资源
  • 检查MIC相关Terraform配置,确认已授予访问cert-manager资源的RBAC权限

内容的提问来源于stack exchange,提问作者kevin-schmid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 05:18:21