集群使用FLASH卡实施步骤

实施步骤如下:
1)停止业务(加载、dml、ddl操作),设置readonly模式;
2)每个sg中找一个节点进行flash卡安装;
3)将需要移动到flash卡上的数据库目录mv到备份路径:mv /opt/gnode/userdata/gbase/mydb_nm /opt/gnode_bak_20150515/;
4)创建数据库目录 mkdir -p /opt/gnode/userdata/gbase/mydb_nm (注意权限正确);
5)将flash卡mount到 /opt/gnode/userdata/gbase/mydb_nm 目录;
6)将/opt/gnode_bak_20150515/目录下的内容mv到/opt/gnode/userdata /gbase/mydb_nm 目录下;
7)启动该节点数据库服务,验证集群正常(构造一个测试脚本:创建一个库和表,进行loader、dml、select、ddl测试);
8)轮换进行sg中其他2个节点的处理。

如何使用ubench测试服务器CPU性能

按照如下步骤完成:
1、下载生成ubench工具Ubench_0.32.zip
2、解压完成之后,包含以下文件:

rwxr-xr-x 1 root root 3103 11月 7 20:49 configure
-rwxr-xr-x 1 root root 4826 11月 7 20:49 cpubench.c
-rwxr-xr-x 1 root root 4640 11月 7 20:49 cpubench.o
-rwxr-xr-x 1 root root 1379 11月 7 20:49 creadok.c
-rwxr-xr-x 1 root root 1381 11月 7 20:49 cwriteok.c
-rwxr-xr-x 1 root root 4516 11月 7 20:49 diskbench.c
-rwxr-xr-x 1 root root 986 11月 7 20:49 Makefile
-rwxr-xr-x 1 root root 4535 11月 7 20:49 membench.c
-rwxr-xr-x 1 root root 4056 11月 7 20:49 membench.o
-rwxr-xr-x 1 root root 862 11月 7 20:49 netbench.c
-rwxr-xr-x 1 root root 4163 11月 7 20:49 README
-rwxr-xr-x 1 root root 1407 11月 7 20:49 signals.c
-rwxr-xr-x 1 root root 1092 11月 7 20:49 signals.h
-rwxr-xr-x 1 root root 980 11月 7 20:49 signals.o
-rwxr-xr-x 1 root root 4918 11月 7 20:49 tlock.c
-rwxr-xr-x 1 root root 9976 11月 7 20:49 ubench
-rwxr-xr-x 1 root root 2111 11月 7 20:49 ubench.8
-rwxr-xr-x 1 root root 4330 11月 7 20:49 ubench.c
-rwxr-xr-x 1 root root 624 11月 7 20:49 ubench.lsm
-rwxr-xr-x 1 root root 2476 11月 7 20:49 ubench.o
-rwxr-xr-x 1 root root 1721 11月 7 20:49 ubench-patch
-rwxr-xr-x 1 root root 1733 11月 7 20:49 utime.c

3、执行./ubench,如果不能使用,执行Makefile生成ubench。
4、查看执行结果,建议测试之前清除系统缓存echo >3 /proc/sys/vm/drop_caches,建议多测试两三次,取平均值。

Ubench CPU: 1613470
Ubench MEM: 376535
———————————
Ubench AVG: 995002

如何通过iops测试硬盘性能,以验证扩容服务器是否存在瓶颈节点?

一、FIO安装
wget http://brick.kernel.dk/snaps/fio-2.0.7.tar.gz  
yum install libaio-devel  
tar -zxvf fio-2.0.7.tar.gz  
cd fio-2.0.7  
make 
make install

二、随机读测试:
随机读:

fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread 
   -rw=randread -ioengine=psync -bs=16k -size=10G -numjobs=10 -runtime=1000 -group_reporting -name=mytest       

说明:
filename=/dev/sdb1 测试文件名称,通常选择需要测试的盘的data目录。 direct=1 测试过程绕过机器自带的buffer。使测试结果更真实。
rw=randwrite 测试随机写的I/O
rw=randrw 测试随机写和读的I/O
bs=16k 单次io的块文件大小为16k
bsrange=512-2048 同上,提定数据块的大小范围
size=5g 本次的测试文件大小为5g,以每次4k的io进行测试。
numjobs=30 本次的测试线程为30.
runtime=1000 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止。
ioengine=psync io引擎使用pync方式
rwmixwrite=30 在混合读写的模式下,写占30%
group_reporting 关于显示结果的,汇总每个进程的信息。
此外
lockmem=1g 只使用1g内存进行测试。
zero_buffers 用0初始化系统buffer。
nrfiles=8 每个进程生成文件的数量。

