更新时间:2025-07-07 GMT+08:00
分享

节点本地域名解析加速(NodeLocal DNSCache)

插件简介

节点本地域名解析加速(NodeLocal DNSCache)是基于社区NodeLocal DNSCache提供的插件,通过在集群节点上作为守护程序集运行DNS缓存代理,提高集群DNS性能。

启用NodeLocal DNSCache之后,DNS查询所遵循的路径如下图所示。

图1 NodeLocal DNSCache查询路径
其中解析线路说明如下:
  • ①:已注入DNS本地缓存的Pod,默认会通过NodeLocal DNSCache解析请求域名。
  • ②:NodeLocal DNSCache本地缓存如果无法解析请求,则会请求集群CoreDNS进行解析。
  • ③:对于非集群内的域名,CoreDNS会通过VPC的DNS服务器进行解析。
  • ④:已注入DNS本地缓存的Pod,如果无法连通NodeLocal DNSCache,则会直接通过CoreDNS解析域名。
  • ⑤:未注入DNS本地缓存的Pod,默认会通过CoreDNS解析域名。

约束与限制

  • 支持在ModelArts Standard专属资源池安装NodeLocal DNSCache。
  • 支持CCE版本:v1.25-v1.31。

安装插件

在资源池中安装指定插件。

  1. 登录ModelArts管理控制台,在左侧菜单栏中选择“资源管理 > 标准算力集群 (Standard Cluster)”。
  2. 单击资源池名称,进入资源池详情页。
  3. 在资源池详情页,切换到“插件”页签。
  4. 在未安装插件列表中,选择待安装的插件,单击“安装”
    图2 安装插件
  5. “安装插件”弹框中,配置相关参数,参数说明如下。
    表1 节点本地域名解析加速配置参数说明

    参数

    子参数

    说明

    规格配置

    插件版本

    指定部署的 NodeLocal DNSCache 插件版本。支持版本1.6.64。

    插件规格

    预置规格:高可用规格(负责DNSConfig自动注入的控制器双副本部署,提升插件可靠性)、单实例规格(负责DNSConfig自动注入的控制器单副本部署,资源消耗低)。两种预置规格的配置不同,具体可参见预置规格对应的配置清单

    自定义规格:指定部署 NodeLocal DNSCache 时的部署配置(副本数、CPU申请配额/限制配额、内存申请配额/限制配额)。

    配置清单

    指定 NodeLocal DNSCache 插件的各项具体配置参数。

    选择自定义规格时,可指定副本数、CPU申请配额/限制配额、内存申请配额/限制配额。

    参数配置

    DNSConfig自动注入

    开启后,基于Admission Webhook机制,拦截目标命名空间Pod创建的请求,自动注入使用DNS缓存的Pod DNSConfig信息。

    默认开启全部命名空间 DNSConfig 自动注入,即自动添加标签 node-local-dns-injection=enabled (包含存量命名空间,不含系统内置的命名空间)。当Pod中存在DNS配置时,优先使用Pod的DNS配置。

    关闭后,所有命名空间Pod创建时不再自动注入DNSConfig,已注入的Pod DNSConfig不受影响。

    域名解析服务器地址(可选)

    容器解析域名时查询的DNS服务器的IP地址列表。开启“DNSConfig自动注入”后需要配置此参数。默认会添加NodeLocal DNSCache的地址,以及CoreDNS的地址,允许用户额外追加1个地址,重复的IP地址将被删除。

    搜索域(可选)

    Pod中主机名查找的DNS搜索域列表。开启“DNSConfig自动注入”后需要配置此参数。此参数配置是可选的。指定后,提供的列表将合并到从所选DNS策略生成的基本搜索域名中,并删除重复的域名。Kubernetes最多允许3个搜索域。

    ndots(可选)

    开启“DNSConfig自动注入”后需要配置此参数。

    该参数的含义是当域名的“.”个数小于ndots的值,会先把域名与search搜索域列表进行组合后进行DNS查询,如果均没有被正确解析,再以域名本身去进行DNS查询。当域名的“.”个数大于或者等于ndots的值,会先对域名本身进行DNS查询,如果没有被正确解析,再把域名与search搜索域列表依次进行组合后进行DNS查询。

  6. 阅读使用说明,勾选“我已阅读并知晓上述使用说明”
  7. 单击“确定”

组件说明

表2 节点本地域名解析加速组件说明

容器组件

说明

资源类型

node-local-dns-admission-controller

提供自动注入DNSConfig功能。

Deployment

node-local-dns-cache

作为节点上DNS缓存代理提高集群DNS性能。

DaemonSet

插件相关操作

请见插件相关操作

版本记录

表3 节点本地域名解析加速版本记录

插件版本

更新特性

1.6.66

支持CCE 1.31集群;更新admission-controller组件日志输出为容器标准输出;node-local-dns支持自定义健康检查端口

1.6.64

支持CCE 1.31集群; 更新admission-controller组件日志输出为容器标准输出; node-local-dns支持自定义健康检查端口

1.6.63

支持CCE 1.31集群; 更新admission-controller组件日志输出为容器标准输出; node-local-dns支持自定义健康检查端口

1.6.62

支持CCE 1.31集群;更新admission-controller组件日志输出为容器标准输出;node-local-dns支持自定义健康检查端口

相关文档