上一篇文章中,我们完成了PowerDNS Authoritative和Recursor环境的搭建,并可以通过内置的http服务器监控服务器的基本状况,本篇文章将通过Grafana实现对PowerDNS组件的监控和展示。
PowerDNS监控概述
PowerDNS内置了多种监控的支持,包括Graphite、Prometheus等,本示例中,我们采用Graphite做为监控数据库存储,通过Grafana作为前端展示。
Graphite部署
本示例采用Docker部署到pdns-admin服务器上。
创建数据存储和配置文件目录。
sudo mkdir -p /data/graphite/{data,logs,conf,statsd_config}
运行Graphite-statsd容器。
docker run -d --name graphite --restart=always -p 8080:80 -p 2003-2004:2003-2004 -p 2023-2024:2023-2024 -p 8125:8125/udp -p 8126:8126 -v /data/graphite/data:/opt/graphite/storage -v /data/graphite/conf:/opt/graphite/conf -v /data/graphite/statsd_config:/opt/statsd/config -v /data/graphite/logs:/var/log -e GRAPHITE_TIME_ZONE='Asia/Shanghai' graphiteapp/graphite-statsd
修改pdns.conf和recursor.conf配置文件
# Monitoring Server
carbon-server=10.208.0.100
登录Graphite管理页面,查看pdns和pdns-recursor的监控数据
Grafana部署和配置
本示例中使用rpm包安装,您也可以使用Docker运行。
wget https://dl.grafana.com/oss/release/grafana-8.0.6-1.x86_64.rpm
yum localinstall -y grafana-8.0.6-1.x86_64.rpm
配置Grafana自启动和启动服务。
systemctl enable grafana-server
systemctl start grafana-server
通过浏览器访问grafana页面,http://10.208.0.99:3000
默认用户名和密码为 admin/admin,首次登录修改密码。
先添加Graphite数据源,服务器地址为Graphite的8080端口。
再添加pdns的监控面板。
PowerDNS recursor metrics:https://grafana.com/grafana/dashboards/13305PowerDNS metrics:https://grafana.com/grafana/dashboards/13228
分别输入“13305”和“13228”两个ID,通过在线方式导入PowerDNS Dashboard。
如果您是内网环境,可以通过网站下载json文件后,离线导入。
数据源选择刚创建的Graphite。
查看PowerDNS监控页面
导入完成后,我们就可以通过监控页面查看权威服务器和递归服务器的监控统计信息了,当然您也可以根据需要自定义监控指标和面板。
至此,我们通过Graphite和Grafana实现了企业DNS的权威服务器和递归服务器的监控。