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

如何在GKE Nginx Ingress中配置Namecheap自有域名并排查DNS解析失败问题

GKE域名配置返回DNS_PROBE_FINISHED_NXDOMAIN错误排查方案

一、DNS链路核心配置错误(导致NXDOMAIN的首要原因)

  • 操作顺序错误:你直接在Namecheap配置了谷歌域名NS,但未提前在GCP Cloud DNS创建对应域名的公共托管区,正确操作流程如下:
    1. 登录GCP控制台进入Cloud DNS服务,创建对应你的主域名stagingmyappsrl.com(或根域名myappsrl.com)的公共托管区
    2. 创建完成后系统会自动分配4组NS服务器,将Namecheap后台的NS记录替换为GCP分配的这4组即可,Cloud DNS的NS前缀和集群可用区无关联,你自行选择带c后缀的NS本身无依据,且当前配置重复写入了两次ns-cloud-c3.googledomains.com.,属于错误配置
    3. 在托管区中添加A记录,将你需要用到的www.stagingmyappsrl.com、api.stagingmyappsrl.com都指向Nginx Ingress Controller的外部IP,该IP可通过命令kubectl get svc -n ingress-nginx ingress-nginx-controller获取EXTERNAL-IP字段值
  • NS记录修改后最长需要48小时全球生效,可本地运行nslookup 你的域名 8.8.8.8验证解析是否正常,能返回你配置的Ingress IP即代表DNS链路正常。

二、Ingress配置多处错误

你的Ingress配置存在拼写不匹配、转义错误问题,即使DNS正常也无法正常路由:

  1. tls配置段声明的域名是www.stagingmyappsrl.com、api.stagingmyappsrl.com,但rules规则里的host分别写的是wwwstaging.myappsrl.com、apistaging.stagingmyappsrl.com,两者完全不匹配,需要统一为你实际要使用的域名
  2. annotations中的"是HTML转义字符,需要替换为普通双引号"letsencrypt-prod"
  3. 修复完成后重新apply Ingress配置,运行kubectl describe ingress -n staging ingress检查是否存在配置报错。

三、证书前置检查

cert-manager的ClusterIssuer配置中apiVersion为v1alpha2,需要确认已安装对应版本的cert-manager,版本不匹配会导致证书签发失败,即使DNS解析正常也会出现HTTPS访问错误,可运行kubectl get clusterissuer检查STATUS是否为Ready。


内容的提问来源于stack exchange,提问作者agusgambina

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 07:15:04