ior和mdtest测试工具安装和使用

简介: ior和mdtest测试工具安装 1、安装依赖程序 [root@zxj-ceph-3 ~]# yum -y install gcc gcc-c++ gcc-gfortran 2、创建工具安装目录 [root@zxj-ceph-3 ~]# mkdir /usr/local/tools 3、安.

ior和mdtest测试工具安装

测试工具通过网络下载如果较慢,也可以直接访问云盘进行下载

链接:https://pan.baidu.com/s/1lrVUeOxDlXpIHR7OBvpxJQ

提取码:h63p

 

1、安装依赖程序

[root@test1 ~]# yum -y install gcc gcc-c++ gcc-gfortran

2、创建软件包目录

[root@test1 ~]# mkdir tools

3、安装openmpi(除了openmpi外,还可以使用mpich,不过使用上跟openmpi会有所差异)

[root@test1 ~]# cd tools

[root@test1 tools]# curl -O https://download.open-mpi.org/release/open-mpi/v1.10/openmpi-1.10.7.tar.gz

[root@test1 openmpi-1.10.7]# ./configure --prefix=/usr/local/openmpi/

[root@test1 openmpi-1.10.7]# make

[root@test1 openmpi-1.10.7]# make install

4、添加环境变量

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

[root@test1 ~]# vim /root/.bashrc

export PATH=$PATH:/usr/local/openmpi/bin/:/usr/local/ior/bin/

export LD_LIBRARY_PATH=/usr/local/openmpi/lib:${LD_LIBRARY_PATH}

export MPI_CC=mpicc

[root@test1 ~]# source /root/.bashrc

5、安装IOR

[root@test1 ~]# cd tools/

[root@test1 tools]# yum -y install git automake

[root@test1 tools]# git clone https://github.com/chaos/ior.git

[root@test1 tools]# cd ior

[root@test1 ior]# ./bootstrap

[root@test1 ior]# ./configure --prefix=/usr/local/ior/

[root@test1 ior]# make

[root@test1 ior]# make install

6、安装mdtest

[root@test1 ~]# cd tools/

[root@test1 tools]# mkdir mdtest

[root@test1 tools]# cd mdtest

[root@test1 mdtest]# wget https://nchc.dl.sourceforge.net/project/mdtest/mdtest%20latest/mdtest-1.9.3/mdtest-1.9.3.tgz

[root@test1 mdtest]# tar xf mdtest-1.9.3.tgz

[root@test1 mdtest]# make

使用IOR和MDtest测试cephfs

环境

主机功能

主机IP

主机组件

Server

10.0.98.21

mon,osd,mds

10.0.98.22

mon,osd,mds

10.0.98.23

mon,osd,mds

Clients

192.168.1.100

ceph-fuse,openmpi,ior,mdtest

192.168.1.101

ceph-fuse,openmpi,ior,mdtest

192.168.1.102

ceph-fuse,openmpi,ior,mdtest

192.168.1.103

ceph-fuse,openmpi,ior,mdtest

192.168.1.104

ceph-fuse,openmpi,ior,mdtest

 

服务端和客户端组件的的安装这里不再赘述。服务端的配置可以参考之前的文章,通过ceph-ansible快速完成部署;客户端的配置可以参考之前的IOR和Mdtest安装文档进行配置。下面说明一下客户端的部署和配置。

挂载CephFS

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

1、在客户端节点安装ceph-fuse

[root@test1 ~]# yum -y install ceph-fuse

2、创建ceph文件保存目录

[root@test1 ~]# mkdir /etc/ceph

3、拷贝服务端的ceph的keyring文件

[root@test1 ~]# scp 10.0.98.21:/etc/ceph/* /etc/ceph/

4、创建挂载目录

[root@test1 ~]# mkdir /mnt/fs{1,2,3,4}

5、挂载cephfs

[root@test1 ~]# ceph-fuse -m 10.0.98.21:6789/ /mnt/fs1/

[root@test1 ~]# ceph-fuse -m 10.0.98.21:6789/ /mnt/fs2/

[root@test1 ~]# ceph-fuse -m 10.0.98.21:6789/ /mnt/fs3/

[root@test1 ~]# ceph-fuse -m 10.0.98.21:6789/ /mnt/fs4/

6、在挂载目录下创建测试目录

[root@test1 ~]# mkdir /mnt/fs{1,2,3,4}/iortest

 

