#setenv SERVLETDIR $RUBBOS_HOME/Servlets
+set -x
+
# Go back to RUBBoS root directory
cd ..
+export scp_options='-o StrictHostKeyChecking=no -o BatchMode=yes'
+
# Browse only
cp -fin ./workload/browse_only_transitions.txt ./workload/user_transitions.txt
cp -fin ./workload/browse_only_transitions.txt ./workload/author_transitions.txt
-scp ./workload/browse_only_transitions.txt ${CLIENT1_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
-scp ./workload/browse_only_transitions.txt ${CLIENT1_HOST}:${RUBBOS_HOME}/workload/author_transitions.txt
-
-scp ./workload/browse_only_transitions.txt ${CLIENT2_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
-scp ./workload/browse_only_transitions.txt ${CLIENT2_HOST}:${RUBBOS_HOME}/workload/author_transitions.txt
-
-scp ./workload/browse_only_transitions.txt ${CLIENT3_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
-scp ./workload/browse_only_transitions.txt ${CLIENT3_HOST}:${RUBBOS_HOME}/workload/author_transitions.txt
-
-scp ./workload/browse_only_transitions.txt ${CLIENT4_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
-scp ./workload/browse_only_transitions.txt ${CLIENT4_HOST}:${RUBBOS_HOME}/workload/author_transitions.txt
-
-scp Client/rubbos.properties ${CLIENT1_HOST}:${RUBBOS_HOME}/Client/rubbos.properties
-scp Client/rubbos.properties ${CLIENT2_HOST}:${RUBBOS_HOME}/Client/rubbos.properties
-scp Client/rubbos.properties ${CLIENT3_HOST}:${RUBBOS_HOME}/Client/rubbos.properties
-scp Client/rubbos.properties ${CLIENT4_HOST}:${RUBBOS_HOME}/Client/rubbos.properties
-
-
-bench/flush_cache 490000
-ssh $HTTPD_HOST "$RUBBOS_HOME/bench/flush_cache 880000" # web server
-ssh $MYSQL1_HOST "$RUBBOS_HOME/bench/flush_cache 880000" # database server
-ssh $TOMCAT1_HOST "$RUBBOS_HOME/bench/flush_cache 780000" # servlet server
-ssh $CLIENT1_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
-ssh $CLIENT2_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
-ssh $CLIENT3_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
-ssh $CLIENT4_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
+for host in ${CLIENT1_HOST} ${CLIENT2_HOST} ${CLIENT3_HOST} ${CLIENT4_HOST}
+do
+ scp ${scp_options} ./workload/browse_only_transitions.txt ${host}:${RUBBOS_HOME}/workload/user_transitions.txt
+ scp ${scp_options} ./workload/browse_only_transitions.txt ${host}:${RUBBOS_HOME}/workload/author_transitions.txt
+ scp ${scp_options} Client/rubbos.properties ${host}:${RUBBOS_HOME}/Client/rubbos.properties
+done
+
+#bench/flush_cache 490000
+#ssh $HTTPD_HOST "$RUBBOS_HOME/bench/flush_cache 880000" # web server
+#ssh $MYSQL1_HOST "$RUBBOS_HOME/bench/flush_cache 880000" # database server
+#ssh $TOMCAT1_HOST "$RUBBOS_HOME/bench/flush_cache 780000" # servlet server
+#ssh $CLIENT1_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
+#ssh $CLIENT2_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
+#ssh $CLIENT3_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
+#ssh $CLIENT4_HOST "$RUBBOS_HOME/bench/flush_cache 490000" # remote client
RAMPUP=480000
MI=720000
SMI=`date -d "1970-01-01 $start_seconds secs UTC" +%Y%m%d%H%M%S`
end_seconds=`echo \( $RAMPUP / 1000 + $MI / 1000 + 30 \) + $current_seconds | bc`
EMI=`date -d "1970-01-01 $end_seconds secs UTC" +%Y%m%d%H%M%S`
-ssh $BENCHMARK_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
-ssh $CLIENT1_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
-ssh $CLIENT2_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
-ssh $CLIENT3_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
-ssh $CLIENT4_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
-ssh $HTTPD_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
-ssh $TOMCAT1_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
-ssh $MYSQL1_HOST "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
+for host in $BENCHMARK_HOST $CLIENT1_HOST $CLIENT2_HOST $CLIENT3_HOST \
+ $CLIENT4_HOST $HTTPD_HOST $TOMCAT1_HOST $MYSQL1_HOST
+do
+ ssh $scp_options $host "sudo nice -n -1 $RUBBOS_APP/cpu_mem.sh $SMI $EMI" &
+done
make emulator
+set -x
+
#!/bin/bash
+set -x
+
cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
source set_bottlenecks_rubbos_env.sh
+export scp_options='-o StrictHostKeyChecking=no -o BatchMode=yes'
scp $WORK_HOME/monitors_files/oprofile_start.sh $MYSQL1_HOST:/tmp/
ssh $TOMCAT1_HOST "rm -f $CATALINA_HOME/logs/*"
ssh $MYSQL1_HOST "rm -f $MYSQL_HOME/run/*.log $RUBBOS_APP/mysql_mon-*"
- #$OUTPUT_HOME/scripts/start_all.sh
- #sleep 15
-
- ssh $BENCHMARK_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $CLIENT1_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $CLIENT2_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $CLIENT3_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $CLIENT4_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $HTTPD_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $TOMCAT1_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $MYSQL1_HOST "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
- ssh $MYSQL1_HOST "sudo rm -f /tmp/*.log"
- ssh root@$MYSQL1_HOST chmod 777 /tmp/oprofile_start.sh
+ $OUTPUT_HOME/scripts/start_all.sh
+ sleep 15
+
+ for host in $BENCHMARK_HOST $CLIENT1_HOST $CLIENT2_HOST $CLIENT3_HOST \
+ $CLIENT4_HOST $HTTPD_HOST $TOMCAT1_HOST $MYSQL1_HOST
+ do
+ ssh $host "rm -f $RUBBOS_APP/sar-* $RUBBOS_APP/ps-* $RUBBOS_APP/iostat-*"
+ done
+ ssh $MYSQL1_HOST "rm -f /tmp/*.log"
+ ssh $MYSQL1_HOST chmod 777 /tmp/oprofile_start.sh
#ssh $MYSQL1_HOST "
# cd /tmp
# ./oprofile_start.sh
ssh $BENCHMARK_HOST "
source /bottlenecks/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh
+
cd $RUBBOS_HOME/bench
\rm -r 20*
# Collect results
echo "The benchmark has finished. Now, collecting results..."
cd 20*
- scp $BENCHMARK_HOST:$RUBBOS_APP/sar-* ./
- scp $BENCHMARK_HOST:$RUBBOS_APP/ps-* ./
- scp $BENCHMARK_HOST:$RUBBOS_APP/iostat-* ./
- scp $BENCHMARK_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $BENCHMARK_HOST:$RUBBOS_APP/postgres_lock-* ./
- scp $CLIENT1_HOST:$RUBBOS_APP/sar-* ./
- scp $CLIENT1_HOST:$RUBBOS_APP/ps-* ./
- scp $CLIENT1_HOST:$RUBBOS_APP/iostat-* ./
- scp $CLIENT1_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $CLIENT1_HOST:$RUBBOS_APP/postgres_lock-* ./
- scp $CLIENT2_HOST:$RUBBOS_APP/sar-* ./
- scp $CLIENT2_HOST:$RUBBOS_APP/ps-* ./
- scp $CLIENT2_HOST:$RUBBOS_APP/iostat-* ./
- scp $CLIENT2_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $CLIENT2_HOST:$RUBBOS_APP/postgres_lock-* ./
- scp $CLIENT3_HOST:$RUBBOS_APP/sar-* ./
- scp $CLIENT3_HOST:$RUBBOS_APP/ps-* ./
- scp $CLIENT3_HOST:$RUBBOS_APP/iostat-* ./
- scp $CLIENT3_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $CLIENT3_HOST:$RUBBOS_APP/postgres_lock-* ./
- scp $CLIENT4_HOST:$RUBBOS_APP/sar-* ./
- scp $CLIENT4_HOST:$RUBBOS_APP/ps-* ./
- scp $CLIENT4_HOST:$RUBBOS_APP/iostat-* ./
- scp $CLIENT4_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $CLIENT4_HOST:$RUBBOS_APP/postgres_lock-* ./
- scp $HTTPD_HOST:$RUBBOS_APP/sar-* ./
- scp $HTTPD_HOST:$RUBBOS_APP/ps-* ./
- scp $HTTPD_HOST:$RUBBOS_APP/iostat-* ./
- scp $HTTPD_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $HTTPD_HOST:$RUBBOS_APP/postgres_lock-* ./
- scp $TOMCAT1_HOST:$RUBBOS_APP/sar-* ./
- scp $TOMCAT1_HOST:$RUBBOS_APP/ps-* ./
- scp $TOMCAT1_HOST:$RUBBOS_APP/iostat-* ./
- scp $TOMCAT1_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $TOMCAT1_HOST:$RUBBOS_APP/postgres_lock-* ./
- scp $MYSQL1_HOST:$RUBBOS_APP/sar-* ./
- scp $MYSQL1_HOST:$RUBBOS_APP/ps-* ./
- scp $MYSQL1_HOST:$RUBBOS_APP/iostat-* ./
- scp $MYSQL1_HOST:$RUBBOS_APP/mysql_mon-* ./
- scp $MYSQL1_HOST:$RUBBOS_APP/postgres_lock-* ./
+ for host in $BENCHMARK_HOST $CLIENT1_HOST $CLIENT2_HOST $CLIENT3_HOST \
+ $CLIENT4_HOST $HTTPD_HOST $TOMCAT1_HOST $MYSQL1_HOST
+ do
+ for f in sar-* ps-* iostat-* mysql_mon-* postgres_lock-*
+ do
+ scp $scp_options \$host:$RUBBOS_APP/\$f ./
+ done
+ done
cd ..
mv 20* $TMP_RESULTS_DIR_BASE/$RUBBOS_RESULTS_DIR_NAME/
"
"
echo "Finish RUBBoS"
+
+set +x
+
echo "STARTING MYSQL on $HOSTNAME"
-cd $MYSQL_HOME
-bin/safe_mysqld --defaults-file="$MYSQL_HOME/my.cnf" --datadir=$MYSQL_DATA_DIR --pid-file=$MYSQL_PID_FILE --socket=$MYSQL_SOCKET --port=$MYSQL_PORT --user=root --log-bin=rubbos-bin --max_connections=500 --log-slow-queries &
-#bin/safe_mysqld --defaults-file="$MYSQL_HOME/my.cnf" --datadir=$MYSQL_DATA_DIR --log=$MYSQL_ERR_LOG --pid-file=$MYSQL_PID_FILE --socket=$MYSQL_SOCKET --port=$MYSQL_PORT --user=root &#--log-bin=rubbos-bin
+# TODO start mysqld here, currently mysql is started by MYSQL1_configure.sh
echo "MYSQL IS RUNNING on $HOSTNAME"
echo "CONFIGURING TOMCAT on $HOSTNAME"
-cp $OUTPUT_HOME/tomcat_conf/server.xml-$HOSTNAME $CATALINA_HOME/conf/server.xml
+cp $OUTPUT_HOME/tomcat_conf/server.xml $CATALINA_HOME/conf/server.xml
-echo "DONE CONFIGURING TOMCAT on $HOSTNAME"
+echo "DONE CONFIGURING TOMCAT on $HOSTNAME"
# Packages for TOMCAT1 configure
if true; then
ssh $TOMCAT1_HOST "mkdir -p $OUTPUT_HOME/tomcat_conf"
-scp $scp_options $OUTPUT_HOME/tomcat_conf/server.xml-$HOSTNAME $TOMCAT1_HOST:$OUTPUT_HOME/tomcat_conf/server.xml-$HOSTNAME
+scp $scp_options $OUTPUT_HOME/tomcat_conf/server.xml $TOMCAT1_HOST:$OUTPUT_HOME/tomcat_conf/server.xml
fi
# Packages for TOMCAT1 rubbosSL configure
+#!/bin/bash
+set -x
+
cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
source set_bottlenecks_rubbos_env.sh
cd /bottlenecks/rubbos/rubbos_scripts/1-1-1/scripts
ssh $CONTROL_HOST /tmp/CONTROL_rubbos_exec.sh
+set +x
+++ /dev/null
-#!/bin/bash
-
-
-ssh $MYSQL1_HOST /tmp/MYSQL1_install.sh
-
-
-
-
-ssh $MYSQL1_HOST /tmp/MYSQL1_rubbos_install.sh
-
-
-
-
-ssh $MYSQL1_HOST /tmp/MYSQL1_configure.sh &
-sleep 60
-
-
-#ssh $CONTROL_HOST /tmp/CONTROL_rubbos_exec.sh
-
cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
source set_bottlenecks_rubbos_env.sh
-ssh $MYSQL1_HOST /tmp/MYSQL1_ignition.sh &
+ssh $MYSQL1_HOST /tmp/MYSQL1_ignition.sh
sleep 10
-ssh $TOMCAT1_HOST /tmp/TOMCAT1_ignition.sh
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_ignition.sh
sleep 10
-ssh $HTTPD_HOST /tmp/HTTPD_ignition.sh
+ssh $HTTPD_HOST /tmp/HTTPD_ignition.sh
sleep 5
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
-
+
<!-- Global JNDI resources -->
<GlobalNamingResources>
-
+
<!-- Test entry for demonstration purposes -->
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
-
+
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users -->
<Resource name="UserDatabase" auth="Container"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
-
+
</GlobalNamingResources>
-
-
+
+
<!-- Define the Tomcat Stand-Alone Service -->
<Service name="Catalina">
-
+
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Each Connector passes requests on to the
associated "Container" (normally an Engine) for processing.
-->
-
+
<!-- Define a non-SSL HTTP/1.1 Connector on port 2117 (default 8080) -->
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="330" minSpareThreads="5" maxSpareThreads="50"
enableLookups="false" redirectPort="8443" acceptCount="6000"
connectionTimeout="20000" disableUploadTimeout="true" />
-
+
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
maxThreads="330" minSpareThreads="5" maxSpareThreads="50"
acceptCount="6000" redirectPort="8443" protocol="AJP/1.3" />
-
+
<!-- Define a Proxied HTTP/1.1 Connector on port 8082 -->
<!-- See proxy documentation for more information about using this. -->
<!--
enableLookups="false" acceptCount="100" connectionTimeout="20000"
proxyPort="80" disableUploadTimeout="true" />
-->
-
+
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host). -->
-
+
<!-- Define the top level container in our container hierarchy -->
<Engine jvmRoute="TOMCAT1" name="Catalina" defaultHost="localhost">
-
+
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
-
+
<!-- Define the default virtual host -->
-
+
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<!-- <Context path="" docBase="webapps" debug="0" reloadable="true"/> -->
-
+
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
</Host>
-
-
+
+
</Engine>
-
- </Service>
-
-</Server>
+ </Service>
+</Server>