-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathstart.sh
executable file
·83 lines (66 loc) · 2.86 KB
/
start.sh
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#!/bin/bash
set -euo pipefail
ulimit -n 64000
ulimit -u 64000
#ulimit -f unlimited
#ulimit -t unlimited
#ulimit -m unlimited
#ulimit -v unlimited
mkdir -p logs
mkdir -p tests/results
# change path to your dapr bundle
dapr init --from-dir /home/liontao/Downloads/daprbundle
docker run -d --name jaeger \
-e COLLECTOR_ZIPKIN_HOST_PORT=:9412 \
-p 16686:16686 \
-p 9412:9412 \
jaegertracing/all-in-one:1.22
# change zipkin to jaeger for better performance
# EDIT path of your $HOME
sed -i "s@http://localhost:9411/api/v2/spans@http://localhost:9412/api/v2/spans@g" "$HOME"/.dapr/config.yaml
docker run --name "dapr_zipkin" --restart always -d -p 9411:9411 openzipkin/zipkin
docker run --name "dapr_redis" --restart always -d -p 6379:6379 redislabs/rejson
# docker run --name prom -p 8888:9090 -d -v /home/liontao/work/pdbst-rtree/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus --config.file=/etc/prometheus/prometheus.yml --web.listen-address=:9090
# docker run --name grafana -d -p 4000:3000 grafana/grafana-oss:8.4.5-ubuntu
# 3000 is for grafana
# dapr run --app-id assemble --app-port 3000 -- hypercorn --bind 0.0.0.0:3000 assemble.main:app >assemble.log 2>&1 &
# echo $! >pid
# dapr run --app-id index --app-port 3001 -- hypercorn --bind 0.0.0.0:3001 index.main:app >index.log 2>&1 &
# echo $! >>pid
# dapr run --app-id index-meta --app-port 3002 -- hypercorn --bind 0.0.0.0:3002 index_meta.main:app >index-meta.log 2>&1 &
# echo $! >>pid
# dapr run --app-id compute --app-port 3003 -- hypercorn --bind 0.0.0.0:3003 compute.main:app >compute.log 2>&1 &
# echo $! >>pid
# dapr run --app-id agent --app-port 3004 -- hypercorn --bind 0.0.0.0:3004 agent.main:app >agent.log 2>&1 &
# echo $! >>pid
touch pid
# start assemblers
for i in {1..20}; do
let p=3000+$i
dapr run --app-id assemble --app-port "$p" -- hypercorn --bind "0.0.0.0:$p" assemble.main:app >"logs/assemble$i.log" 2>&1 &
echo $! >>pid
done
# start distributed index
for i in {1..30}; do
let p=3100+$i
dapr run --app-id index --app-port "$p" -- hypercorn --bind "0.0.0.0:$p" index.main:app >"logs/index$i.log" 2>&1 &
echo $! >>pid
done
# start coordinator
dapr run --app-id index-meta --app-port 3301 -- hypercorn --bind "0.0.0.0:3301" index_meta.main:app >"logs/index-meta.log" 2>&1 &
echo $! >>pid
# start executor
for i in {1..5}; do
let p=3200+$i
dapr run --app-id compute --app-port "$p" -- hypercorn --bind "0.0.0.0:$p" compute.main:app >"logs/compute$i.log" 2>&1 &
echo $! >>pid
done
# start query agent
dapr run --app-id agent --app-port 3302 -- hypercorn --bind 0.0.0.0:3302 agent.main:app >logs/agent.log 2>&1 &
echo $! >>pid
# accumulator is for some experiment metrics
dapr run --app-id accumulator --app-port 3303 -- hypercorn --bind 0.0.0.0:3303 accumulator.main:app >logs/accumulator.log 2>&1 &
echo $! >>pid
# start data generator
sleep 10
dapr run --app-id ingress python3 ingress/main.py