如何配置子域名指向AKS静态IP Ingress并适配HTTPS与Let's Encrypt
自有子域名对接AKS静态IP Ingress的配置步骤
1. 域名侧解析规则配置
- 登录持有
hello.john.com的域名服务商DNS管理后台,进入该域名的解析配置页面 - 新增一条CNAME类型解析记录:主机记录填写
hello,解析目标值填写当前AKS静态公网IP对应的已生效DNS地址demo-aks-ingress.eastus.cloudapp.azure.com,TTL保持服务商默认值即可 - 不要直接将子域名A记录指向公网IP:Azure公网IP的DNS名称标签、流量调度规则和静态IP资源是强绑定的,直连IP会导致后续IP关联资源变更时出现解析失效问题
2. AKS集群侧Ingress与证书适配调整
你此前完成的静态IP Ingress、Let's Encrypt自动签发部署已经具备基础运行能力,仅需做两处适配调整即可支持自有子域名访问:
- 调整现有Ingress资源的路由规则:在Ingress的
spec.rules配置段中,新增host字段值为hello.john.com的路由条目,后端服务地址、路径匹配逻辑完全复用之前已验证可用的配置,应用配置后Ingress控制器会自动加载新的路由规则 - 适配Let's Encrypt证书的签发范围:找到当前由cert-manager管理、自动为Ingress签发证书的Certificate资源,在
spec.dnsNames列表中追加hello.john.com字段。cert-manager会自动触发Let's Encrypt的HTTP-01验证流程,为新域名签发匹配的可信证书,全程无需手动上传或替换证书文件
注:Let's Encrypt的HTTP-01验证流程要求外部请求可以直接访问到
hello.john.com指向的Ingress入口,只要前面的CNAME记录配置正确,该流程会自动完成,不需要额外修改NSG防火墙规则或Ingress路由
3. 生效验证
- 等待DNS记录全球缓存同步完成(通常5-10分钟),通过
nslookup hello.john.com命令确认解析结果最终指向demo-aks-ingress.eastus.cloudapp.azure.com对应的公网IP - 直接通过浏览器访问
https://hello.john.com,确认页面可以正常加载,浏览器无HTTPS证书错误提示;打开证书详情页,确认证书的备用主体名称列表中已经包含hello.john.com
内容的提问来源于stack exchange,提问作者gunnarst
相关产品推荐
相关产品推荐