顺序读:

fio -filename=/dev/sdb1 
   -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest  

随机写:

fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread   
   -rw=randwrite -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest 

顺序写:

fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest  

混合随机读写:

fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop
三、实际测试范例:
[root@localhost ~]# fio -filename=/dev/sdb1 -direct=1
   -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=200G -numjobs=30 
   -runtime=100 -group_reporting -name=mytest1
   
mytest1: (g=0): rw=randrw, bs=16K-16K/16K-16K, oengine=psync, iodepth=1  
...  
mytest1: (g=0): rw=randrw, bs=16K-16K/16K-16K, ioengine=psync, iodepth=1  fio 2.0.7  
Starting 30 threads  
Jobs: 1 (f=1): [________________m_____________] [3.5% done] [6935K/3116K /s] [423 /190 iops] [eta 48m:20s] s]  
mytest1: (groupid=0, jobs=30): err=0: pid=23802  
read : io=853.4MB, bw=18967KB/s, iops=1185 ,runt=100058msec
clat (usec): min=60 , max=871116 , avg=25227.91, stdev=31653.46 
lat (usec): min=60 , max=871117 , avg=25228.08, stdev=31653.46 
clat percentiles (msec): | 1.00th=[ 3], 5.00th=[ 5], 10.00th=[ 6], 20.00th=[ 8], | 30.00th=[ 10], 40.00th=[ 12], 50.00th=[ 15], 60.00th=[ 19], | 70.00th=[ 26], 80.00th=[ 37], 90.00th=[ 57], 95.00th=[ 79], | 99.00th=[ 151], 99.50th=[ 202], 99.90th=[ 338], 99.95th=[ 383], | 99.99th=[ 523]  
bw (KB/s) : min= 26, max= 1944, per=3.36%, avg=636.84, stdev=189.15  
write: io=803600KB, bw=8031.4KB/s, iops=501 , runt=100058msec
clat (usec): min=52 , max=9302 , avg=146.25, stdev=299.17  lat (usec): min=52 , max=9303 , avg=147.19, stdev=299.17  clat percentiles (usec): | 1.00th=[ 62], 5.00th=[ 65], 10.00th=[ 68], 20.00th=[ 74], | 30.00th=[ 84], 40.00th=[ 87], 50.00th=[ 89], 60.00th=[ 90], | 70.00th=[ 92], 80.00th=[ 97], 90.00th=[ 120], 95.00th=[ 370], | 99.00th=[ 1688], 99.50th=[ 2128], 99.90th=[ 3088], 99.95th=[ 3696], | 99.99th=[ 5216]  
bw (KB/s) : min= 20, max= 1117, per=3.37%, avg=270.27, stdev=133.27 
lat (usec) : 100=24.32%, 250=3.83%, 500=0.33%, 750=0.28%, 1000=0.27% 
lat (msec) : 2=0.64%, 4=3.08%, 10=20.67%, 20=19.90%, 50=17.91%
lat (msec) : 100=6.87%, 250=1.70%, 500=0.19%, 750=0.01%, 1000=0.01%  
cpu : usr=1.70%, sys=2.41%, ctx=5237835, majf=0, minf=6344162 
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%

submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%  
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%  
issued : total=r=118612/w=50225/d=0, short=r=0/w=0/d=0  
Run status group 0 (all jobs):  
READ: io=1853.4MB, aggrb=18966KB/s, minb=18966KB/s, maxb=18966KB/s, mint=100058msec, maxt=100058msec  
WRITE: io=803600KB, aggrb=8031KB/s, minb=8031KB/s, maxb=8031KB/s, mint=100058msec, maxt=100058msec  
Disk stats (read/write):  
sdb: ios=118610/50224, merge=0/0, ticks=2991317/6860, in_queue=2998169, util=99.77%