You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by be...@apache.org on 2011/06/05 10:27:16 UTC

svn commit: r1132034 - in /incubator/mesos/trunk/ec2: deploy.lucid64/root/mesos-ec2/mesos-daemon deploy.lucid64/root/mesos-ec2/start-mesos mesos_ec2.py

Author: benh
Date: Sun Jun  5 08:27:16 2011
New Revision: 1132034

URL: http://svn.apache.org/viewvc?rev=1132034&view=rev
Log:
Updating ec2 scripts to work with FT.

Modified:
    incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/mesos-daemon
    incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/start-mesos
    incubator/mesos/trunk/ec2/mesos_ec2.py

Modified: incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/mesos-daemon
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/mesos-daemon?rev=1132034&r1=1132033&r2=1132034&view=diff
==============================================================================
--- incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/mesos-daemon (original)
+++ incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/mesos-daemon Sun Jun  5 08:27:16 2011
@@ -18,12 +18,19 @@ PROGRAM=$1
 shift
 
 EXTRA_OPTS=""
-if [ "$PROGRAM" == "mesos-slave" ]; then
-  # Compute CPU and memory resources on this machine (TODO: Linux-specific)
-  CPUS=`grep processor /proc/cpuinfo | wc -l`
-  MEM_KB=`cat /proc/meminfo | grep MemTotal | awk '{print $2}'`
-  MEM=$[(MEM_KB - 1024 * 1024) / 1024]
-  EXTRA_OPTS="--cpus=$CPUS --mem=$MEM --isolation=process"
+if [ "$PROGRAM" == "nexus-slave" ]; then
+  # Compute CPU resources (if not specified).
+  if [[ "$*" != *--cpus* ]]; then
+    CPUS=`grep processor /proc/cpuinfo | wc -l`
+    EXTRA_OPTS="$EXTRA_OPTS --cpus $CPUS"
+  fi
+
+  # Compute memory resources (if not specified).
+  if [[ "$*" != *--mem* ]]; then
+    MEM_KB=`cat /proc/meminfo | grep MemTotal | awk '{print $2}'`
+    MEM=$[(MEM_KB - 1024 * 1024) / 1024]
+    EXTRA_OPTS="$EXTRA_OPTS --mem $MEM"
+  fi
 fi
 
 cd $MESOS_HOME/bin

Modified: incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/start-mesos
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/start-mesos?rev=1132034&r1=1132033&r2=1132034&view=diff
==============================================================================
--- incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/start-mesos (original)
+++ incubator/mesos/trunk/ec2/deploy.lucid64/root/mesos-ec2/start-mesos Sun Jun  5 08:27:16 2011
@@ -2,19 +2,117 @@
 cd /root/mesos-ec2
 
 MASTER="`cat master`"
+MASTER1="`cat master | head -1`"
 SLAVES="`cat slaves`"
+ZOO1="`cat zoo | head -1`"
+ZOO="`cat zoo`"
+
+ISFT="`cat zoo | wc -l`"
 
 SSH_OPTS="-o StrictHostKeyChecking=no -o ConnectTimeout=2"
 
-echo "Starting master on $MASTER"
-ssh $SSH_OPTS $MASTER "/root/mesos-ec2/mesos-daemon mesos-master </dev/null >/dev/null"
+if [[ $ISFT == 0 ]]; then
+  master_arg="1@${MASTER1}:1111"
+else
+  master_arg="zoo://"
+  add=""
+  for zoo in $ZOO; do
+    master_arg+=$add
+    master_arg+=$zoo":2181"
+    add=","
+  done
+fi
+
+echo "Running with master parameter: "$master_arg
+
+if [[ $ISFT != 0 ]]; then
+  echo "Starting ZooKeeper on $ZOO"
+  for zoo in $ZOO; do
+    ssh $SSH_OPTS $zoo "/root/mesos/src/third_party/zookeeper-*/bin/zkServer.sh start </dev/null >/dev/null"
+  done
+
+  sleep 2
+
+  masterid=1
+  for master in $MASTER; do
+    echo "Starting master $masterid on $MASTER"
+    ssh $SSH_OPTS $master "/root/mesos-ec2/mesos-daemon mesos-master -p 1111 -f $master_arg </dev/null >/dev/null"
+    masterid=$(($masterid+1))
+  done
+else
+  echo "Starting master on $MASTER1"
+  ssh $SSH_OPTS $MASTER1 "/root/mesos-ec2/mesos-daemon mesos-master -p 1111 </dev/null >/dev/null"
+fi
+
+COUNT=''
+CPUS=''
+MEM=''
+
+read -t 5 -p "If you would like to launch more than one slave per machine, please hit enter/return within the next 5 seconds."
+
+if [[ "$?" == "0" ]]; then
+  while [[ "$COUNT" == '' ]] ; do
+    read -p "Please specify the number of slaves per machine: " COUNT
+  done
+
+  while [[ "$CPUS" == '' ]] ; do
+    read -p "Please specify the number of cpus per slave: " CPUS
+  done
+
+  CPUS="--cpus $CPUS"
+
+  while [[ "$MEM" == '' ]] ; do
+    read -p "Please specify the amount of memory per slave: " MEM
+  done
+
+  MEM="--mem $MEM"
+else
+  COUNT='1'
+  echo
+fi
 
 for slave in $SLAVES; do
