]>
git.proxmox.com Git - ceph.git/blob - ceph/src/script/run-cbt.sh
8 $prog_name [options] <config-file>...
11 -a,--archive-dir directory in which the test result is stored, default to $PWD/cbt-archive
12 --build-dir directory where CMakeCache.txt is located, default to $PWD
13 --cbt-dir directory of cbt if you have already a copy of it. ceph/cbt:master will be cloned from github if not specified
14 -h,--help print this help message
15 --source-dir the path to the top level of Ceph source tree, default to $PWD/..
16 --use-existing do not setup/teardown a vstart cluster for testing
19 $prog_name --cbt ~/dev/cbt -a /tmp ../src/test/crimson/cbt/radosbench_4K_read.yaml
23 prog_name
=$
(basename $0)
24 archive_dir
=$PWD/cbt-archive
26 source_dir
=$
(dirname $PWD)
29 opts
=$
(getopt
--options "a:h" --longoptions "archive-dir:,build-dir:,source-dir:,cbt:,help,use-existing,classical" --name $prog_name -- "$@")
67 echo "unexpected argument $1" 1>&2
73 if test $# -gt 0; then
76 echo "$prog_name: please specify one or more .yaml files" 1>&2
81 if test -z "$cbt_dir"; then
83 git clone
--depth 1 -b master https
://github.com
/ceph
/cbt.git
$cbt_dir
86 # store absolute path before changing cwd
87 source_dir
=$
(readlink
-f $source_dir)
88 if ! $use_existing; then
90 # seastar uses 128*8 aio in reactor for io and 10003 aio for events pooling
91 # for each core, if it fails to enough aio context, the seastar application
92 # bails out. and take other process into consideration, let's make it
94 max_io
=$
(expr 32768 \
* $
(nproc
))
95 if test $
(/sbin
/sysctl
--values fs.aio-max-nr
) -lt $max_io; then
96 sudo
/sbin
/sysctl
-q -w fs.aio-max-nr
=$max_io
99 MDS
=0 MGR
=1 OSD
=3 MON
=1 $source_dir/src
/vstart.sh
-n -X \
100 --without-dashboard --memstore \
101 -o "memstore_device_bytes=34359738368"
103 MDS
=0 MGR
=1 OSD
=3 MON
=1 $source_dir/src
/vstart.sh
-n -X \
104 --without-dashboard --memstore \
105 -o "memstore_device_bytes=34359738368" \
106 --crimson --nodaemon --redirect-output \
107 --osd-args "--memory 4G"
112 for config_file
in $config_files; do
113 echo "testing $config_file"
114 cbt_config
=$
(mktemp
$config_file.XXXX.yaml
)
115 python3
$source_dir/src
/test
/crimson
/cbt
/t2c.py \
116 --build-dir $build_dir \
117 --input $config_file \
119 python3
$cbt_dir/cbt.py \
120 --archive $archive_dir \
121 --conf $build_dir/ceph.conf \
126 if ! $use_existing; then
129 $source_dir/src
/stop.sh
131 $source_dir/src
/stop.sh
--crimson