-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathcrawler-ec2-script.sh
67 lines (55 loc) · 2.04 KB
/
crawler-ec2-script.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
#!/bin/bash
# Use $(pwd) directly instead of assigning to PWD
kvsWorkers=5 # number of kvs workers to launch
flameWorkers=5 # number of flame workers to launch
rm *.jar
# Compile all Java files
javac --source-path src -d bin $(find src -name '*.java')
# Compile and create Crawler.jar
javac -d bin --source-path src src/cis5550/jobs/NewCrawler.java
sleep 1
jar cf new-crawler.jar bin/cis5550/jobs/NewCrawler.class
sleep 1
# Compile and create Indexer.jar
javac -d bin --source-path src src/cis5550/jobs/Indexer.java
sleep 1
jar cf indexer.jar bin/cis5550/jobs/Indexer.class
sleep 1
# Compile and create PageRank.jar
javac -d bin --source-path src src/cis5550/jobs/NewPageRank.java
sleep 1
jar cf pagerank.jar bin/cis5550/jobs/NewPageRank.class
sleep 1
# Launch KVS Coordinator
echo "cd '$(pwd)'; java -cp bin cis5550.kvs.Coordinator 8000" > kvscoordinator.sh
chmod +x kvscoordinator.sh
# Run KVS coordinator in the background, log output and errors to specific file
nohup ./kvscoordinator.sh > kvscoordinator.log 2>&1 &
sleep 2
# Launch KVS Workers
for i in `seq 1 $kvsWorkers`
do
dir=worker$i
if [ ! -d $dir ]
then
mkdir $dir
fi
echo "cd '$(pwd)'; java -cp bin -Xmx16g cis5550.kvs.Worker $((8000+$i)) $dir localhost:8000" > kvsworker$i.sh
chmod +x kvsworker$i.sh
# Run each KVS worker in the background and log output/errors to specific file
nohup ./kvsworker$i.sh > kvsworker$i.log 2>&1 &
done
# Launch Flame Coordinator
echo "cd '$(pwd)'; java -cp bin cis5550.flame.Coordinator 9000 localhost:8000" > flamecoordinator.sh
chmod +x flamecoordinator.sh
# Run Flame coordinator in the background, log output and errors to specific file
nohup ./flamecoordinator.sh > flamecoordinator.log 2>&1 &
sleep 2
# Launch Flame Workers
for i in `seq 1 $flameWorkers`
do
echo "cd '$(pwd)'; java -cp bin cis5550.flame.Worker $((9000+$i)) localhost:9000" > flameworker$i.sh
chmod +x flameworker$i.sh
# Run each Flame worker in the background and log output/errors to specific file
nohup ./flameworker$i.sh > flameworker$i.log 2>&1 &
done