DNS服务器(五):使用queryperf对DNS服务器做压力测试

1、querperf简介html

   当咱们把DNS服务器配置好后,咱们确定会想测试一下DNS服务器的性能如何,上线后若是请求数够多服务器还可否响应?因而,咱们可使用软件模拟环境,对DNS服务器做评估性的测试。在bind中,有一款自带的压力测试软件,queryperf。使用这款软件能够对DNS服务器做请求测试,而且使用方法简单,咱们可使用queryperf测试屡次,取一个平均值,这样就算结果不许确,也不会和实际状况相差太大。
vim


2、queryperf安装服务器

一、queryperf是bind自带的测试软件,因此咱们直接上官网下载bind,解压后就能找到queryperf的安装包。tcp

wget http://www.isc.org/downloads/file/bind-9-8-7rc2/?version=tar.gz

wKiom1MpEz-hZ0ocAAIK9ip2WLc373.jpg


二、不知道为何,这个文件下载完成后的名字是这个,index.html\?version\=tar.gz,好吧咱们解压吧。ide

tar xf index.html\?version\=tar.gz


三、解压后,找到目录 contrib ,bind自带的第三方软件全在这个目录里面,咱们要用到的queryperf也在里面。工具

wKiom1MpFDDR_dUvAAIzTcLFjno930.jpg


四、进入queryperf目录,开始编译安装。可使用 ./configure -h 查看安装帮助,不过咱们默认安装就好了。性能


./configure

wKiom1MpFQzTgDcRAAOYT1NLEWM001.jpg


make

wKioL1MpFSLCGPh6AAChjcGsuBg257.jpg


五、经过上面的编译后,展开queryperf目录,在该目录下已经生成了一个queryperf的可执行文件。这个文件就是咱们要用到的程序,咱们把该程序移动到/usr/bin/目录下就可使用了。测试

cp queryperf /usr/bin/

wKioL1MpFhCgsc1_AADn-satgWE946.jpg


3、使用queryperf测试DNS服务器3d

   在测试以前,咱们先把DNS服务器架设好。咱们以域名wubinary.com为例,架设DNS服务器,dns.wubinary.com。
日志

一、wubinary.com区域的资源记录文件wubinary.com.zone内容以下。

wKioL1MpGfzyYovVAAFA-Vc1R4Y093.jpg


二、测试DNS服务器可否正常使用。

从新启动服务:

wKioL1MpF5XDWSFzAAEA7bruN_o588.jpg


测试域名blog.wubinary.com

wKiom1MpF6yTfnlIAALCvC3S8Ck481.jpg


DNS服务器工做正常,接下来可使用queryperf做压力测试了。


三、queryperf使用格式:

queryperf [-d datafile] [-s server_addr] [-p port] [-q num_queries]


-d: 后面接上一个文件,文件的内容是用户对DNS的请求,一行为一条请求,因此为了测试,咱们能够在里面写上几千几万条。

-s: DNS服务器地址

-p: DNS服务器端口

-q: 请求多少次


使用vim命令先建立一个请求文件:vim querytest.txt

wKioL1MpHNKz7q_aAACEirMOnzo801.jpg


这几条记录还远远不够,咱们使用vim命令 1,$y 复制一下。

wKiom1MpHfyiQrMxAACApnGYbnU950.jpg


六百多万条了,开始测试吧。


四、性能测试。

执行命令:

queryperf -d querytest.txt -s 192.168.0.6


此时使用top命令能够看到CPU和内存的使用率。

wKiom1MpHoWQYEY2AAMN4sPCmXY928.jpg


结果以下:

wKioL1MpIDyg0dLBAAK9xQRtxGU728.jpg


测试过程完成,能够多测试几回取平均值。


4、性能测试总结

一、在做服务器的性能测试时,最好不要在服务器平台自身使用测试软件测试,最好换另一台机器,这样CPU处理的结果会更准确。

二、测试时先预估平台会遇到的最大请求数,用这个请求数做测试,量力而为,由于若是服务器遇到大流量的DDOS,单一机器性能再好,也扛不住。

三、使用queryperf做性能测试时,最好测试屡次,取平均值。

四、能够修改配置文件的部分参数测试,如,开启递归,开启查询日志等功能做测试。

五、其它开源测试工具,tcpcopy

相关文章
相关标签/搜索