-  echo "Starting slave on $slave"
-  ssh $SSH_OPTS $slave "/root/mesos-ec2/mesos-daemon mesos-slave -u 1@$MASTER:5050 </dev/null >/dev/null" &
+  echo "Starting $COUNT slave(s) on $slave"
+  ssh $SSH_OPTS $slave "for ((i = 0; i < $COUNT; i++)); do /root/mesos-ec2/mesos-daemon mesos-slave ${master_arg} $CPUS $MEM; done </dev/null >/dev/null" &
   sleep 0.1
 done
 wait
 
+if [[ $ISFT != 0 ]]; then
+  echo "ZooKeeper is running at"
+  for zoo in $ZOO; do
+    echo "      $zoo:2181"
+  done
+fi
+
 echo "Everything's started! You can view the master Web UI at"
-echo "      http://$MASTER:8080"
+for master in $MASTER; do
+  echo "      http://$master:8080"
+done
+
+
+#cd /root/mesos-ec2
+#
+#MASTERS="`cat masters`"
+#SLAVES="`cat slaves`"
+#
+#SSH_OPTS="-o StrictHostKeyChecking=no -o ConnectTimeout=2"
+#
+#for master in $MASTERS; do
+#  echo "Starting master on $master"
+#  ssh $SSH_OPTS $master "/root/mesos-ec2/mesos-daemon mesos-master </dev/null >/dev/null"
+#  sleep 0.1
+#done
+#wait
+#
+#for slave in $SLAVES; do
+#  echo "Starting slave on $slave"
+#  ssh $SSH_OPTS $slave "/root/mesos-ec2/mesos-daemon mesos-slave -u 1@$MASTER:5050 </dev/null >/dev/null" &
+#  sleep 0.1
+#done
+#wait
+#
+#echo "Everything's started! You can view the master Web UI(s) at"
+#for master in $MASTERS; do
+#  echo "      http://$master:8080"
+#done

Modified: incubator/mesos/trunk/ec2/mesos_ec2.py
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/ec2/mesos_ec2.py?rev=1132034&r1=1132033&r2=1132034&view=diff
==============================================================================
--- incubator/mesos/trunk/ec2/mesos_ec2.py (original)
+++ incubator/mesos/trunk/ec2/mesos_ec2.py Sun Jun  5 08:27:16 2011
@@ -110,6 +110,7 @@ def launch_cluster(conn, opts, cluster_n
     master_group.authorize(src_group=zoo_group)
     master_group.authorize('tcp', 22, 22, '0.0.0.0/0')
     master_group.authorize('tcp', 8080, 8081, '0.0.0.0/0')
+    master_group.authorize('tcp', 5050, 5050, '0.0.0.0/0')
     master_group.authorize('tcp', 50030, 50030, '0.0.0.0/0')
     master_group.authorize('tcp', 50070, 50070, '0.0.0.0/0')
   if slave_group.rules == []: # Group was just now created
@@ -118,6 +119,7 @@ def launch_cluster(conn, opts, cluster_n
     slave_group.authorize(src_group=zoo_group)
     slave_group.authorize('tcp', 22, 22, '0.0.0.0/0')
     slave_group.authorize('tcp', 8080, 8081, '0.0.0.0/0')
+    slave_group.authorize('tcp', 5050, 5050, '0.0.0.0/0')
     slave_group.authorize('tcp', 50060, 50060, '0.0.0.0/0')
     slave_group.authorize('tcp', 50075, 50075, '0.0.0.0/0')
   if zoo_group.rules == []: # Group was just now created
@@ -126,6 +128,7 @@ def launch_cluster(conn, opts, cluster_n
     zoo_group.authorize(src_group=zoo_group)
     zoo_group.authorize('tcp', 22, 22, '0.0.0.0/0')
     zoo_group.authorize('tcp', 2181, 2181, '0.0.0.0/0')
+    zoo_group.authorize('tcp', 5050, 5050, '0.0.0.0/0')
     zoo_group.authorize('tcp', 2888, 2888, '0.0.0.0/0')
     zoo_group.authorize('tcp', 3888, 3888, '0.0.0.0/0')
   print "Checking for running cluster..."