如果有部署ansible服务端的话,可以执行以下命令通过ansible快速完成5个client的配置。如果对ansible的使用不是太熟练,那就老老实实的用上面的步骤在所有的client上手动完成操作吧。

1、安装ceph-fuse

ansible clients -m yum -a ‘name=ceph-fuse state=installed’

2、创建ceph文件目录

ansible clients -m file -a ‘name=/etc/ceph state=directory’

3、拷贝ceph文件

ansible clients -m copy -a ‘src=/etc/ceph/ceph.client.admin.keyring dest=/etc/ceph/ceph.client.admin.keyring’

4、创建挂载目录

ansible clients -m shell -a ‘mkdir -p /mnt/fs{1,2,3,4}’

5、挂载cephfs

ansible clients -m shell -a ‘ceph-fuse -m MDSIP:6789/ /mnt/fs1’

ansible clients -m shell -a ‘ceph-fuse -m MDSIP:6789/ /mnt/fs2’

ansible clients -m shell -a ‘ceph-fuse -m MDSIP:6789/ /mnt/fs3’

ansible clients -m shell -a ‘ceph-fuse -m MDSIP:6789/ /mnt/fs4’

6、在挂载目录下创建测试目录

ansible clients -m shell -a ‘mkdir /mnt/fs{1,2,3,4}/iortest’

创建测试脚本

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

1、单个客户端单个进程

[root@test1 ~]# cat test/iorconf-11

===============> start script <===============

IOR START

  api=POSIX

  hintsFileName=hintsFile

  testFile=/mnt/fs1/iortest/f11-1

  repetitions=1

  readFile=1

  writeFile=1

  filePerProc=1

  segmentCount=1

  blockSize=128g

  transferSize=1024k

  collective=0

IOR STOP

===============> stop script <===============

2、单个客户端4个进程

[root@test1 ~]# cat test/iorconf-14

===============> start script <===============

IOR START

  api=POSIX

  hintsFileName=hintsFile

  testFile=/mnt/fs1/iortest/f14-1@/mnt/fs2/iortest/f14-2@/mnt/fs3/iortest/f14-3@/mnt/fs4/iortest/f14-4

  repetitions=1

  readFile=1

  writeFile=1

  filePerProc=1

  segmentCount=1

  blockSize=32g

  transferSize=1024k

  collective=0

IOR STOP

===============> stop script <===============

3、5个客户端4个进程

[root@test1 ~]# cat test/iorconf-54

===============> start script <===============

IOR START

  api=POSIX

  hintsFileName=hintsFile

  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

  repetitions=1

  readFile=1

  writeFile=1

  filePerProc=1

  segmentCount=1

  blockSize=32g

  transferSize=1024k

  collective=0

IOR STOP

===============> stop script <===============

测试命令

一、IOR测试

1、单个客户端单个进程

[root@test1 ~]# ior -f test/iorconf-11

3c03181f99e034766356b779f689d16762e1436b

2、单个客户端4个进程

[root@test1 ~]# mpirun --allow-run-as-root -np 4 ior -f test/iorconf-14

3ec7c57a2b876da8f47931b087305e9e12d05fca

3、5个客户端4个进程

[root@test1 ~]# mpirun --allow-run-as-root --mca plm_rsh_no_tree_spawn 1 -npernode 4 -hostfile test/hosts ior -f test/iorconf-54

7bdddb28db98f488edab651c738451951f561a7c

 

注:进行多个客户端测试时,需要在每个节点的对应目录下都上传测试脚本,测试命令中的hosts文件内容如下:

[root@test1 ~]# cat test/hosts

test1 slots=4

test2 slots=4

test3 slots=4

test4 slots=4

test5 slots=4

 

二、MDtest测试

MDtest参数说明

-F

只创建文件

-L

只在目录树的子目录层创建文件/目录

-z

目录树深度

-b

目录树的分支数

-I

每个树节点包含的项目数

-u

为每个工作任务指定工作目录

-d

指出测试运行的目录

 

1、单个客户端单个进程

[root@test1 mdtest]# ./mdtest -F -L -z 4 -b 2 -I 1562 -u -d /mnt/fs1/mdtest/

87fd22f9f215c0c4b4a6bbafa86405f50a9686aa

2、单个客户端4个进程

