安装测试工具

1、安装依赖程序
2、创建软件包目录
    3、安装mpi
    1. # cd tools
    2. # curl -O https://download.open-mpi.org/release/open-mpi/v1.10/openmpi-1.10.7.tar.gz
    3. # ./configure --prefix=/usr/local/openmpi/
    4. # make
    5. # make install
    4、添加环境变量

    在.bashrc文件中添加以下三行内容

    1. # vim /root/.bashrc
    2. export PATH=$PATH:/usr/local/openmpi/bin/:/usr/local/ior/bin/
    3. export LD_LIBRARY_PATH=/usr/local/openmpi/lib:${LD_LIBRARY_PATH}
    4. export MPI_CC=mpicc
    5. # source /root/.bashrc
    5、安装IOR
    1. # cd tools/
    2. # yum -y install git automake
    3. # git clone https://github.com/chaos/ior.git
    4. # cd ior
    5. # ./bootstrap
    6. # ./configure --prefix=/usr/local/ior/
    7. # make
    8. # make install
    6、安装mdtest
    1. # cd tools/
    2. # mkdir mdtest
    3. # wget https://nchc.dl.sourceforge.net/project/mdtest/mdtest%20latest/mdtest-1.9.3/mdtest-1.9.3.tgz
    4. # cd mdtest
    5. # tar xf mdtest-1.9.3.tgz
    6. # make

    使用IOR和Mdtest进行测试

    环境
    挂载CephFS

    以下操作需要在所有的客户端节点完成

    1、在客户端节点安装ceph-fuse
    1. # yum -y install ceph-fuse
    2、创建ceph文件保存目录
    1. # mkdir /etc/ceph
    3、拷贝服务端的ceph的keyring文件
    1. # scp 10.0.98.21:/etc/ceph/* /etc/ceph/
    4、创建挂载目录
    5、挂载cephfs
    1. # ceph-fuse -m 10.0.98.21:6789/ /mnt/fs2/
    2. # ceph-fuse -m 10.0.98.21:6789/ /mnt/fs3/
    3. # ceph-fuse -m 10.0.98.21:6789/ /mnt/fs4/
    6、在挂载目录下创建测试目录
    1. # mkdir /mnt/fs{1,2,3,4}/iortest
    1、安装ceph-fuse
    1. ansible clients -m yum -a name=ceph-fuse state=installed
    2、创建ceph文件目录
    1. ansible clients -m file -a name=/etc/ceph state=directory
    3、拷贝ceph文件
    1. ansible clients -m copy -a src=/etc/ceph/ceph.client.admin.keyring dest=/etc/ceph/ceph.client.admin.keyring
    4、创建挂载目录
    1. ansible clients -m shell -a mkdir -p /mnt/fs{1,2,3,4}’
    5、挂载cephfs
    1. ansible clients -m shell -a ceph-fuse -m MDSIP:6789/ /mnt/fs1
    2. ansible clients -m shell -a ceph-fuse -m MDSIP:6789/ /mnt/fs2
    3. ansible clients -m shell -a ceph-fuse -m MDSIP:6789/ /mnt/fs3
    4. ansible clients -m shell -a ceph-fuse -m MDSIP:6789/ /mnt/fs4
    6、在挂载目录下创建测试目录
    1. ansible clients -m shell -a mkdir /mnt/fs{1,2,3,4}/iortest
    创建测试脚本

    ior的测试通过scripts完成,以下是几个测试脚本示例,实际测试过程中可以根据测试环境进行修改

    1、单个客户端单个进程
    2、单个客户端4个进程
    1. # cat test/iorconf-14
    2. ===============> start script <===============
    3. IOR START
    4. api=POSIX
    5. hintsFileName=hintsFile
    6. testFile=/mnt/fs1/iortest/f14-1@/mnt/fs2/iortest/f14-2@/mnt/fs3/iortest/f14-3@/mnt/fs4/iortest/f14-4
    7. repetitions=1
    8. readFile=1
    9. writeFile=1
    10. filePerProc=1
    11. segmentCount=1
    12. blockSize=32g
    13. transferSize=1024k
    14. collective=0
    15. ===============> stop script <===============
    3、5个客户端4个进程
    1. # cat test/iorconf-54
    2. ===============> start script <===============
    3. IOR START
    4. api=POSIX
    5. hintsFileName=hintsFile
    6. testFile=/mnt/fs1/iortest/f54-1@/mnt/fs2/iortest/f54-2@/mnt/fs3/iortest/f54-3@/mnt/fs4/iortest/f54-4@/mnt/fs1/iortest/f54-5@/mnt/fs2/iortest/f54-6@/mnt/fs3/iortest/f54-7@/mnt/fs4/iortest/f54-8@/mnt/fs1/iortest/f54-9@/mnt/fs2/iortest/f54-10@/mnt/fs3/iortest/f54-11@/mnt/fs4/iortest/f54-12@/mnt/fs1/iortest/f54-13@/mnt/fs2/iortest/f54-14@/mnt/fs3/iortest/f54-15@/mnt/fs4/iortest/f54-16@/mnt/fs1/iortest/f54-17@/mnt/fs2/iortest/f54-18@/mnt/fs3/iortest/f54-19@/mnt/fs4/iortest/f54-20
    7. repetitions=1
    8. readFile=1
    9. writeFile=1
    10. filePerProc=1
    11. segmentCount=1
    12. blockSize=32g
    13. transferSize=1024k
    14. collective=0
    15. IOR STOP
    16. ===============> stop script <===============
    测试命令
    IOR测试IOR测试
    1、单个客户端单个进程
    1. # ior -f test/iorconf-11
    2、单个客户端4个进程
    1. # mpirun --allow-run-as-root -np 4 ior -f test/iorconf-14
    3、5个客户端4个进程
    1. # mpirun --allow-run-as-root --mca plm_rsh_no_tree_spawn 1 -npernode 4 -hostfile test/hosts ior -f test/iorconf-54
    1. # cat test/hosts
    2. test1 slots=4
    3. test2 slots=4
    4. test3 slots=4
    5. test4 slots=4
    6. test5 slots=4
    Mdtest测试
    1、单个客户端单个进程
    1. # ./mdtest -F -L -z 4 -b 2 -I 1562 -u -d /mnt/fs1/mdtest/
    2、单个客户端4个进程
      3、5个客户端4个进程