一、哪寫是fuse挂載的檔案系統
MooseFS、GlusterFS都是基于fuse挂載的,NFS是通過mount挂載。這三款都可以通過統一的測試方式
二、測試工具
1、sysbench
2、time dd
三、測試方法
1、sysbench測試
1.1、安裝sysbench
<code>#tar -zxvf sysbench-0.4.10.tar.gz</code>
<code>#cd sysbench</code>
<code>#./configure && make && make install</code>
可能遇到報錯1、configure: error: Cannot find MySQL header files under /usr/bin/mysql.
解決辦法: yum install mysql-devel
2、configure: error: /bin/sh config/config.sub x86_64-unknown-linux- failed
解決辦法:yum -y install libtool
1.2、測試
<code>cpu測試 </code>
<code>sysbench sysbench --</code><code>test</code><code>=cpu --cpu-max-prime=20000 run </code>
<code>磁盤IO測試 </code>
<code>sysbench sysbench --</code><code>test</code><code>=fileio --</code><code>file</code><code>-total-size=5G prepare (建立5G的檔案清單) </code>
<code>sysbench --</code><code>test</code><code>=fileio --</code><code>file</code><code>-total-size=5G --</code><code>file</code><code>-</code><code>test</code><code>-mode=seqwr run (順序寫) </code>
<code>sysbench --</code><code>test</code><code>=fileio --</code><code>file</code><code>-total-size=5G --</code><code>file</code><code>-</code><code>test</code><code>-mode=seqrd run (順序讀) </code>
<code>sysbench --</code><code>test</code><code>=fileio --</code><code>file</code><code>-total-size=5G --</code><code>file</code><code>-</code><code>test</code><code>-mode=rndrw --init-rng=on --max-</code><code>time</code><code>=300 --max-requests=0 run (随機讀寫) </code>
<code>sysbench --</code><code>test</code><code>=fileio --</code><code>file</code><code>-total-size=5G cleanup (清理測試檔案)</code>
2、time dd測試
2.1、通過建立依此建立10000個固定大小的檔案,來測試檔案系統對不同大小檔案的反應
<code>建立腳本</code>
<code>i=0</code>
<code>while</code> <code>[ $i -lt 1000 ]; </code><code>do</code>
<code> </code><code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/testdata/5M</code><code>$i.txt bs=16K count=320 &</code>
<code> </code><code>let</code> <code>i=i+1</code>
<code>done</code>
<code>注:可根據不同需求建立不同大小的檔案(下面是我建立的檔案清單)</code>
<code>time</code> <code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/data/test50M</code> <code>bs=8k count=6400</code>
<code>time</code> <code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/data/test1-50M</code> <code>bs=16k count=3200</code>
<code>time</code> <code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/data/test2-50M</code> <code>bs=64k count=800</code>
<code>time</code> <code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/data/test2-500M</code> <code>bs=64k count=8000</code>
<code>time</code> <code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/data/test2-500M</code> <code>bs=16k count=32000</code>
<code>time</code> <code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/data/test1-500M</code> <code>bs=16k count=32000</code>
<code>time</code> <code>dd</code> <code>if</code><code>=</code><code>/dev/zero</code> <code>of=</code><code>/home/data/test-500M</code> <code>bs=8k count=64000</code>
2.2、建立完成後可通過time rm -rf來測試删除時間
本文轉自 亮公子 51CTO部落格,原文連結:http://blog.51cto.com/iyull/1946589