mpirun --allow-run-as-root -np 4 ./mdtest -F -L -z 4 -b 2 -I 1562 -u -d /mnt/fs1/mdtest1/@/mnt/fs2/mdtest2@/mnt/fs3/mdtest3@/mnt/fs4/mdtest4

8864e445fdc899610af7078fc52f21896aa9e547

3、5个客户端4个进程

[root@test1 mdtest]# mpirun --allow-run-as-root --mca plm_rsh_no_tree_spawn 1 -npernode 4 -hostfile /root/test/hosts ./mdtest -F -L -z 4 -b 2 -I 1562 -u -d /mnt/fs1/mdtest1/@/mnt/fs2/mdtest2@/mnt/fs3/mdtest3@/mnt/fs4/mdtest4@/mnt/fs1/mdtest5/@/mnt/fs2/mdtest6@/mnt/fs3/mdtest7@/mnt/fs4/mdtest8@/mnt/fs1/mdtest9/@/mnt/fs2/mdtest10@/mnt/fs3/mdtest11@/mnt/fs4/mdtest12@/mnt/fs1/mdtest13/@/mnt/fs2/mdtest14@/mnt/fs3/mdtest15@/mnt/fs4/mdtest16@/mnt/fs1/mdtest17/@/mnt/fs2/mdtest18@/mnt/fs3/mdtest19@/mnt/fs4/mdtest20

 db81ec68ff622b65dd04c8d511e04f3827842cef

 

相关文章
|
1天前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
8 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
19天前
|
Linux
kickstart自动安装系统 --DHCP 配置及测试
PXE+Kickstart自动安装系统需配置DHCP服务器分配IP。dhcpd.conf示例:设置更新样式、忽略客户端更新、指定下一服务器及启动文件。定义子网、网关、掩码、动态地址池并预留特定MAC地址。重启xinetd、NFS、DHCP服务,确保新服务器与Kickstart服务器在同一网络,避免误装其他机器。注意隔离测试网络以防干扰生产环境。
62 18
|
5月前
|
NoSQL 关系型数据库 MySQL
涉及rocketMQ,jemeter等性能测试服务器的安装记录
涉及rocketMQ,jemeter等性能测试服务器的安装记录
65 1
|
2月前
|
测试技术 Linux 虚拟化
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
详细的VMware虚拟机安装macOS Big Sur的保姆级教程,包括下载VMware和macOS镜像、图解安装步骤和遇到问题时的解决方案,旨在帮助读者顺利搭建macOS虚拟机环境。
68 3
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
|
2月前
|
存储 Ubuntu 安全
ROS2教程02 ROS2的安装、配置和测试
本文是关于ROS2(机器人操作系统2)的安装、配置和测试的教程。内容包括使用一键安装脚本快速安装ROS2 Humble版,手动安装步骤,设置语言环境、添加软件源、更新软件包、安装ROS2桌面版和开发工具,配置ROS2环境,创建工作空间,配置ROS2领域以避免网络冲突,以及如何删除ROS2。此外,还包括了测试ROS2是否安装成功的两个案例:基本的Topic通信测试和使用Turtlesim演示程序。适用于Ubuntu 22.04操作系统。
105 1
ROS2教程02 ROS2的安装、配置和测试
|
10天前
|
安全 测试技术 Linux
CentOS7 安装vulhub漏洞测试环境
CentOS7 安装vulhub漏洞测试环境
19 0
|
15天前
|
Web App开发 Linux Python
linux上安装selenium环境及测试
该文章提供了在Linux CentOS上安装Selenium环境、Chrome浏览器及Chromedriver的详细步骤,并演示了如何以无头模式进行测试。
43 0
|
2月前
|
测试技术 开发工具 虚拟化
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
这篇文章提供了一份保姆级的教程,指导如何在MacOS虚拟机上安装Xcode,包括环境准备、基础软件安装以及USB扩展插件的使用,以实现iOS自动化测试方案的第一步。
44 0
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
|
3月前
|
Linux
Linux telnet安装及端口测试联通性
Linux telnet安装及端口测试联通性
76 10
|
3月前
|
关系型数据库 MySQL 测试技术
数据库升级是一个涉及数据备份、新版本安装、数据迁移和测试等关键环节的复杂过程
【7月更文挑战第21天】数据库升级是一个涉及数据备份、新版本安装、数据迁移和测试等关键环节的复杂过程
50 1