blob: 41026a600cc6e90854eb5b993d16cdfeab1f83e2 [file] [log] [blame]
buyingyi1341a162013-06-05 15:07:52 -07001#!/bin/bash
Till Westmann276bbc22013-06-05 18:56:27 -07002#/*
3# Copyright 2009-2013 by The Regents of the University of California
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# you may obtain a copy of the License from
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#*/
buyingyi1341a162013-06-05 15:07:52 -070016#
17#------------------------------------------------------------------------
18# Copyright 2009-2013 by The Regents of the University of California
19# Licensed under the Apache License, Version 2.0 (the "License");
20# you may not use this file except in compliance with the License.
21# you may obtain a copy of the License from
22#
23# http://www.apache.org/licenses/LICENSE-2.0
24#
25# Unless required by applicable law or agreed to in writing, software
26# distributed under the License is distributed on an "AS IS" BASIS,
27# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
28# See the License for the specific language governing permissions and
29# limitations under the License.
30# ------------------------------------------------------------------------
31#
32
33hostname
34
35#Import cluster properties
36. conf/cluster.properties
37
38#Get the IP address of the cc
39CCHOST_NAME=`cat conf/master`
40CCHOST=`bin/getip.sh`
41
42#Remove the temp dir
43rm -rf $CCTMP_DIR
44mkdir $CCTMP_DIR
45
46#Remove the logs dir
47rm -rf $CCLOGS_DIR
48mkdir $CCLOGS_DIR
49
50#Export JAVA_HOME and JAVA_OPTS
51export JAVA_HOME=$JAVA_HOME
Yingyi Bu497da872013-12-01 14:46:28 -080052
53#get the OS
54OS_NAME=`uname -a|awk '{print $1}'`
55LINUX_OS='Linux'
56
57if [ $OS_NAME = $LINUX_OS ];
58then
59 MEM_SIZE=`cat /proc/meminfo |grep MemTotal|awk '{print $2}'`
buyingyicb1573e2013-12-02 17:04:59 -080060 MEM_SIZE=$(($MEM_SIZE * 1000))
Yingyi Bu497da872013-12-01 14:46:28 -080061else
62 MEM_SIZE=`sysctl -a | grep "hw.memsize ="|awk '{print $3}'`
63fi
64
65MEM_SIZE=$(($MEM_SIZE * 3 / 4))
66
67#Set JAVA_OPTS
68export JAVA_OPTS=$CCJAVA_OPTS" -Xmx"$MEM_SIZE
buyingyi1341a162013-06-05 15:07:52 -070069
70PREGELIX_HOME=`pwd`
71
72#Enter the temp dir
73cd $CCTMP_DIR
74
Jake Biesinger0b5368c2013-12-02 17:23:37 -080075cmd=( "${PREGELIX_HOME}/bin/pregelixcc" )
76cmd+=( -client-net-ip-address $CCHOST -cluster-net-ip-address $CCHOST
77 -heartbeat-period 5000 -max-heartbeat-lapse-periods 4
78 -default-max-job-attempts 0 )
79
80if [ -n "$CC_CLIENTPORT" ]; then
81 cmd+=( -client-net-port $CC_CLIENTPORT )
buyingyi1341a162013-06-05 15:07:52 -070082fi
Jake Biesinger0b5368c2013-12-02 17:23:37 -080083if [ -n "$CC_CLUSTERPORT" ]; then
84 cmd+=( -cluster-net-port $CC_CLUSTERPORT )
85fi
86if [ -n "$CC_HTTPPORT" ]; then
87 cmd+=( -http-port $CC_HTTPPORT )
88fi
89if [ -n "$JOB_HISTORY_SIZE" ]; then
90 cmd+=( -job-history-size $JOB_HISTORY_SIZE )
91fi
92if [ -f "${PREGELIX_HOME}/conf/topology.xml" ]; then
93 cmd+=( -cluster-topology "${PREGELIX_HOME}/conf/topology.xml" )
94fi
95
96printf "\n\n\n********************************************\nStarting CC with command %s\n\n" "${cmd[*]}" >> "$CCLOGS_DIR/cc.log"
97#Start the pregelix CC
Jake Biesinger09f21822013-12-02 18:05:44 -080098${cmd[@]} >> "$CCLOGS_DIR/cc.log" 2>&1 &