文档

CoreDNS组件监控

更新时间:

CoreDNS是ACK集群中默认采用的DNS服务发现插件。本文介绍如何查看CoreDNS组件监控大盘、常见指标异常的问题解析,以及CoreDNS组件的指标清单。

前提条件

  • 已开通ARMS。具体操作,请参见开通ARMS
  • 已安装ack-arms-prometheus组件。具体操作,请参见管理组件

查看CoreDNS组件监控大盘

  1. 登录容器服务管理控制台,在左侧导航栏选择集群

  2. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择运维管理 > Prometheus监控

  3. Prometheus监控页面,单击网络监控页签。
    CoreDNS组件监控页签查看监控大盘。组件监控

监控大盘说明

基于组件指标和相关PromQL绘制大盘,包括请求、响应、缓存等内容。图表说明如下。

大盘指标单位描述
Requests (total)请求/秒CoreDNS接收到的请求数。
Requests (success rate)百分比CoreDNS接受到的请求数响应成功率。
说明 NXDOMAIN和NOERROR的结果在此处被认为请求响应成功。
Requests (by zone)请求/秒CoreDNS接收到的请求数(按Zone)。
Requests (by qtype)请求/秒CoreDNS接收到的请求数(按解析类型)。
Requests (DO bit)请求/秒CoreDNS接收到的带有DO标记的请求数。
Requests (size, udp)字节CoreDNS接收到的UDP类型请求的报文大小。
Requests (size,tcp)字节CoreDNS接收到的TCP类型请求的报文大小。
Responses (by rcode)请求/秒响应数(按状态码RCODE)。
Responses (duration)响应时长(按99、90、50百分位)。
Responses (size, udp)字节UDP型请求的响应时长(按99、50百分位)。
Responses (size, tcp)字节TCP类型请求的响应时长(按99、50百分位)。
Cache (size)当前缓存结果数。
Cache (hitrate)百分比缓存命中率。

监控大盘常见异常说明

异常描述

CoreDNS接收到的请求数过高。

在监控大盘的Requests (total)可以看到当前CoreDNS整体接收到的请求数。

如果请求数突然增高,可以结合CoreDNS日志查询当前查询量较高的域名,结合业务判断是否合理。关于如何分析和监控CoreDNS日志,请参见分析和监控CoreDNS日志。如果域名请求数量增高是合理现象,建议合理调整CoreDNS副本数以及使用NodeLocal DNSCache提高集群DNS性能。具体操作,请参见合理调整集群CoreDNS部署状态使用NodeLocal DNSCache

服务端异常,ServFail状态码响应的数量过高。

在监控大盘的Responses (by rcode)可以看到ServFail状态码的响应数目。

如果服务端出现大量ServFail异常,建议结合CoreDNS日志中ServFail的具体域名进行排查。关于如何分析和监控CoreDNS日志,请参见分析和监控CoreDNS日志

CoreDNS域名解析响应慢。

在监控大盘的Responses (duration)可以看到域名的响应时长。

如果应用大量使用集群外部域名,可能会出现域名解析响应慢的情况。

指标清单

如果您未启用ARMS提供的CoreDNS组件监控大盘,您也可以在自建Prometheus中监控CoreDNS。CoreDNS暴露的指标如下。
说明 本指标清单以CoreDNS 1.9.3版本为例,详细信息,请参见CoreDNS官方文档
指标类型描述
requests_totalCounter统计不同维度下DNS解析请求的计数。统计维度包括server、zone、proto、family、type。
request_duration_secondsHistogram统计不同维度下DNS解析请求的处理时长分布。统计维度包括server和zone。
request_size_bytesHistogram统计不同维度下DNS解析请求的报文大小分布。统计维度包括server、zone、proto。Histogram Bucket的阈值为0、100、200、300、400、511、1023、2047、4095、8291、16e3、32e3、48e3、64e3。单位:秒。
do_requests_totalCounter统计不同维度下带有DO标记的DNS解析请求的计数。统计维度包括server、zone。
response_size_bytesHistogram统计不同维度下DNS解析响应的报文大小分布。统计维度包括server、zone、proto。Histogram Bucket的阈值为0、100、200、300、400、511、1023、2047、4095、8291、16e3、32e3、48e3、64e3。单位:秒。
responses_totalCounter统计不同维度下DNS解析响应的计数。统计维度包括server、zone、rcode、plugin。
panics_totalCounter统计CoreDNS发生异常(Panic)的计数。
plugin_enabledGauge统计各插件的启用状态。统计维度包括server、zone、name。
https_responses_totalCounter统计不同维度下DoH类型的DNS解析响应的计数。统计维度包括server、status。
  • 本页导读 (1)
文档反馈