Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Speed up dbench testing by installing RPMs and not building dbench from source #36

Merged
merged 2 commits into from May 11, 2018
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
50 changes: 26 additions & 24 deletions dbench/client.sh
Expand Up @@ -16,37 +16,38 @@ set -x
[ -n "${EXPORT}" ]

# install build and runtime dependencies
echo "Install build and runtime dependencies"
yum -y install git gcc nfs-utils time automake autoconf libtool popt-devel bison flex gtk2-devel libpcap-devel c-ares-devel libsmi-devel gnutls-devel libgcrypt-devel krb5-devel GeoIP-devel ortp-devel portaudio-devel
echo "Install runtime dependencies"
yum -y install nfs-utils

# dbench download, install and make
echo "dbench download, install and make"
git clone git://git.samba.org/sahlberg/dbench.git dbench
cd dbench
./autogen.sh
./configure
make
make install
curl -o /usr/local/share/client.txt https://raw.githubusercontent.com/sahlberg/dbench/master/loadfiles/client.txt
# dbench is available from the testing repositories in the CentOS Storage SIG
yum -y install centos-release-gluster
yum -y --enablerepo=centos-gluster*-test install dbench

# place all used files in ${WORKDIR}
WORKDIR=/var/tmp/dbench.d
mkdir ${WORKDIR}

curl -o ${WORKDIR}/client.txt https://raw.githubusercontent.com/sahlberg/dbench/master/loadfiles/client.txt


# v3 mount
mkdir -p /mnt/nfsv3
mount -t nfs -o vers=3 ${SERVER}:${EXPORT} /mnt/nfsv3
mkdir /mnt/nfsv3/v3

# Running dbench suite on v3 mount
echo "---------------------------------------"
echo "dbench Test Running for v3 Mount..."
echo "---------------------------------------"
/root/dbench/dbench 2 > ../dbenchTestLog.txt
tail -1 ../dbenchTestLog.txt | grep "Throughput"
dbench --directory=/mnt/nfsv3/v3 --loadfile=${WORKDIR}/client.txt 2 > ${WORKDIR}/dbenchTestLog.txt
tail -1 ${WORKDIR}/dbenchTestLog.txt | grep "Throughput"
status=$?
if [ $status -eq 0 ]
then
tail -21 ../dbenchTestLog.txt
tail -21 ${WORKDIR}/dbenchTestLog.txt
echo "dbench Test: SUCCESS"
else
tail -5 ../dbenchTestLog.txt
tail -5 ${WORKDIR}/dbenchTestLog.txt
echo "dbench Test: FAILURE"
exit $status
fi
Expand All @@ -56,20 +57,21 @@ umount -l /mnt/nfsv3
# v4 mount
mkdir -p /mnt/nfsv4
mount -t nfs -o vers=4.0 ${SERVER}:${EXPORT} /mnt/nfsv4
mkdir /mnt/nfsv4/v4

# Running dbench suite on v4.0 mount
echo "---------------------------------------"
echo "dbench Test Running for v4.0 Mount..."
echo "---------------------------------------"
/root/dbench/dbench 2 > ../dbenchTestLog.txt
tail -1 ../dbenchTestLog.txt | grep "Throughput"
dbench --directory=/mnt/nfsv4/v4 --loadfile=${WORKDIR}/client.txt 2 > ${WORKDIR}/dbenchTestLog.txt
tail -1 ${WORKDIR}/dbenchTestLog.txt | grep "Throughput"
status=$?
if [ $status -eq 0 ]
then
tail -21 ../dbenchTestLog.txt
tail -21 ${WORKDIR}/dbenchTestLog.txt
echo "dbench Test: SUCCESS"
else
tail -5 ../dbenchTestLog.txt
tail -5 ${WORKDIR}/dbenchTestLog.txt
echo "dbench Test: FAILURE"
exit $status
fi
Expand All @@ -79,21 +81,21 @@ umount -l /mnt/nfsv4
# v4.1 mount
mkdir -p /mnt/nfsv4_1
mount -t nfs -o vers=4.1 ${SERVER}:${EXPORT} /mnt/nfsv4_1

mkdir /mnt/nfsv4_1/v41

# Running dbench suite on v4.1 mount
echo "---------------------------------------"
echo "dbench Test Running for v4.1 Mount..."
echo "---------------------------------------"
/root/dbench/dbench 2 > ../dbenchTestLog.txt
tail -1 ../dbenchTestLog.txt | grep "Throughput"
dbench --directory=/mnt/nfsv4_1/v41 --loadfile=${WORKDIR}/client.txt 2 > ${WORKDIR}/dbenchTestLog.txt
tail -1 ${WORKDIR}/dbenchTestLog.txt | grep "Throughput"
status=$?
if [ $status -eq 0 ]
then
tail -21 ../dbenchTestLog.txt
tail -21 ${WORKDIR}/dbenchTestLog.txt
echo "dbench Test: SUCCESS"
else
tail -5 ../dbenchTestLog.txt
tail -5 ${WORKDIR}/dbenchTestLog.txt
echo "dbench Test: FAILURE"
exit $status
fi
Expand Down