1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
metadata:
name: moin-benchmarks
devices:
- role: load-gen
count: 1
image_type: x86
- role: server
count: 1
image_type: x86
initialization:
"*":
- "lava-set-up-hosts-file"
- "export TEST_TIME=300"
- "export LET_SERVER_RECOVER=yes"
- "export NUM_CALL=1"
- "export LOAD_GENS_PER_NODE=1"
- "export LOADGEN_COUNT=$(lava-group | grep load-gen | wc -l)"
"server":
- "hooks/install"
- "hooks/config-changed"
- "apt-get install -y apache2-mpm-worker"
- "cp apache.conf /etc/apache2/sites-available/default"
- "a2enmod proxy_http"
- "apache2ctl graceful"
"load-gen":
- "apt-get install -y httperf"
- "ifconfig"
testdefaults:
"*":
teardown:
- "uptime | perl -n -e '/load average: ([0-9.]+),/ && print $1 . \"\\n\"' > $LAVA_RESULT_DIR/attributes/$(lava-self)-load"
"server":
setup:
- "C=$(pwd)"
- "cd /srv/server01/"
- "WORKER_COUNT=$(echo $LAVA_TEST_ID | cut -d- -f4)"
- "/usr/bin/gunicorn --pid /var/run/gunicorn/server01.conf.pid --name server01.conf -c /var/lib/gunicorn-pyconf --name=server01_wiki --worker-class=eventlet --bind=0.0.0.0:8080 --workers=$WORKER_COUNT --log-file=/srv/server01/logs/gunicorn.log --timeout=300 wsgi &"
- "sleep 1"
- "cd $C"
- "./compare_time_in_state.py"
- "setsid sh -c 'while :; do o=$(cat /var/log/apache2/access.log | wc -l); sleep 5; p=$(cat /var/log/apache2/access.log | wc -l); echo handled $((p-o)) requests; python ./compare_time_in_state.py; done > $LAVA_RESULT_DIR/attachments/cpufreq-log-${LAVA_TEST_ID}.txt' &"
- "echo $! > logging-pid"
teardown:
- "kill -TERM -$(echo $(ps -o pgid= $(cat logging-pid)))"
- "kill -2 `cat /var/run/gunicorn/server01.conf.pid`"
- "wait `cat /var/run/gunicorn/server01.conf.pid`"
- "#mv perf.data $LAVA_RESULT_DIR/attachments/"
- "#mv /tmp/plop.out.* $LAVA_RESULT_DIR/attachments/"
- "#mv /srv/server01/logs/gunicorn.log $LAVA_RESULT_DIR/attachments/moinlog.txt"
- "#mv /tmp/argh $LAVA_RESULT_DIR/attachments/argh.txt"
"load-gen":
run:
- "#sleep $TEST_TIME"
- "./run-loadgen.sh $LAVA_TEST_ID"
testcases:
FrontPage-20-rps-1-worker:
FrontPage-30-rps-1-worker:
FrontPage-20-rps-2-worker:
FrontPage-30-rps-2-worker:
postprocess: ./post-process.py
|