summaryrefslogtreecommitdiffstats
path: root/testsuites/rubbos/rubbos_scripts
diff options
context:
space:
mode:
authorMatthewLi <matthew.lijun@huawei.com>2016-03-25 03:55:53 -0400
committerMatthewLi <matthew.lijun@huawei.com>2016-03-25 03:55:53 -0400
commitf84c8dcc22f1499128893e62b0e15b4b592c47ba (patch)
treeee14029aa59c076fdfde1c504a385f3389477a6a /testsuites/rubbos/rubbos_scripts
parent7ba76747d55669e2bbaf70a3061e1c0b5dea912e (diff)
adjust project directories
JIRA: BOTTLENECK-56 Change-Id: Ic9acad5eaa4917093bdb85a80960f796f5b4ba7f Signed-off-by: MatthewLi <matthew.lijun@huawei.com>
Diffstat (limited to 'testsuites/rubbos/rubbos_scripts')
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/1-1-1.xml350
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/httpd.conf1076
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/workers.properties_template215
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/mysql_conf/my.cnf6
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/nsFile.txt48
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Config.java34
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Makefile80
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.properties8
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.xml114
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/config.mk32
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/cpu_mem.sh100
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/mysql.properties_template83
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsBO.sh77
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsRW.sh83
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos.properties_template79
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/web.xml203
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_configure.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_install.sh23
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_pkg_prepare.sh45
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_install.sh38
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_uninstall.sh18
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_uninstall.sh15
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_configure.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_install.sh23
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_pkg_prepare.sh45
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_install.sh38
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_uninstall.sh18
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_uninstall.sh15
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_configure.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_install.sh23
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_pkg_prepare.sh45
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_install.sh38
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_uninstall.sh18
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_uninstall.sh15
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_configure.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_install.sh23
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_pkg_prepare.sh45
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_install.sh38
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_uninstall.sh18
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_uninstall.sh15
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_configure.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_install.sh23
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_pkg_prepare.sh45
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_install.sh38
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_uninstall.sh18
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_uninstall.sh15
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_checkScp_exec.sh28
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_emulabConf_exec.sh63
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_rubbos_exec.sh151
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_configure.sh25
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_ignition.sh19
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_install.sh44
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_pkg_prepare.sh50
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_install.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_uninstall.sh17
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_stop.sh20
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_uninstall.sh17
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_configure.sh31
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_ignition.sh22
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_install.sh41
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_pkg_prepare.sh41
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_reset.sh49
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_install.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_uninstall.sh17
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_stop.sh20
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_uninstall.sh15
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_configure.sh18
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_ignition.sh19
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_install.sh28
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_pkg_prepare.sh59
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbosSL_configure.sh34
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_install.sh37
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_uninstall.sh19
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_stop.sh21
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_uninstall.sh16
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/check_service_status.sh19
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/env_preparation.sh50
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/kill_all.sh22
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/manualCleanup.sh84
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/reset_all.sh16
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/run.sh153
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/start_all.sh21
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/scripts/stop_all.sh18
-rwxr-xr-xtestsuites/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh95
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/sysstat_conf/CONFIG46
-rw-r--r--testsuites/rubbos/rubbos_scripts/1-1-1/tomcat_conf/server.xml79
86 files changed, 5045 insertions, 0 deletions
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/1-1-1.xml b/testsuites/rubbos/rubbos_scripts/1-1-1/1-1-1.xml
new file mode 100644
index 00000000..07a64362
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/1-1-1.xml
@@ -0,0 +1,350 @@
+<?xml version="1.0"?>
+
+<xtbl name="RubbosBenchmark" version="0.1">
+
+
+<instances>
+ <params>
+ <env>
+ <!-- Experiment name on Emulab -->
+ <param name="EMULAB_EXPERIMENT_NAME" value="hanwei.infosphere.emulab.net"/>
+
+ <!-- Directories from which files are copied -->
+ <param name="WORK_HOME" value="/bottlenecks/rubbos/rubbos_scripts/rubbosMulini6"/>
+ <param name="OUTPUT_HOME" value="/bottlenecks/rubbos/rubbos_scripts/1-1-1"/>
+ <param name="SOFTWARE_HOME" value="/bottlenecks/rubbos/app_tools"/>
+
+ <!-- Output directory for results of RUBBoS benchmark -->
+ <param name="RUBBOS_RESULTS_HOST" value="bonn.cc.gt.atl.ga.us"/>
+ <param name="RUBBOS_RESULTS_DIR_BASE" value="/bottlenecks/rubbos/rubbos_results"/>
+
+ <!-- Top directories -->
+ <param name="BOTTLENECKS_TOP" value="/bottlenecks"/>
+ <param name="RUBBOS_TOP" value="$BOTTLENECKS_TOP/rubbos"/>
+ <param name="RUBBOS_APP" value="$RUBBOS_TOP/app">
+ <param name="TMP_RESULTS_DIR_BASE" value="$RUBBOS_TOP/tmp_results"/>
+
+ <!-- Sysstat & Dstat-->
+ <param name="SYSSTAT_HOME" value="$RUBBOS_APP/sysstat-9.0.6"/>
+ <param name="SYSSTAT_TARBALL" value="sysstat-9.0.6.tar.gz"/>
+ <param name="DSTAT_TARBALL" value="$SOFTWARE_HOME/dstat.tar.gz"/>
+
+ <!-- Ant -->
+ <param name="ANT_HOME" value="$RUBBOS_TOP/apache-ant-1.6.5"/>
+ <param name="ANT_TARBALL" value="apache-ant-1.6.5.tar.gz"/>
+
+ <!-- Rubbos -->
+ <param name="RUBBOS_HOME" value="$RUBBOS_APP/RUBBoS"/>
+ <param name="RUBBOS_TARBALL" value="RUBBoS-servlets.tar.gz"/>
+ <param name="RUBBOS_DATA_TARBALL" value="rubbos_data.tar.gz"/>
+ <param name="RUBBOS_DATA_TEXTFILES_TARBALL" value="smallDB-rubbos-modified.tgz"/>
+
+ <!-- Java -->
+ <!--jdk j2sdk-1_4_2_19-linux-i586
+ <param name="JAVA_HOME" value="/mnt/elba/rubbos/jdk1.5.0_07"/>
+ <param name="JAVA_OPTS" value="-Xmx1300m"/>
+ <param name="JAVA_TARBALL" value="jdk1.5.0_07.tar.gz"/>
+ -->
+ <!-- jdk-1_5_0_7-linux-i586
+ <param name="JAVA_HOME" value="/mnt/elba/rubbos/jdk1.5.0_07"/>
+ <param name="JAVA_OPTS" value="-Xmx1300m"/>
+ <param name="JAVA_TARBALL" value="jdk1.5.0_07.tar.gz"/>
+ -->
+ <!--jdk-1_5_0_22-linux-i586
+ <param name="JAVA_HOME" value="/mnt/elba/rubbos/jdk1.5.0_07"/>
+ <param name="JAVA_OPTS" value="-Xmx1300m"/>
+ <param name="JAVA_TARBALL" value="jdk1.5.0_07.tar.gz"/>
+ -->
+ <!-- jdk-6u27-linux-i586 -->
+ <param name="JAVA_HOME" value="$RUBBOS_APP/jdk1.6.0_27"/>
+ <param name="JAVA_OPTS" value="-Xmx1300m"/>
+ <param name="JAVA_TARBALL" value="jdk1.6.0_27.tar.gz"/>
+ <!-- J2EE -->
+ <param name="J2EE_HOME" value="$RUBBOS_APP/j2sdkee1.3.1"/>
+ <param name="J2EE_TARBALL" value="j2sdkee1.3.1.jar.gz"/>
+
+ <!-- Apache -->
+ <param name="HTTPD_HOME" value="$RUBBOS_APP/apache2"/>
+ <param name="HTTPD_INSTALL_FILES" value="$RUBBOS_APP/httpd-2.0.64"/>
+ <param name="HTTPD_TARBALL" value="httpd-2.0.64.tar.gz"/>
+
+ <!-- mod_jk -->
+ <!-- jakarta-tomcat-connectors-1.2.15
+ <param name="MOD_JK_INSTALL_FILES" value="$RUBBOS_TOP/jakarta-tomcat-connectors-1.2.15-src"/>
+ <param name="MOD_JK_INSTALL_CONFIGURE" value="$MOD_JK_INSTALL_FILES/jk/native"/>
+ <param name="MOD_JK_TARBALL" value="jakarta-tomcat-connectors-1.2.15-src.tar.gz"/>
+ -->
+ <!-- tomcat-connectors-1.2.32 -->
+ <param name="MOD_JK_INSTALL_FILES" value="$RUBBOS_APP/tomcat-connectors-1.2.32-src"/>
+ <param name="MOD_JK_INSTALL_CONFIGURE" value="$MOD_JK_INSTALL_FILES/native"/>
+ <param name="MOD_JK_TARBALL" value="tomcat-connectors-1.2.32-src.tar.gz"/>
+
+ <!-- Tomcat -->
+ <!-- apache-tomcat-5.5.17 -->
+ <param name="CATALINA_HOME" value="$RUBBOS_APP/apache-tomcat-5.5.17"/>
+ <param name="CATALINA_BASE" value="$CATALINA_HOME"/>
+ <param name="TOMCAT_TARBALL" value="apache-tomcat-5.5.17.tar.gz"/>
+ <param name="SERVLET_API_PATH" value="$CATALINA_HOME/common/lib/servlet-api.jar"/>
+
+ <!-- apache-tomcat-5.5.33
+ <param name="CATALINA_HOME" value="/mnt/elba/rubbos/apache-tomcat-5.5.33"/>
+ <param name="CATALINA_BASE" value="$CATALINA_HOME"/>
+ <param name="TOMCAT_TARBALL" value="apache-tomcat-5.5.33.tar.gz"/>
+ <param name="SERVLET_API_PATH" value="$CATALINA_HOME/common/lib/servlet-api.jar"/>
+ -->
+ <!-- apache-tomcat-6.0.33
+ <param name="CATALINA_HOME" value="/mnt/elba/rubbos/apache-tomcat-6.0.33"/>
+ <param name="CATALINA_BASE" value="$CATALINA_HOME"/>
+ <param name="TOMCAT_TARBALL" value="apache-tomcat-6.0.33.tar.gz"/>
+ <param name="SERVLET_API_PATH" value="$CATALINA_HOME/lib/servlet-api.jar"/>
+ -->
+ <!-- apache-tomcat-7.0.21
+ <param name="CATALINA_HOME" value="/mnt/elba/rubbos/apache-tomcat-7.0.21"/>
+ <param name="CATALINA_BASE" value="$CATALINA_HOME"/>
+ <param name="TOMCAT_TARBALL" value="apache-tomcat-7.0.21.tar.gz"/>
+ <param name="SERVLET_API_PATH" value="$CATALINA_HOME/lib/servlet-api.jar"/>
+ -->
+
+ <!-- C-JDBC
+ <param name="CJDBC_HOME" value="$RUBBOS_TOP/c-jdbc-2.0.2-bin"/>
+ <param name="CJDBC_TARBALL" value="c-jdbc-2.0.2-bin-modified.tar.gz"/>
+ <param name="CJDBC_DRIVER" value="c-jdbc-driver.jar"/>
+ <param name="CJDBC_CONTROLLER" value="c-jdbc-controller.jar"/>
+ <param name="CJDBC_PORT" value="25322"/>
+ -->
+
+ <!-- Mysql -->
+ <param name="MYSQL_HOME" value="$RUBBOS_APP/mysql-5.0.51a-linux-i686-glibc23"/>
+ <param name="MYSQL_TARBALL" value="mysql-5.0.51a-linux-i686-glibc23.tar.gz"/>
+ <param name="MYSQL_TARBALL_RT" value="mysql-5.0.51a-modified-bin.tar.gz"/>
+ <param name="MYSQL_CONNECTOR" value="mysql-connector-java-5.1.7-bin.jar"/>
+ <param name="MYSQL_PORT" value="3313"/>
+ <param name="MYSQL_SOCKET" value="$MYSQL_HOME/mysql.sock"/>
+ <param name="MYSQL_DATA_DIR" value="$MYSQL_HOME/data"/>
+ <param name="MYSQL_ERR_LOG" value="$MYSQL_HOME/data/mysql.log"/>
+ <param name="MYSQL_PID_FILE" value="$MYSQL_HOME/run/mysqld.pid"/>
+ <param name="MYSQL_ROOT_PW" value="new-password"/>
+
+ <!-- for PostgreSQL
+ <param name="POSTGRES_HOME" value="$RUBBOS_TOP/pgsql"/>
+ <param name="POSTGRES_INSTALL_FILES" value="$RUBBOS_TOP/postgresql-8.3.1"/>
+ <param name="POSTGRES_CONNECTOR" value="postgresql-8.3-603.jdbc3.jar"/>
+ <param name="POSTGRES_DATA_DIR" value="$POSTGRES_HOME/data"/>
+ -->
+
+ <!-- for DBs & C-JDBC -->
+ <param name="ROOT_PASSWORD" value="new-password"/>
+ <param name="ELBA_USER" value="elba"/>
+ <param name="ELBA_PASSWORD" value="elba"/>
+
+ </env>
+
+ <workloads>
+ <param name="workload" value="200"/>
+ <param name="workload" value="300"/>
+ <param name="workload" value="400"/>
+ <param name="workload" value="500"/>
+ <param name="workload" value="600"/>
+ <param name="workload" value="700"/>
+ <param name="workload" value="800"/>
+ <param name="workload" value="900"/>
+ <param name="workload" value="1000"/>
+ <param name="workload" value="1100"/>
+ <param name="workload" value="1200"/>
+ <param name="workload" value="1300"/>
+ <param name="workload" value="1400"/>
+ <param name="workload" value="1500"/>
+ <param name="workload" value="1600"/>
+ <param name="workload" value="1700"/>
+ </workloads>
+
+ <rubbos-conf>
+ <param name="connectionPoolSize" value="12"/>
+ <param name="upRampTime" value="480000"/>
+ <param name="runTime" value="720000"/>
+ <param name="downRampTime" value="30000"/>
+ <param name="removeBinFiles" value="true"/>
+ <param name="MON_FREQUENCY" value="1" />
+ <param name="sarMonitor" value="false"/>
+ <param name="psMonitor" value="false"/>
+ <param name="iostatMonitor" value="true"/>
+ <param name="connectionTimeoutValue" value="300"/>
+ </rubbos-conf>
+
+ <apache-conf>
+ <param name="Timeout" value="5"/>
+ <param name="KeepAlive" value="Off"/>
+ <param name="MaxKeepAliveRequests" value="100"/>
+ <param name="ServerLimit" value="200"/>
+ <param name="ThreadLimit" value="300"/>
+ <param name="StartServers" value="1"/>
+ <param name="MaxClients" value="300"/>
+ <param name="MinSpareThreads" value="5"/>
+ <param name="MaxSpareThreads" value="50"/>
+ <param name="ThreadsPerChild" value="150"/>
+ <param name="MaxRequestsPerChild" value="0"/>
+ </apache-conf>
+
+ <tomcat-conf>
+ <param name="maxThreads" value="330"/>
+ <param name="minSpareThreads" value="5"/>
+ <param name="maxSpareThreads" value="50"/>
+ <param name="acceptCount" value="6000"/>
+ </tomcat-conf>
+
+ <cjdbc-conf>
+ <param name="initPoolSize" value="30"/>
+ <param name="minPoolSize" value="25"/>
+ <param name="maxPoolSize" value="90"/>
+ <param name="idleTimeout" value="30"/>
+ <param name="waitTimeout" value="10"/>
+ <param name="waitForCompletion" value="all"/>
+ <!-- "all" or "first", "first" is default" -->
+ <param name="loadBalancing" value="LeastPendingRequestsFirst"/>
+ <!-- "LeastPendingRequestsFirst" or "RoundRobin", "LeastPendingRequestsFirst" is default" -->
+ </cjdbc-conf>
+
+ <!--
+ <postgres-conf>
+ <param name="max_connections" value="150"/>
+ <param name="shared_buffers" value="24MB"/>
+ <param name="max_fsm_pages" value="153600"/>
+ <param name="checkpoint_segments" value="16"/>
+ </postgres-conf>
+ -->
+ <logging>
+ <param name="apacheResponseTime" value="false"/>
+ <param name="tomcatResponseTime" value="false"/>
+ <param name="cjdbcResponseTime" value="false"/>
+ <param name="mysqlResponseTime" value="false"/>
+ </logging>
+
+ </params>
+
+ <instance name="CONTROL" type="control_server">
+ <target>node1</target>
+ <action type="checkScp_exec" seq="1" template="../templates/DeployScript/check_scp.xsl" />
+ <action type="emulabConf_exec" seq="2" template="../templates/DeployScript/emulab_config.xsl" />
+ <action type="rubbos_exec" seq="250" template="../templates/DeployScript/RUBBOSexecution.xsl" />
+ </instance>
+
+ <instance name="BENCHMARK" type="benchmark_server">
+ <target>node2</target>
+ <action type="rubbos_install" seq="19" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="install" seq="21" template="../templates/DeployScript/RUBBOS_CLIENTinstall.xsl" />
+ <action type="configure" seq="104" template="../templates/DeployScript/RUBBOS_CLIENTconfigure.xsl" />
+ <action type="uninstall" seq="401" template="../templates/DeployScript/RUBBOS_CLIENTuninstall.xsl" />
+ <action type="rubbos_uninstall" seq="402" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ </instance>
+
+ <instance name="CLIENT1" type="client_server">
+ <target>node3</target>
+ <action type="rubbos_install" seq="20" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="install" seq="22" template="../templates/DeployScript/RUBBOS_CLIENTinstall.xsl" />
+ <action type="configure" seq="105" template="../templates/DeployScript/RUBBOS_CLIENTconfigure.xsl" />
+ <action type="uninstall" seq="403" template="../templates/DeployScript/RUBBOS_CLIENTuninstall.xsl" />
+ <action type="rubbos_uninstall" seq="404" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ </instance>
+
+ <instance name="CLIENT2" type="client_server">
+ <target>node4</target>
+ <action type="rubbos_install" seq="20" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="install" seq="22" template="../templates/DeployScript/RUBBOS_CLIENTinstall.xsl" />
+ <action type="configure" seq="105" template="../templates/DeployScript/RUBBOS_CLIENTconfigure.xsl" />
+ <action type="uninstall" seq="403" template="../templates/DeployScript/RUBBOS_CLIENTuninstall.xsl" />
+ <action type="rubbos_uninstall" seq="404" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ </instance>
+
+ <instance name="CLIENT3" type="client_server">
+ <target>node5</target>
+ <action type="rubbos_install" seq="20" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="install" seq="22" template="../templates/DeployScript/RUBBOS_CLIENTinstall.xsl" />
+ <action type="configure" seq="105" template="../templates/DeployScript/RUBBOS_CLIENTconfigure.xsl" />
+ <action type="uninstall" seq="403" template="../templates/DeployScript/RUBBOS_CLIENTuninstall.xsl" />
+ <action type="rubbos_uninstall" seq="404" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ </instance>
+
+ <instance name="CLIENT4" type="client_server">
+ <target>node6</target>
+ <action type="rubbos_install" seq="20" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="install" seq="22" template="../templates/DeployScript/RUBBOS_CLIENTinstall.xsl" />
+ <action type="configure" seq="105" template="../templates/DeployScript/RUBBOS_CLIENTconfigure.xsl" />
+ <action type="uninstall" seq="403" template="../templates/DeployScript/RUBBOS_CLIENTuninstall.xsl" />
+ <action type="rubbos_uninstall" seq="404" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ </instance>
+
+ <instance name="HTTPD" type="web_server">
+ <target>node7</target>
+ <action type="install" seq="14" template="../templates/DeployScript/WEBinstall.xsl" />
+ <action type="rubbos_install" seq="18" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="configure" seq="103" template="../templates/DeployScript/WEBconfigure.xsl" />
+ <action type="ignition" seq="204" template="../templates/DeployScript/WEBignition.xsl" />
+ <action type="stop" seq="301" template="../templates/DeployScript/WEBstop.xsl" />
+ <action type="rubbos_uninstall" seq="405" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ <action type="uninstall" seq="406" template="../templates/DeployScript/WEBuninstall.xsl" />
+ </instance>
+
+ <instance name="TOMCAT1" type="app_server">
+ <target>node8</target>
+ <action type="install" seq="13" template="../templates/DeployScript/TOMCATinstall.xsl"/>
+ <action type="rubbos_install" seq="17" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="configure" seq="102" template="../templates/DeployScript/TOMCATconfigure.xsl" />
+ <action type="rubbosSL_configure" seq="106" template="../templates/DeployScript/RUBBOS_SERVLETconfigure.xsl" />
+ <action type="ignition" seq="203" template="../templates/DeployScript/TOMCATignition.xsl" />
+ <action type="stop" seq="302" template="../templates/DeployScript/TOMCATstop.xsl" />
+ <action type="rubbos_uninstall" seq="407" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ <action type="uninstall" seq="408" template="../templates/DeployScript/TOMCATuninstall.xsl" />
+ </instance>
+
+ <!--
+ <instance name="TOMCAT2" type="app_server">
+ <target>node9</target>
+ <action type="install" seq="13" template="../templates/DeployScript/TOMCATinstall.xsl"/>
+ <action type="rubbos_install" seq="17" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="configure" seq="102" template="../templates/DeployScript/TOMCATconfigure.xsl" />
+ <action type="rubbosSL_configure" seq="106" template="../templates/DeployScript/RUBBOS_SERVLETconfigure.xsl" />
+ <action type="ignition" seq="203" template="../templates/DeployScript/TOMCATignition.xsl" />
+ <action type="stop" seq="302" template="../templates/DeployScript/TOMCATstop.xsl" />
+ <action type="rubbos_uninstall" seq="407" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ <action type="uninstall" seq="408" template="../templates/DeployScript/TOMCATuninstall.xsl" />
+ </instance>
+
+ <instance name="CJDBC" type="cjdbc_server">
+ <swname>CJDBC_Controller</swname>
+ <target>node10</target>
+ <action type="install" seq="12" template="../templates/DeployScript/CJDBC_CONTROLLERinstall.xsl" />
+ <action type="rubbos_install" seq="16" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="ignition" seq="202" template="../templates/DeployScript/CJDBC_CONTROLLERignition.xsl" />
+ <action type="stop" seq="303" template="../templates/DeployScript/CJDBC_CONTROLLERstop.xsl" />
+ <action type="rubbos_uninstall" seq="409" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ <action type="uninstall" seq="410" template="../templates/DeployScript/CJDBC_CONTROLLERuninstall.xsl" />
+ </instance>
+ -->
+
+ <instance name="MYSQL1" type="db_server">
+ <target>node9</target>
+ <action type="install" seq="11" template="../templates/DeployScript/MYSQLinstall.xsl" />
+ <action type="rubbos_install" seq="15" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="configure" seq="101" template="../templates/DeployScript/MYSQLconfigure.xsl" />
+ <action type="reset" seq="150" template="../templates/DeployScript/MYSQLreset.xsl" />
+ <action type="ignition" seq="201" template="../templates/DeployScript/MYSQLignition.xsl" />
+ <action type="stop" seq="304" template="../templates/DeployScript/MYSQLstop.xsl" />
+ <action type="rubbos_uninstall" seq="411" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ <action type="uninstall" seq="412" template="../templates/DeployScript/MYSQLuninstall.xsl" />
+ </instance>
+ <!--
+ <instance name="MYSQL2" type="db_server">
+ <target>node12</target>
+ <action type="install" seq="11" template="../templates/DeployScript/MYSQLinstall.xsl" />
+ <action type="rubbos_install" seq="15" template="../templates/DeployScript/RUBBOSinstall.xsl" />
+ <action type="configure" seq="101" template="../templates/DeployScript/MYSQLconfigure.xsl" />
+ <action type="reset" seq="150" template="../templates/DeployScript/MYSQLreset.xsl" />
+ <action type="ignition" seq="201" template="../templates/DeployScript/MYSQLignition.xsl" />
+ <action type="stop" seq="304" template="../templates/DeployScript/MYSQLstop.xsl" />
+ <action type="rubbos_uninstall" seq="411" template="../templates/DeployScript/RUBBOSuninstall.xsl" />
+ <action type="uninstall" seq="412" template="../templates/DeployScript/MYSQLuninstall.xsl" />
+ </instance>
+ -->
+</instances>
+
+</xtbl>
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/httpd.conf b/testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/httpd.conf
new file mode 100644
index 00000000..819bfa63
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/httpd.conf
@@ -0,0 +1,1076 @@
+
+#
+# Based upon the NCSA server configuration files originally by Rob McCool.
+#
+# This is the main Apache server configuration file. It contains the
+# configuration directives that give the server its instructions.
+# See <URL:http://httpd.apache.org/docs-2.0/> for detailed information about
+# the directives.
+#
+# Do NOT simply read the instructions in here without understanding
+# what they do. They're here only as hints or reminders. If you are unsure
+# consult the online docs. You have been warned.
+#
+# The configuration directives are grouped into three basic sections:
+# 1. Directives that control the operation of the Apache server process as a
+# whole (the 'global environment').
+# 2. Directives that define the parameters of the 'main' or 'default' server,
+# which responds to requests that aren't handled by a virtual host.
+# These directives also provide default values for the settings
+# of all virtual hosts.
+# 3. Settings for virtual hosts, which allow Web requests to be sent to
+# different IP addresses or hostnames and have them handled by the
+# same Apache server process.
+#
+# Configuration and logfile names: If the filenames you specify for many
+# of the server's control files begin with "/" (or "drive:/" for Win32), the
+# server will use that explicit path. If the filenames do *not* begin
+# with "/", the value of ServerRoot is prepended -- so "logs/foo.log"
+# with ServerRoot set to "/mnt/elba/rubbos/apache2" will be interpreted by the
+# server as "/mnt/elba/rubbos/apache2/logs/foo.log".
+#
+
+### Section 1: Global Environment
+#
+# The directives in this section affect the overall operation of Apache,
+# such as the number of concurrent requests it can handle or where it
+# can find its configuration files.
+#
+
+#
+# ServerRoot: The top of the directory tree under which the server's
+# configuration, error, and log files are kept.
+#
+# NOTE! If you intend to place this on an NFS (or otherwise network)
+# mounted filesystem then please read the LockFile documentation (available
+# at <URL:http://httpd.apache.org/docs-2.0/mod/mpm_common.html#lockfile>);
+# you will save yourself a lot of trouble.
+#
+# Do NOT add a slash at the end of the directory path.
+#
+#ServerRoot "/mnt/elba/rubbos/apache2"
+ServerRoot "/bottlenecks/rubbos/app/apache2"
+
+#
+# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
+#
+<IfModule !mpm_winnt.c>
+<IfModule !mpm_netware.c>
+#LockFile logs/accept.lock
+</IfModule>
+</IfModule>
+
+#
+# ScoreBoardFile: File used to store internal server process information.
+# If unspecified (the default), the scoreboard will be stored in an
+# anonymous shared memory segment, and will be unavailable to third-party
+# applications.
+# If specified, ensure that no two invocations of Apache share the same
+# scoreboard file. The scoreboard file MUST BE STORED ON A LOCAL DISK.
+#
+<IfModule !mpm_netware.c>
+<IfModule !perchild.c>
+#ScoreBoardFile logs/apache_runtime_status
+</IfModule>
+</IfModule>
+
+
+#
+# PidFile: The file in which the server should record its process
+# identification number when it starts.
+#
+<IfModule !mpm_netware.c>
+PidFile logs/httpd.pid
+</IfModule>
+
+#
+# Timeout: The number of seconds before receives and sends time out.
+#
+Timeout 5
+
+#
+# KeepAlive: Whether or not to allow persistent connections (more than
+# one request per connection). Set to "Off" to deactivate.
+#
+#KeepAlive On
+KeepAlive Off
+
+#
+# MaxKeepAliveRequests: The maximum number of requests to allow
+# during a persistent connection. Set to 0 to allow an unlimited amount.
+# We recommend you leave this number high, for maximum performance.
+#
+MaxKeepAliveRequests 100
+
+#
+# KeepAliveTimeout: Number of seconds to wait for the next request from the
+# same client on the same connection.
+#
+KeepAliveTimeout 15
+
+##
+## Server-Pool Size Regulation (MPM specific)
+##
+
+# prefork MPM
+# StartServers: number of server processes to start
+# MinSpareServers: minimum number of server processes which are kept spare
+# MaxSpareServers: maximum number of server processes which are kept spare
+# MaxClients: maximum number of server processes allowed to start
+# MaxRequestsPerChild: maximum number of requests a server process serves
+<IfModule prefork.c>
+StartServers 5
+MinSpareServers 5
+MaxSpareServers 10
+ServerLimit 4000
+MaxClients 4000
+MaxRequestsPerChild 0
+</IfModule>
+
+# worker MPM
+# StartServers: initial number of server processes to start
+# MaxClients: maximum number of simultaneous client connections
+# MinSpareThreads: minimum number of worker threads which are kept spare
+# MaxSpareThreads: maximum number of worker threads which are kept spare
+# ThreadsPerChild: constant number of worker threads in each server process
+# MaxRequestsPerChild: maximum number of requests a server process serves
+<IfModule worker.c>
+ServerLimit 200
+ThreadLimit 300
+StartServers 1
+MaxClients 300
+MinSpareThreads 5
+MaxSpareThreads 50
+ThreadsPerChild 150
+MaxRequestsPerChild 0
+</IfModule>
+
+# perchild MPM
+# NumServers: constant number of server processes
+# StartThreads: initial number of worker threads in each server process
+# MinSpareThreads: minimum number of worker threads which are kept spare
+# MaxSpareThreads: maximum number of worker threads which are kept spare
+# MaxThreadsPerChild: maximum number of worker threads in each server process
+# MaxRequestsPerChild: maximum number of connections per server process
+<IfModule perchild.c>
+NumServers 5
+StartThreads 5
+MinSpareThreads 5
+MaxSpareThreads 10
+MaxThreadsPerChild 20
+MaxRequestsPerChild 0
+</IfModule>
+
+# WinNT MPM
+# ThreadsPerChild: constant number of worker threads in the server process
+# MaxRequestsPerChild: maximum number of requests a server process serves
+<IfModule mpm_winnt.c>
+ThreadsPerChild 250
+MaxRequestsPerChild 0
+</IfModule>
+
+# BeOS MPM
+# StartThreads: how many threads do we initially spawn?
+# MaxClients: max number of threads we can have (1 thread == 1 client)
+# MaxRequestsPerThread: maximum number of requests each thread will process
+<IfModule beos.c>
+StartThreads 10
+MaxClients 50
+MaxRequestsPerThread 10000
+</IfModule>
+
+# NetWare MPM
+# ThreadStackSize: Stack size allocated for each worker thread
+# StartThreads: Number of worker threads launched at server startup
+# MinSpareThreads: Minimum number of idle threads, to handle request spikes
+# MaxSpareThreads: Maximum number of idle threads
+# MaxThreads: Maximum number of worker threads alive at the same time
+# MaxRequestsPerChild: Maximum number of requests a thread serves. It is
+# recommended that the default value of 0 be set for this
+# directive on NetWare. This will allow the thread to
+# continue to service requests indefinitely.
+<IfModule mpm_netware.c>
+ThreadStackSize 65536
+StartThreads 250
+MinSpareThreads 25
+MaxSpareThreads 250
+MaxThreads 1000
+MaxRequestsPerChild 0
+MaxMemFree 100
+</IfModule>
+
+# OS/2 MPM
+# StartServers: Number of server processes to maintain
+# MinSpareThreads: Minimum number of idle threads per process,
+# to handle request spikes
+# MaxSpareThreads: Maximum number of idle threads per process
+# MaxRequestsPerChild: Maximum number of connections per server process
+<IfModule mpmt_os2.c>
+StartServers 2
+MinSpareThreads 5
+MaxSpareThreads 10
+MaxRequestsPerChild 0
+</IfModule>
+
+#
+# Listen: Allows you to bind Apache to specific IP addresses and/or
+# ports, instead of the default. See also the <VirtualHost>
+# directive.
+#
+# Change this to Listen on specific IP addresses as shown below to
+# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
+#
+#Listen 12.34.56.78:80
+
+Listen 8000
+
+#
+# Dynamic Shared Object (DSO) Support
+#
+# To be able to use the functionality of a module which was built as a DSO you
+# have to place corresponding `LoadModule' lines at this location so the
+# directives contained in it are actually available _before_ they are used.
+# Statically compiled modules (those listed by `httpd -l') do not need
+# to be loaded here.
+#
+# Example:
+# LoadModule foo_module modules/mod_foo.so
+#
+
+#
+# ExtendedStatus controls whether Apache will generate "full" status
+# information (ExtendedStatus On) or just basic information (ExtendedStatus
+# Off) when the "server-status" handler is called. The default is Off.
+#
+#ExtendedStatus On
+
+### Section 2: 'Main' server configuration
+#
+# The directives in this section set up the values used by the 'main'
+# server, which responds to any requests that aren't handled by a
+# <VirtualHost> definition. These values also provide defaults for
+# any <VirtualHost> containers you may define later in the file.
+#
+# All of these directives may appear inside <VirtualHost> containers,
+# in which case these default settings will be overridden for the
+# virtual host being defined.
+#
+
+<IfModule !mpm_winnt.c>
+<IfModule !mpm_netware.c>
+#
+# If you wish httpd to run as a different user or group, you must run
+# httpd as root initially and it will switch.
+#
+# User/Group: The name (or #number) of the user/group to run httpd as.
+# . On SCO (ODT 3) use "User nouser" and "Group nogroup".
+# . On HPUX you may not be able to use shared memory as nobody, and the
+# suggested workaround is to create a user www and use that user.
+# NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET)
+# when the value of (unsigned)Group is above 60000;
+# don't use Group #-1 on these systems!
+#
+User apache
+Group apache
+</IfModule>
+</IfModule>
+
+#
+# ServerAdmin: Your address, where problems with the server should be
+# e-mailed. This address appears on some server-generated pages, such
+# as error documents. e.g. admin@your-domain.com
+#
+ServerAdmin you@example.com
+
+#
+# ServerName gives the name and port that the server uses to identify itself.
+# This can often be determined automatically, but we recommend you specify
+# it explicitly to prevent problems during startup.
+#
+# If this is not set to valid DNS name for your host, server-generated
+# redirections will not work. See also the UseCanonicalName directive.
+#
+# If your host doesn't have a registered DNS name, enter its IP address here.
+# You will have to access it by its address anyway, and this will make
+# redirections work in a sensible way.
+#
+#ServerName www.example.com:80
+
+#
+# UseCanonicalName: Determines how Apache constructs self-referencing
+# URLs and the SERVER_NAME and SERVER_PORT variables.
+# When set "Off", Apache will use the Hostname and Port supplied
+# by the client. When set "On", Apache will use the value of the
+# ServerName directive.
+#
+UseCanonicalName Off
+
+#
+# DocumentRoot: The directory out of which you will serve your
+# documents. By default, all requests are taken from this directory, but
+# symbolic links and aliases may be used to point to other locations.
+#
+#DocumentRoot "/mnt/elba/rubbos/apache2/htdocs"
+DocumentRoot "/bottlenecks/rubbos/app/apache2/htdocs"
+
+#
+# Each directory to which Apache has access can be configured with respect
+# to which services and features are allowed and/or disabled in that
+# directory (and its subdirectories).
+#
+# First, we configure the "default" to be a very restrictive set of
+# features.
+#
+<Directory />
+ Options FollowSymLinks
+ AllowOverride None
+</Directory>
+
+#
+# Note that from this point forward you must specifically allow
+# particular features to be enabled - so if something's not working as
+# you might expect, make sure that you have specifically enabled it
+# below.
+#
+
+#
+# This should be changed to whatever you set DocumentRoot to.
+#
+<Directory "/bottlenecks/rubbos/app/apache2/htdocs">
+
+#
+# Possible values for the Options directive are "None", "All",
+# or any combination of:
+# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
+#
+# Note that "MultiViews" must be named *explicitly* --- "Options All"
+# doesn't give it to you.
+#
+# The Options directive is both complicated and important. Please see
+# http://httpd.apache.org/docs-2.0/mod/core.html#options
+# for more information.
+#
+ Options Indexes FollowSymLinks
+
+#
+# AllowOverride controls what directives may be placed in .htaccess files.
+# It can be "All", "None", or any combination of the keywords:
+# Options FileInfo AuthConfig Limit
+#
+ AllowOverride None
+
+#
+# Controls who can get stuff from this server.
+#
+ Order allow,deny
+ Allow from all
+
+</Directory>
+
+#
+# UserDir: The name of the directory that is appended onto a user's home
+# directory if a ~user request is received.
+#
+UserDir public_html
+
+#
+# Control access to UserDir directories. The following is an example
+# for a site where these directories are restricted to read-only.
+#
+#<Directory /home/*/public_html>
+# AllowOverride FileInfo AuthConfig Limit Indexes
+# Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
+# <Limit GET POST OPTIONS PROPFIND>
+# Order allow,deny
+# Allow from all
+# </Limit>
+# <LimitExcept GET POST OPTIONS PROPFIND>
+# Order deny,allow
+# Deny from all
+# </LimitExcept>
+#</Directory>
+
+#
+# DirectoryIndex: sets the file that Apache will serve if a directory
+# is requested.
+#
+# The index.html.var file (a type-map) is used to deliver content-
+# negotiated documents. The MultiViews Option can be used for the
+# same purpose, but it is much slower.
+#
+DirectoryIndex index.html index.html.var
+
+#
+# AccessFileName: The name of the file to look for in each directory
+# for additional configuration directives. See also the AllowOverride
+# directive.
+#
+AccessFileName .htaccess
+
+#
+# The following lines prevent .htaccess and .htpasswd files from being
+# viewed by Web clients.
+#
+<Files ~ "^\.ht">
+ Order allow,deny
+ Deny from all
+</Files>
+
+#
+# TypesConfig describes where the mime.types file (or equivalent) is
+# to be found.
+#
+TypesConfig conf/mime.types
+
+#
+# DefaultType is the default MIME type the server will use for a document
+# if it cannot otherwise determine one, such as from filename extensions.
+# If your server contains mostly text or HTML documents, "text/plain" is
+# a good value. If most of your content is binary, such as applications
+# or images, you may want to use "application/octet-stream" instead to
+# keep browsers from trying to display binary files as though they are
+# text.
+#
+DefaultType text/plain
+
+#
+# The mod_mime_magic module allows the server to use various hints from the
+# contents of the file itself to determine its type. The MIMEMagicFile
+# directive tells the module where the hint definitions are located.
+#
+<IfModule mod_mime_magic.c>
+ MIMEMagicFile conf/magic
+</IfModule>
+
+#
+# HostnameLookups: Log the names of clients or just their IP addresses
+# e.g., www.apache.org (on) or 204.62.129.132 (off).
+# The default is off because it'd be overall better for the net if people
+# had to knowingly turn this feature on, since enabling it means that
+# each client request will result in AT LEAST one lookup request to the
+# nameserver.
+#
+HostnameLookups Off
+
+#
+# EnableMMAP: Control whether memory-mapping is used to deliver
+# files (assuming that the underlying OS supports it).
+# The default is on; turn this off if you serve from NFS-mounted
+# filesystems. On some systems, turning it off (regardless of
+# filesystem) can improve performance; for details, please see
+# http://httpd.apache.org/docs-2.0/mod/core.html#enablemmap
+#
+#EnableMMAP off
+
+#
+# EnableSendfile: Control whether the sendfile kernel support is
+# used to deliver files (assuming that the OS supports it).
+# The default is on; turn this off if you serve from NFS-mounted
+# filesystems. Please see
+# http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile
+#
+#EnableSendfile off
+
+#
+# ErrorLog: The location of the error log file.
+# If you do not specify an ErrorLog directive within a <VirtualHost>
+# container, error messages relating to that virtual host will be
+# logged here. If you *do* define an error logfile for a <VirtualHost>
+# container, that host's errors will be logged there and not here.
+#
+ErrorLog logs/error_log
+
+#
+# LogLevel: Control the number of messages logged to the error_log.
+# Possible values include: debug, info, notice, warn, error, crit,
+# alert, emerg.
+#
+LogLevel warn
+
+#
+# The following directives define some format nicknames for use with
+# a CustomLog directive (see below).
+#
+LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
+LogFormat "%h %l %u %t \"%r\" %>s %b" common
+LogFormat "%{Referer}i -> %U" referer
+LogFormat "%{User-agent}i" agent
+
+# You need to enable mod_logio.c to use %I and %O
+#LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
+
+#
+# The location and format of the access logfile (Common Logfile Format).
+# If you do not define any access logfiles within a <VirtualHost>
+# container, they will be logged here. Contrariwise, if you *do*
+# define per-<VirtualHost> access logfiles, transactions will be
+# logged therein and *not* in this file.
+#
+CustomLog logs/access_log common
+
+#
+# If you would like to have agent and referer logfiles, uncomment the
+# following directives.
+#
+#CustomLog logs/referer_log referer
+#CustomLog logs/agent_log agent
+
+#
+# If you prefer a single logfile with access, agent, and referer information
+# (Combined Logfile Format) you can use the following directive.
+#
+#CustomLog logs/access_log combined
+
+#
+# ServerTokens
+# This directive configures what you return as the Server HTTP response
+# Header. The default is 'Full' which sends information about the OS-Type
+# and compiled in modules.
+# Set to one of: Full | OS | Minor | Minimal | Major | Prod
+# where Full conveys the most information, and Prod the least.
+#
+ServerTokens Full
+
+#
+# Optionally add a line containing the server version and virtual host
+# name to server-generated pages (internal error documents, FTP directory
+# listings, mod_status and mod_info output etc., but not CGI generated
+# documents or custom error documents).
+# Set to "EMail" to also include a mailto: link to the ServerAdmin.
+# Set to one of: On | Off | EMail
+#
+ServerSignature On
+
+#
+# Aliases: Add here as many aliases as you need (with no limit). The format is
+# Alias fakename realname
+#
+# Note that if you include a trailing / on fakename then the server will
+# require it to be present in the URL. So "/icons" isn't aliased in this
+# example, only "/icons/". If the fakename is slash-terminated, then the
+# realname must also be slash terminated, and if the fakename omits the
+# trailing slash, the realname must also omit it.
+#
+# We include the /icons/ alias for FancyIndexed directory listings. If you
+# do not use FancyIndexing, you may comment this out.
+#
+Alias /icons/ "/bottlenecks/rubbos/app/apache2/icons/"
+
+<Directory "/bottlenecks/rubbos/app/apache2/icons">
+ Options Indexes MultiViews
+ AllowOverride None
+ Order allow,deny
+ Allow from all
+</Directory>
+
+#
+# This should be changed to the ServerRoot/manual/. The alias provides
+# the manual, even if you choose to move your DocumentRoot. You may comment
+# this out if you do not care for the documentation.
+#
+AliasMatch ^/manual(?:/(?:de|en|es|fr|ja|ko|ru))?(/.*)?$ "/bottlenecks/rubbos/app/apache2/manual$1"
+
+<Directory "/bottlenecks/rubbos/app/apache2/manual">
+ Options Indexes
+ AllowOverride None
+ Order allow,deny
+ Allow from all
+
+ <Files *.html>
+ SetHandler type-map
+ </Files>
+
+ SetEnvIf Request_URI ^/manual/(de|en|es|fr|ja|ko|ru)/ prefer-language=$1
+ RedirectMatch 301 ^/manual(?:/(de|en|es|fr|ja|ko|ru)){2,}(/.*)?$ /manual/$1$2
+</Directory>
+
+#
+# ScriptAlias: This controls which directories contain server scripts.
+# ScriptAliases are essentially the same as Aliases, except that
+# documents in the realname directory are treated as applications and
+# run by the server when requested rather than as documents sent to the client.
+# The same rules about trailing "/" apply to ScriptAlias directives as to
+# Alias.
+#
+ScriptAlias /cgi-bin/ "/bottlenecks/rubbos/app/apache2/cgi-bin/"
+
+<IfModule mod_cgid.c>
+#
+# Additional to mod_cgid.c settings, mod_cgid has Scriptsock <path>
+# for setting UNIX socket for communicating with cgid.
+#
+#Scriptsock logs/cgisock
+</IfModule>
+
+#
+# "/mnt/elba/rubbos/apache2/cgi-bin" should be changed to whatever your ScriptAliased
+# CGI directory exists, if you have that configured.
+#
+<Directory "/bottlenecks/rubbos/app/apache2/cgi-bin">
+ AllowOverride None
+ Options None
+ Order allow,deny
+ Allow from all
+</Directory>
+
+#
+# Redirect allows you to tell clients about documents which used to exist in
+# your server's namespace, but do not anymore. This allows you to tell the
+# clients where to look for the relocated document.
+# Example:
+# Redirect permanent /foo http://www.example.com/bar
+
+#
+# Directives controlling the display of server-generated directory listings.
+#
+
+#
+# IndexOptions: Controls the appearance of server-generated directory
+# listings.
+#
+IndexOptions FancyIndexing VersionSort
+
+#
+# AddIcon* directives tell the server which icon to show for different
+# files or filename extensions. These are only displayed for
+# FancyIndexed directories.
+#
+AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
+
+AddIconByType (TXT,/icons/text.gif) text/*
+AddIconByType (IMG,/icons/image2.gif) image/*
+AddIconByType (SND,/icons/sound2.gif) audio/*
+AddIconByType (VID,/icons/movie.gif) video/*
+
+AddIcon /icons/binary.gif .bin .exe
+AddIcon /icons/binhex.gif .hqx
+AddIcon /icons/tar.gif .tar
+AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
+AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
+AddIcon /icons/a.gif .ps .ai .eps
+AddIcon /icons/layout.gif .html .shtml .htm .pdf
+AddIcon /icons/text.gif .txt
+AddIcon /icons/c.gif .c
+AddIcon /icons/p.gif .pl .py
+AddIcon /icons/f.gif .for
+AddIcon /icons/dvi.gif .dvi
+AddIcon /icons/uuencoded.gif .uu
+AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
+AddIcon /icons/tex.gif .tex
+AddIcon /icons/bomb.gif core
+
+AddIcon /icons/back.gif ..
+AddIcon /icons/hand.right.gif README
+AddIcon /icons/folder.gif ^^DIRECTORY^^
+AddIcon /icons/blank.gif ^^BLANKICON^^
+
+#
+# DefaultIcon is which icon to show for files which do not have an icon
+# explicitly set.
+#
+DefaultIcon /icons/unknown.gif
+
+#
+# AddDescription allows you to place a short description after a file in
+# server-generated indexes. These are only displayed for FancyIndexed
+# directories.
+# Format: AddDescription "description" filename
+#
+#AddDescription "GZIP compressed document" .gz
+#AddDescription "tar archive" .tar
+#AddDescription "GZIP compressed tar archive" .tgz
+
+#
+# ReadmeName is the name of the README file the server will look for by
+# default, and append to directory listings.
+#
+# HeaderName is the name of a file which should be prepended to
+# directory indexes.
+ReadmeName README.html
+HeaderName HEADER.html
+
+#
+# IndexIgnore is a set of filenames which directory indexing should ignore
+# and not include in the listing. Shell-style wildcarding is permitted.
+#
+IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
+
+#
+# DefaultLanguage and AddLanguage allows you to specify the language of
+# a document. You can then use content negotiation to give a browser a
+# file in a language the user can understand.
+#
+# Specify a default language. This means that all data
+# going out without a specific language tag (see below) will
+# be marked with this one. You probably do NOT want to set
+# this unless you are sure it is correct for all cases.
+#
+# * It is generally better to not mark a page as
+# * being a certain language than marking it with the wrong
+# * language!
+#
+# DefaultLanguage nl
+#
+# Note 1: The suffix does not have to be the same as the language
+# keyword --- those with documents in Polish (whose net-standard
+# language code is pl) may wish to use "AddLanguage pl .po" to
+# avoid the ambiguity with the common suffix for perl scripts.
+#
+# Note 2: The example entries below illustrate that in some cases
+# the two character 'Language' abbreviation is not identical to
+# the two character 'Country' code for its country,
+# E.g. 'Danmark/dk' versus 'Danish/da'.
+#
+# Note 3: In the case of 'ltz' we violate the RFC by using a three char
+# specifier. There is 'work in progress' to fix this and get
+# the reference data for rfc1766 cleaned up.
+#
+# Catalan (ca) - Croatian (hr) - Czech (cs) - Danish (da) - Dutch (nl)
+# English (en) - Esperanto (eo) - Estonian (et) - French (fr) - German (de)
+# Greek-Modern (el) - Hebrew (he) - Italian (it) - Japanese (ja)
+# Korean (ko) - Luxembourgeois* (ltz) - Norwegian Nynorsk (nn)
+# Norwegian (no) - Polish (pl) - Portugese (pt)
+# Brazilian Portuguese (pt-BR) - Russian (ru) - Swedish (sv)
+# Simplified Chinese (zh-CN) - Spanish (es) - Traditional Chinese (zh-TW)
+#
+AddLanguage ca .ca
+AddLanguage cs .cz .cs
+AddLanguage da .dk
+AddLanguage de .de
+AddLanguage el .el
+AddLanguage en .en
+AddLanguage eo .eo
+AddLanguage es .es
+AddLanguage et .et
+AddLanguage fr .fr
+AddLanguage he .he
+AddLanguage hr .hr
+AddLanguage it .it
+AddLanguage ja .ja
+AddLanguage ko .ko
+AddLanguage ltz .ltz
+AddLanguage nl .nl
+AddLanguage nn .nn
+AddLanguage no .no
+AddLanguage pl .po
+AddLanguage pt .pt
+AddLanguage pt-BR .pt-br
+AddLanguage ru .ru
+AddLanguage sv .sv
+AddLanguage zh-CN .zh-cn
+AddLanguage zh-TW .zh-tw
+
+#
+# LanguagePriority allows you to give precedence to some languages
+# in case of a tie during content negotiation.
+#
+# Just list the languages in decreasing order of preference. We have
+# more or less alphabetized them here. You probably want to change this.
+#
+LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
+
+#
+# ForceLanguagePriority allows you to serve a result page rather than
+# MULTIPLE CHOICES (Prefer) [in case of a tie] or NOT ACCEPTABLE (Fallback)
+# [in case no accepted languages matched the available variants]
+#
+ForceLanguagePriority Prefer Fallback
+
+#
+# Commonly used filename extensions to character sets. You probably
+# want to avoid clashes with the language extensions, unless you
+# are good at carefully testing your setup after each change.
+# See http://www.iana.org/assignments/character-sets for the
+# official list of charset names and their respective RFCs.
+#
+AddCharset ISO-8859-1 .iso8859-1 .latin1
+AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
+AddCharset ISO-8859-3 .iso8859-3 .latin3
+AddCharset ISO-8859-4 .iso8859-4 .latin4
+AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru
+AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb
+AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk
+AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb
+AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk
+AddCharset ISO-2022-JP .iso2022-jp .jis
+AddCharset ISO-2022-KR .iso2022-kr .kis
+AddCharset ISO-2022-CN .iso2022-cn .cis
+AddCharset Big5 .Big5 .big5
+# For russian, more than one charset is used (depends on client, mostly):
+AddCharset WINDOWS-1251 .cp-1251 .win-1251
+AddCharset CP866 .cp866
+AddCharset KOI8-r .koi8-r .koi8-ru
+AddCharset KOI8-ru .koi8-uk .ua
+AddCharset ISO-10646-UCS-2 .ucs2
+AddCharset ISO-10646-UCS-4 .ucs4
+AddCharset UTF-8 .utf8
+
+# The set below does not map to a specific (iso) standard
+# but works on a fairly wide range of browsers. Note that
+# capitalization actually matters (it should not, but it
+# does for some browsers).
+#
+# See http://www.iana.org/assignments/character-sets
+# for a list of sorts. But browsers support few.
+#
+AddCharset GB2312 .gb2312 .gb
+AddCharset utf-7 .utf7
+AddCharset utf-8 .utf8
+AddCharset big5 .big5 .b5
+AddCharset EUC-TW .euc-tw
+AddCharset EUC-JP .euc-jp
+AddCharset EUC-KR .euc-kr
+AddCharset shift_jis .sjis
+
+#
+# AddType allows you to add to or override the MIME configuration
+# file mime.types for specific file types.
+#
+#AddType application/x-tar .tgz
+#
+# AddEncoding allows you to have certain browsers uncompress
+# information on the fly. Note: Not all browsers support this.
+# Despite the name similarity, the following Add* directives have nothing
+# to do with the FancyIndexing customization directives above.
+#
+#AddEncoding x-compress .Z
+#AddEncoding x-gzip .gz .tgz
+#
+# If the AddEncoding directives above are commented-out, then you
+# probably should define those extensions to indicate media types:
+#
+AddType application/x-compress .Z
+AddType application/x-gzip .gz .tgz
+
+#
+# AddHandler allows you to map certain file extensions to "handlers":
+# actions unrelated to filetype. These can be either built into the server
+# or added with the Action directive (see below)
+#
+# To use CGI scripts outside of ScriptAliased directories:
+# (You will also need to add "ExecCGI" to the "Options" directive.)
+#
+#AddHandler cgi-script .cgi
+
+#
+# For files that include their own HTTP headers:
+#
+#AddHandler send-as-is asis
+
+#
+# For server-parsed imagemap files:
+#
+#AddHandler imap-file map
+
+#
+# For type maps (negotiated resources):
+# (This is enabled by default to allow the Apache "It Worked" page
+# to be distributed in multiple languages.)
+#
+AddHandler type-map var
+
+#
+# Filters allow you to process content before it is sent to the client.
+#
+# To parse .shtml files for server-side includes (SSI):
+# (You will also need to add "Includes" to the "Options" directive.)
+#
+#AddType text/html .shtml
+#AddOutputFilter INCLUDES .shtml
+
+#
+# Action lets you define media types that will execute a script whenever
+# a matching file is called. This eliminates the need for repeated URL
+# pathnames for oft-used CGI file processors.
+# Format: Action media/type /cgi-script/location
+# Format: Action handler-name /cgi-script/location
+#
+
+#
+# Customizable error responses come in three flavors:
+# 1) plain text 2) local redirects 3) external redirects
+#
+# Some examples:
+#ErrorDocument 500 "The server made a boo boo."
+#ErrorDocument 404 /missing.html
+#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
+#ErrorDocument 402 http://www.example.com/subscription_info.html
+#
+
+#
+# Putting this all together, we can internationalize error responses.
+#
+# We use Alias to redirect any /error/HTTP_<error>.html.var response to
+# our collection of by-error message multi-language collections. We use
+# includes to substitute the appropriate text.
+#
+# You can modify the messages' appearance without changing any of the
+# default HTTP_<error>.html.var files by adding the line:
+#
+# Alias /error/include/ "/your/include/path/"
+#
+# which allows you to create your own set of files by starting with the
+# /mnt/elba/rubbos/apache2/error/include/ files and copying them to /your/include/path/,
+# even on a per-VirtualHost basis. The default include files will display
+# your Apache version number and your ServerAdmin email address regardless
+# of the setting of ServerSignature.
+#
+# The internationalized error documents require mod_alias, mod_include
+# and mod_negotiation. To activate them, uncomment the following 30 lines.
+
+# Alias /error/ "/mnt/elba/rubbos/apache2/error/"
+#
+# <Directory "/mnt/elba/rubbos/apache2/error">
+# AllowOverride None
+# Options IncludesNoExec
+# AddOutputFilter Includes html
+# AddHandler type-map var
+# Order allow,deny
+# Allow from all
+# LanguagePriority en cs de es fr it ja ko nl pl pt-br ro sv tr
+# ForceLanguagePriority Prefer Fallback
+# </Directory>
+#
+# ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
+# ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
+# ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
+# ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
+# ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
+# ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
+# ErrorDocument 410 /error/HTTP_GONE.html.var
+# ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
+# ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
+# ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
+# ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
+# ErrorDocument 415 /error/HTTP_UNSUPPORTED_MEDIA_TYPE.html.var
+# ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
+# ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
+# ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
+# ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
+# ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var
+
+
+#
+# The following directives modify normal HTTP response behavior to
+# handle known problems with browser implementations.
+#
+BrowserMatch "Mozilla/2" nokeepalive
+BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
+BrowserMatch "RealPlayer 4\.0" force-response-1.0
+BrowserMatch "Java/1\.0" force-response-1.0
+BrowserMatch "JDK/1\.0" force-response-1.0
+
+#
+# The following directive disables redirects on non-GET requests for
+# a directory that does not include the trailing slash. This fixes a
+# problem with Microsoft WebFolders which does not appropriately handle
+# redirects for folders with DAV methods.
+# Same deal with Apple's DAV filesystem and Gnome VFS support for DAV.
+#
+BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
+BrowserMatch "^WebDrive" redirect-carefully
+BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
+BrowserMatch "^gnome-vfs" redirect-carefully
+
+#
+# Allow server status reports generated by mod_status,
+# with the URL of http://servername/server-status
+# Change the ".example.com" to match your domain to enable.
+#
+#<Location /server-status>
+# SetHandler server-status
+# Order deny,allow
+# Deny from all
+# Allow from .example.com
+#</Location>
+
+#
+# Allow remote server configuration reports, with the URL of
+# http://servername/server-info (requires that mod_info.c be loaded).
+# Change the ".example.com" to match your domain to enable.
+#
+#<Location /server-info>
+# SetHandler server-info
+# Order deny,allow
+# Deny from all
+# Allow from .example.com
+#</Location>
+
+
+#
+# Bring in additional module-specific configurations
+#
+<IfModule mod_ssl.c>
+ Include conf/ssl.conf
+</IfModule>
+
+
+### Section 3: Virtual Hosts
+#
+# VirtualHost: If you want to maintain multiple domains/hostnames on your
+# machine you can setup VirtualHost containers for them. Most configurations
+# use only name-based virtual hosts so the server doesn't need to worry about
+# IP addresses. This is indicated by the asterisks in the directives below.
+#
+# Please see the documentation at
+# <URL:http://httpd.apache.org/docs-2.0/vhosts/>
+# for further details before you try to setup virtual hosts.
+#
+# You may use the command line option '-S' to verify your virtual host
+# configuration.
+
+#
+# Use name-based virtual hosting.
+#
+#NameVirtualHost *:80
+
+#
+# VirtualHost example:
+# Almost any Apache directive may go into a VirtualHost container.
+# The first VirtualHost section is used for requests without a known
+# server name.
+#
+#<VirtualHost *:80>
+# ServerAdmin webmaster@dummy-host.example.com
+# DocumentRoot /www/docs/dummy-host.example.com
+# ServerName dummy-host.example.com
+# ErrorLog logs/dummy-host.example.com-error_log
+# CustomLog logs/dummy-host.example.com-access_log common
+#</VirtualHost>
+
+
+
+LoadModule jk_module "/bottlenecks/rubbos/app/apache2/modules/mod_jk.so"
+
+# Where to find workers.properties
+JkWorkersFile /bottlenecks/rubbos/app/apache2/conf/workers.properties
+
+# Where to put jk logs
+JkLogFile /bottlenecks/rubbos/app/apache2/logs/mod_jk.log
+
+# Set the jk log level [debug/error/info]
+JkLogLevel info
+
+# Select the log format
+JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
+
+# JkOptions indicate to send SSL KEY SIZE,
+JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
+
+# JkRequestLogFormat set the request format
+JkRequestLogFormat "%w %V %T"
+
+# Globally deny access to the WEB-INF directory
+<LocationMatch '.*WEB-INF.*'>
+ AllowOverride None
+ deny from all
+</LocationMatch>
+
+
+JkMount /*/servlet/* worker1
+JkMount /*.jsp worker1
+#JkMount /rubbos worker1
+#JkMount /rubbos/* worker1
+
+
+ServerName localhost
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/workers.properties_template b/testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/workers.properties_template
new file mode 100644
index 00000000..313d4d64
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/apache_conf/workers.properties_template
@@ -0,0 +1,215 @@
+
+# workers.properties -
+#
+# This file provides jk derived plugins with the needed information to
+# connect to the different tomcat workers. Note that the distributed
+# version of this file requires modification before it is usable by a
+# plugin.
+#
+# As a general note, the characters $( and ) are used internally to define
+# macros. Do not use them in your own configuration!!!
+#
+# Whenever you see a set of lines such as:
+# x=value
+# y=$(x)\something
+#
+# the final value for y will be value\something
+#
+# Normaly all you will need to do is un-comment and modify the first three
+# properties, i.e. workers.tomcat_home, workers.java_home and ps.
+# Most of the configuration is derived from these.
+#
+# When you are done updating workers.tomcat_home, workers.java_home and ps
+# you should have 3 workers configured:
+#
+# - An ajp12 worker that connects to localhost:8007
+# - An ajp13 worker that connects to localhost:8009
+# - A jni inprocess worker.
+# - A load balancer worker
+#
+# However by default the plugins will only use the ajp12 worker. To have
+# the plugins use other workers you should modify the worker.list property.
+#
+#
+
+# OPTIONS ( very important for jni mode )
+
+#
+# workers.tomcat_home should point to the location where you
+# installed tomcat. This is where you have your conf, webapps and lib
+# directories.
+#
+#workers.tomcat_home=/mnt/elba/rubbos/apache-tomcat-5.5.17
+workers.tomcat_home=/bottlenecks/rubbos/app/apache-tomcat-5.5.17
+
+#
+# workers.java_home should point to your Java installation. Normally
+# you should have a bin and lib directories beneath it.
+#
+#workers.java_home=/mnt/elba/rubbos/jdk1.6.0_27
+workers.java_home=/bottlenecks/rubbos/app/jdk1.6.0_27
+
+#
+# You should configure your environment slash... ps=\ on NT and / on UNIX
+# and maybe something different elsewhere.
+#
+ps=/
+
+#
+#------ ADVANCED MODE ------------------------------------------------
+#---------------------------------------------------------------------
+#
+
+#
+#------ DEFAULT worket list ------------------------------------------
+#---------------------------------------------------------------------
+#
+#
+# The workers that your plugins should create and work with
+#
+# Add 'inprocess' if you want JNI connector
+worker.list=worker1
+# , inprocess
+
+
+worker.TOMCAT1.port=8009
+worker.TOMCAT1.host=REPLACE_TOMCAT1_HOST
+worker.TOMCAT1.type=ajp13
+worker.TOMCAT1.lbfactor=1
+
+
+#
+#------ DEFAULT ajp12 WORKER DEFINITION ------------------------------
+#---------------------------------------------------------------------
+#
+
+#
+# Defining a worker named ajp12 and of type ajp12
+# Note that the name and the type do not have to match.
+#
+#worker.ajp12.port=8007
+#worker.ajp12.host=localhost
+#worker.ajp12.type=ajp12
+#
+# Specifies the load balance factor when used with
+# a load balancing worker.
+# Note:
+# ----> lbfactor must be > 0
+# ----> Low lbfactor means less work done by the worker.
+#worker.ajp12.lbfactor=1
+
+#
+#------ DEFAULT ajp13 WORKER DEFINITION ------------------------------
+#---------------------------------------------------------------------
+#
+
+#
+# Defining a worker named ajp13 and of type ajp13
+# Note that the name and the type do not have to match.
+#
+#worker.ajp13.port=8009
+#worker.ajp13.host=node60.rubbostest.Infosphere.emulab.net
+#worker.ajp13.type=ajp13
+#
+# Specifies the load balance factor when used with
+# a load balancing worker.
+# Note:
+# ----> lbfactor must be > 0
+# ----> Low lbfactor means less work done by the worker.
+#worker.ajp13.lbfactor=1
+
+#
+# Specify the size of the open connection cache.
+#worker.ajp13.cachesize
+
+#
+#------ DEFAULT LOAD BALANCER WORKER DEFINITION ----------------------
+#---------------------------------------------------------------------
+#
+
+#
+# The router (type lb) workers perform wighted round-robin
+# load balancing with sticky sessions.
+# Note:
+# ----> If a worker dies, the load balancer will check its state
+# once in a while. Until then all work is redirected to peer
+# workers.
+worker.worker1.type=lb
+worker.worker1.balance_workers=TOMCAT1
+worker.worker1.sticky_session=True
+worker.worker1.method=Session
+
+#
+#------ DEFAULT JNI WORKER DEFINITION---------------------------------
+#---------------------------------------------------------------------
+#
+
+#
+# Defining a worker named inprocess and of type jni
+# Note that the name and the type do not have to match.
+#
+worker.inprocess.type=jni
+
+#
+#------ CLASSPATH DEFINITION -----------------------------------------
+#---------------------------------------------------------------------
+#
+
+#
+# Additional class path components.
+#
+worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)tomcat.jar
+
+#
+# Setting the command line for tomcat.
+# Note: The cmd_line string may not contain spaces.
+#
+worker.inprocess.cmd_line=start
+
+# Not needed, but can be customized.
+#worker.inprocess.cmd_line=-config
+#worker.inprocess.cmd_line=$(workers.tomcat_home)$(ps)conf$(ps)server.xml
+#worker.inprocess.cmd_line=-home
+#worker.inprocess.cmd_line=$(workers.tomcat_home)
+
+#
+# The JVM that we are about to use
+#
+# This is for Java2
+#
+# Windows
+#worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll
+# IBM JDK1.3
+#worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)libjvm.so
+# Unix - Sun VM or blackdown
+#worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)lib$(ps)i386$(ps)classic$(ps)libjvm.so
+worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)lib$(ps)i386$(ps)server$(ps)libjvm.so
+
+#
+# And this is for jdk1.1.X
+#
+#worker.inprocess.jvm_lib=$(workers.java_home)$(ps)bin$(ps)javai.dll
+
+
+#
+# Setting the place for the stdout and stderr of tomcat
+#
+worker.inprocess.stdout=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stdout
+worker.inprocess.stderr=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stderr
+
+#
+# Setting the tomcat.home Java property
+#
+#worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)
+
+#
+# Java system properties
+#
+# worker.inprocess.sysprops=java.compiler=NONE
+# worker.inprocess.sysprops=myprop=mypropvalue
+
+#
+# Additional path components.
+#
+# worker.inprocess.ld_path=d:$(ps)SQLLIB$(ps)bin
+#
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/mysql_conf/my.cnf b/testsuites/rubbos/rubbos_scripts/1-1-1/mysql_conf/my.cnf
new file mode 100644
index 00000000..af273226
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/mysql_conf/my.cnf
@@ -0,0 +1,6 @@
+
+[client]
+port = 3306
+
+[mysqld]
+server-id=1
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/nsFile.txt b/testsuites/rubbos/rubbos_scripts/1-1-1/nsFile.txt
new file mode 100644
index 00000000..00c73f3d
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/nsFile.txt
@@ -0,0 +1,48 @@
+
+set ns [new Simulator]
+source tb_compat.tcl
+
+
+set node1 [$ns node]
+tb-set-node-os $node1 FC4-RUBBoS
+tb-set-hardware $node1 pc3000
+
+set node2 [$ns node]
+tb-set-node-os $node2 FC4-RUBBoS
+tb-set-hardware $node2 pc3000
+
+set node3 [$ns node]
+tb-set-node-os $node3 FC4-RUBBoS
+tb-set-hardware $node3 pc3000
+
+set node4 [$ns node]
+tb-set-node-os $node4 FC4-RUBBoS
+tb-set-hardware $node4 pc3000
+
+set node5 [$ns node]
+tb-set-node-os $node5 FC4-RUBBoS
+tb-set-hardware $node5 pc3000
+
+set node6 [$ns node]
+tb-set-node-os $node6 FC4-RUBBoS
+tb-set-hardware $node6 pc3000
+
+set node7 [$ns node]
+tb-set-node-os $node7 FC4-RUBBoS
+tb-set-hardware $node7 pc3000
+
+set node8 [$ns node]
+tb-set-node-os $node8 FC4-RUBBoS
+tb-set-hardware $node8 pc3000
+
+set node9 [$ns node]
+tb-set-node-os $node9 FC4-RUBBoS
+tb-set-hardware $node9 pc3000
+
+set lan1 [$ns make-lan "$node1 $node2 $node3 $node4 $node5 $node6 $node7 " 1000Mb 0ms]
+set lan2 [$ns make-lan "$node7 $node8 " 1000Mb 0ms]
+set lan4 [$ns make-lan "$node8 $node9 " 1000Mb 0ms]
+
+
+$ns rtproto Static
+$ns run
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Config.java b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Config.java
new file mode 100644
index 00000000..f84ded04
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Config.java
@@ -0,0 +1,34 @@
+package edu.rice.rubbos.servlets;
+
+public class Config
+{
+
+ /**
+ * Creates a new <code>Config</code> instance.
+ */
+ Config()
+ {
+ }
+
+
+ public static final String HTMLFilesPath = "/bottlenecks/rubbos/app/RUBBoS/Servlet_HTML";
+ public static final String[] DatabaseProperties = {"/bottlenecks/rubbos/app/RUBBoS/Servlets/mysql.properties"};
+ public static final int DatabasePropertiesSize = 1;
+
+ public static final int AboutMePoolSize = 10;
+ public static final int BrowseCategoriesPoolSize = 6;
+ public static final int BrowseRegionsPoolSize = 6;
+ public static final int BuyNowPoolSize = 4;
+ public static final int PutBidPoolSize = 8;
+ public static final int PutCommentPoolSize = 2;
+ public static final int RegisterItemPoolSize = 2;
+ public static final int RegisterUserPoolSize = 2;
+ public static final int SearchItemsByCategoryPoolSize = 15;
+ public static final int SearchItemsByRegionPoolSize = 20;
+ public static final int StoreBidPoolSize = 8;
+ public static final int StoreBuyNowPoolSize = 4;
+ public static final int StoreCommentPoolSize = 2;
+ public static final int ViewBidHistoryPoolSize = 4;
+ public static final int ViewItemPoolSize = 20;
+ public static final int ViewUserInfoPoolSize = 4;
+}
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Makefile b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Makefile
new file mode 100644
index 00000000..565b22be
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/Makefile
@@ -0,0 +1,80 @@
+
+
+###########################
+# RUBBoS Makefile #
+###########################
+
+include config.mk
+
+##############################
+# Environment variables #
+##############################
+
+JAVA = $(JAVA_HOME)/bin/java
+JAVAC = $(JAVA_HOME)/bin/javac
+JAVACOPTS = -deprecation
+JAVACC = $(JAVAC) $(JAVACOPTS)
+RMIC = $(JAVA_HOME)/bin/rmic
+RMIREGISTRY= $(JAVA_HOME)/bin/rmiregistry
+#CLASSPATH = .:$(J2EE_HOME)/lib/j2ee.jar:$(JAVA_HOME)/jre/lib/rt.jar:$TOMCATservlet.jar
+CLASSPATH = .:$(J2EE_HOME)/lib/j2ee.jar:$(JAVA_HOME)/jre/lib/rt.jar
+JAVADOC = $(JAVA_HOME)/javadoc
+
+
+#########################
+# Servlets version #
+#########################
+#ServletPrinter
+Servlets = Config TimeManagement BrowseCategories Auth RegisterUser RubbosHttpServlet BrowseRegions SearchItemsByCategory SearchItemsByRegion ViewItem ViewBidHistory ViewUserInfo SellItemForm RegisterItem PutCommentAuth PutComment StoreComment BuyNowAuth BuyNow StoreBuyNow PutBidAuth PutBid StoreBid AboutMe
+
+all_servlets_sources = $(addprefix edu/rice/rubbos/servlets/, $(addsuffix .java, $(Servlets)))
+all_servlets_obj = $(addprefix edu/rice/rubbos/servlets/, $(addsuffix .class, $(Servlets)))
+
+servlets: $(all_servlets_obj)
+
+clean_servlets:
+ rm -f edu/rice/rubbos/servlets/*.class
+
+####################
+# Client #
+####################
+
+ClientFiles = URLGenerator URLGeneratorPHP RUBBoSProperties Stats \
+ TransitionTable ClientEmulator UserSession
+
+all_client_sources = $(addprefix edu/rice/rubbos/client/, $(addsuffix .java, $(ClientFiles)))
+all_client_obj = $(addprefix edu/rice/rubbos/client/, $(addsuffix .class, $(ClientFiles))) edu/rice/rubbos/beans/TimeManagement.class
+
+client: $(all_client_obj)
+
+initDB:
+ ${JAVA} -classpath .:./database edu.rice.rubbos.client.InitDB ${PARAM}
+
+emulator:
+ ${JAVA} -classpath Client:Client/rubbos_client.jar:. -Xmx1300m -Dhttp.keepAlive=true -Dhttp.maxConnections=1000000 edu.rice.rubbos.client.ClientEmulator
+
+emulatorDebug:
+ ${JAVA} -classpath Client:Client/rubbos_client.jar:. -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n -Xmx1300m -Dhttp.keepAlive=true -Dhttp.maxConnections=1000000 edu.rice.rubbos.client.ClientEmulator
+
+
+############################
+# Global rules #
+############################
+
+
+all: beans ejb_servlets client javadoc flush_cache
+
+world: all servlets
+
+javadoc :
+ ${JAVADOC} -d ./doc/api -bootclasspath ${CLASSPATH} -version -author -windowtitle "RUBBoS API" -header "<b>RUBBoS (C)2001 Rice University/INRIA</b><br>" edu.rice.rubbos.beans edu.rice.rubbos.beans.servlets edu.rice.rubbos.client
+
+clean:
+ rm -f core edu/rice/rubbos/beans/*.class edu/rice/rubbos/beans/JOnAS* edu/rice/rubbos/beans/servlets/*.class edu/rice/rubbos/client/*.class edu/rice/rubbos/servlets/*.class
+
+%.class: %.java
+ ${JAVACC} -classpath ${CLASSPATH} $<
+
+flush_cache: bench/flush_cache.c
+ gcc bench/flush_cache.c -o bench/flush_cache
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.properties b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.properties
new file mode 100644
index 00000000..dc3fbaaa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.properties
@@ -0,0 +1,8 @@
+
+src = .
+dist =.
+classes.dir = ./build
+web.dir = ../Servlet_HTML
+
+j2ee = /bottlenecks/rubbos/app/j2sdkee1.3.1
+mysql_connector = ./mysql-connector-java-5.1.7-bin.jar
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.xml b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.xml
new file mode 100644
index 00000000..37472041
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/build.xml
@@ -0,0 +1,114 @@
+
+
+<project name="RUBBoS Servlets" default="dist" basedir=".">
+ <!-- RUBBoS Servlets Ant build file -->
+
+ <!-- set global properties for this build -->
+ <property file="../build.properties" />
+ <property name="servlets.html" value="../Servlet_HTML" />
+
+<!-- ====================================================================== -->
+<!-- Init -->
+<!-- ====================================================================== -->
+
+ <!-- init rule creates build directory -->
+ <target name="init">
+ <!-- Create the time stamp -->
+ <tstamp/>
+ <!-- Create the build directory structure used by compile -->
+ <mkdir dir="${classes.dir}"/>
+ </target>
+
+<!-- ====================================================================== -->
+<!-- Servlets -->
+<!-- ====================================================================== -->
+
+ <!-- The classpath to be used to compile -->
+ <path id="base.classpath">
+ <pathelement location="${classes.dir}" />
+ <fileset dir="${j2ee}/lib">
+ <include name="j2ee.jar"/>
+ </fileset>
+ </path>
+
+ <!-- Creates a jar file containing the servlets -->
+ <target name="jar" depends="init, compile">
+ <jar destfile="${dist}/rubbos_servlets.jar">
+ <fileset dir="${classes.dir}"
+ includes="edu/rice/rubbos/servlets/*.class"/>
+ </jar>
+ </target>
+
+ <!-- Create a war file-->
+ <target name="war" depends="init, compile, jar">
+ <copy file="${dist}/rubbos_servlets.jar" todir="${servlets.html}/WEB-INF/lib"/>
+ <copy file="${j2ee}/lib/j2ee.jar" todir="${servlets.html}/WEB-INF/lib"/>
+
+ <copy file="${mysql_connector}" todir="${servlets.html}/WEB-INF/lib"/>
+
+ <war destfile="${dist}/rubbos.war" webxml="${servlets.html}/WEB-INF/web.xml" basedir="${web.dir}">
+ <fileset dir="${classes.dir}"
+ includes="*" excludes="**/web.xml" />
+ </war>
+ </target>
+
+ <!-- Dist rule -->
+ <target name="dist" depends="init, compile, jar, war">
+ </target>
+
+ <!-- compile rule: Compile the beans and the servlets -->
+ <target name="compile" depends="init">
+ <javac srcdir="${src}"
+ includes="edu/rice/rubbos/servlets/*"
+ destdir="${classes.dir}"
+ classpath="${build.classpath}"
+ depend="yes"
+ deprecation="yes">
+ <classpath refid="base.classpath" />
+ </javac>
+ </target>
+
+<!-- ====================================================================== -->
+<!-- Javadoc -->
+<!-- ====================================================================== -->
+
+ <!-- Generate Javadoc documentation -->
+ <target name="doc">
+ <mkdir dir="docs/api"/>
+ <javadoc classpathref="base.classpath"
+ packagenames="edu.rice.rubbos.*.*"
+ sourcepath="."
+ defaultexcludes="yes"
+ destdir="docs/api"
+ author="true"
+ version="true"
+ use="true"
+ windowtitle="RUBBoS API">
+ <doctitle><![CDATA[<h1>RUBBoS API</h1>]]></doctitle>
+ <bottom><![CDATA[<i>Copyright &#169; 2004 - ObjectWeb Consortium - All Rights Reserved.</i>]]></bottom>
+ </javadoc>
+ </target>
+
+<!-- ====================================================================== -->
+<!-- Clean -->
+<!-- ====================================================================== -->
+
+ <target name="clean">
+ <!-- Delete the ${classes.dir} and ${dist} directory trees -->
+ <delete dir="${classes.dir}"/>
+ <delete>
+ <fileset dir="${dist}" includes="rubbos_servlets.jar"/>
+ </delete>
+ <delete>
+ <fileset dir="${dist}" includes="rubbos.war"/>
+ </delete>
+ <delete>
+ <fileset dir="edu" includes="**/*.class"/>
+ </delete>
+ </target>
+
+ <target name="clean-doc">
+ <delete dir="docs/api"/>
+ </target>
+</project>
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/config.mk b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/config.mk
new file mode 100644
index 00000000..9182da4d
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/config.mk
@@ -0,0 +1,32 @@
+
+##############################
+# Environment variables #
+##############################
+
+JAVA = $(JAVA_HOME)/bin/java
+JAVAC = $(JAVA_HOME)/bin/javac
+JAVACOPTS = -deprecation
+JAVACC = $(JAVAC) $(JAVACOPTS)
+RMIC = $(JAVA_HOME)/bin/rmic
+RMIREGISTRY= $(JAVA_HOME)/bin/rmiregistry
+CLASSPATH = .:$(J2EE_HOME)/lib/j2ee.jar:$(JAVA_HOME)/jre/lib/rt.jar:$(SERVLET_API_PATH)
+JAVADOC = $(JAVA_HOME)/bin/javadoc
+JAR = $(JAVA_HOME)/bin/jar
+
+GENIC = ${JONAS_ROOT}/bin/unix/GenIC
+
+MAKE = gmake
+CP = /bin/cp
+RM = /bin/rm
+MKDIR = /bin/mkdir
+
+
+# EJB server: supported values are jonas or jboss
+EJB_SERVER = jonas
+
+# DB server: supported values are MySQL or PostgreSQL
+DB_SERVER = MySQL
+
+%.class: %.java
+ ${JAVACC} -classpath ${CLASSPATH} $<
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/cpu_mem.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/cpu_mem.sh
new file mode 100644
index 00000000..069cf079
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/cpu_mem.sh
@@ -0,0 +1,100 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+cd -
+
+# delay inbetween snapshots
+
+delay=1
+
+# central host to send results to
+analysis_host=$BENCHMARK_HOST
+
+# monitoring start/end time in format YYYYmmddHHMMSS (20050920152059)
+start_time=$1
+end_time=$2
+
+# data filename suffix
+data_filename_suffix="`hostname`-${start_time}.data"
+
+# sar filename
+sar_filename=$RUBBOS_APP/sar-${data_filename_suffix}
+
+# iostat filename
+iostat_filename=$RUBBOS_APP/iostat-${data_filename_suffix}
+
+# ps filename
+ps_filename=$RUBBOS_APP/ps-${data_filename_suffix}
+
+# date command in predefined format
+date_cmd="date +%Y%m%d%H%M%S"
+date=`$date_cmd`
+
+# TEST MODE: start_time will be 2 seconds from launch, end time 5 seconds
+#start_time=`expr $date \+ 2`
+#end_time=`expr $date \+ 5`
+
+#echo
+#echo Current timestamp: $date
+#echo Start timestamp: $start_time
+#echo End timestamp: $end_time
+#echo
+
+# make sure they have all arguments
+if [ "$end_time" = "" ]; then
+ echo usage: $0 \<delay\> \<analysis host\> \<start time\> \<end time\>
+ echo start_time and end_time are in YYYYmmddHHMMSS format
+ echo ie: 9/30/2005, 2:31:54pm = 20050930143154
+ echo
+ exit
+fi
+
+# wait until start time
+#echo -n Waiting until start time \(${start_time}\)..
+date=`$date_cmd`
+while [ $date -lt $start_time ]; do
+ sleep 1
+ date=`$date_cmd`
+done
+#echo
+
+
+# launch iostat
+sudo nice -n -1 $SYSSTAT_HOME/bin/iostat -dxtk $delay > ${iostat_filename} &
+iostat_pid=$!
+
+
+# run test until end time
+#echo -n Running test until end time \(${end_time}\)..
+while [ $date -lt $end_time ]; do
+
+ sleep $delay
+ date=`$date_cmd`
+done
+#echo
+
+
+# kill iostat
+sudo kill -9 $iostat_pid
+
+
+# chmod
+
+sudo chmod g+w ${iostat_filename}
+sudo chmod o+r ${iostat_filename}
+
+
+# send data to analysis host
+#echo Sending data to analysis host..
+#scp -o StrictHostKeyChecking=no -o BatchMode=yes ${sar_filename} ${analysis_host}:/tmp/elba/rubbos
+#scp -o StrictHostKeyChecking=no -o BatchMode=yes ${ps_filename} ${analysis_host}:/tmp/elba/rubbos
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/mysql.properties_template b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/mysql.properties_template
new file mode 100644
index 00000000..87a5fd8b
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/mysql.properties_template
@@ -0,0 +1,83 @@
+
+###################### PostgreSQL DataSource configuration example
+#
+
+
+#####
+# DataSource configuration
+#
+datasource.name mysql
+
+datasource.url jdbc:mysql://REPLACE_MYSQL1_HOST:3306/rubbos
+datasource.classname com.mysql.jdbc.Driver
+
+datasource.username rubbos
+datasource.password rubbos
+
+
+#####
+# ConnectionManager configuration
+#
+
+# JDBC connection checking level.
+# 0 = no special checking
+# 1 = check physical connection is still open before reusing it
+# 2 = try every connection before reusing it
+jdbc.connchecklevel 1
+
+# Max age for jdbc connections
+# nb of minutes a connection can be kept in the pool
+jdbc.connmaxage 30
+
+# Max concurrent threads on same tx/connection
+# (not used with a customized jdbc datasource)
+jdbc.connmaxthreads 4
+
+# Max wait time if more than connmaxthreads threads request conn
+# value is in seconds
+# (not used with a customized jdbc datasource)
+jdbc.connexcltimeout 30
+
+# Test statement
+jdbc.connteststmt select 1
+
+
+######
+# Customizing JDBC DataSource configuration
+#
+
+# Name of the class implementing the XADataSource
+#datasource.factory org.objectweb.jonas.dbm.JonasStandardXADataSource
+
+# JNDI name use to bind the XADataSource
+#datasource.xadataname postgre1_xa
+
+# Minimum number of physical connection used by the XADataSource
+#datasource.mincon 5
+
+# Maximum number of physical connection used by the XADataSource
+#datasource.maxcon 10
+
+# Minimum number of XAConnection used by the pool
+#jdbc.minconpool 10
+
+# Maximum number of XAConnection used by the pool
+#jdbc.maxconpool 20
+
+# Time between two clean-up of old unused connection
+# (value is in millisecond)
+#jdbc.sleeptimepool 300000
+
+# Force the gc to be launched when cleaning up
+#jdbc.gcpool false
+
+# In case of no connection in the pool,
+# deadlockpool is the global time to re-try before throwing an exception
+# (value is in millisecond)
+#jdbc.deadlockpool 300000
+
+# In case of no connection in the pool,
+# loopwaitpool is the unit time to re-try
+# (value is in millisecond)
+#jdbc.loopwaitpool 10000
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsBO.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsBO.sh
new file mode 100644
index 00000000..4e9258bc
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsBO.sh
@@ -0,0 +1,77 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+###############################################################################
+#
+# This script runs first the RUBBoS browsing mix, then the read/write mix
+# for each rubbos.properties_XX specified where XX is the number of emulated
+# clients. Note that the rubbos.properties_XX files must be configured
+# with the corresponding number of clients.
+# In particular set the following variables in rubis.properties_XX:
+# httpd_use_version = Servlets
+# workload_number_of_clients_per_node = XX/number of client machines
+# workload_transition_table = yourPath/RUBBoS/workload/transitions.txt
+#
+# This script should be run from the RUBBoS/bench directory on the local
+# client machine.
+# Results will be generated in the RUBBoS/bench directory.
+#
+################################################################################
+
+#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
+
+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=48000
+MI=72000
+current_seconds=`date +%s`
+start_seconds=`echo \( $RAMPUP / 1000 \) + $current_seconds - 60 | bc`
+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`
+
+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
+
+echo "Rubbos emulator start $(date)"
+make emulator
+echo "Rubbos emulator end $(date)"
+
+set -x
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsRW.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsRW.sh
new file mode 100644
index 00000000..2dbd9788
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos-servletsRW.sh
@@ -0,0 +1,83 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+###############################################################################
+#
+# This script runs first the RUBBoS browsing mix, then the read/write mix
+# for each rubbos.properties_XX specified where XX is the number of emulated
+# clients. Note that the rubbos.properties_XX files must be configured
+# with the corresponding number of clients.
+# In particular set the following variables in rubis.properties_XX:
+# httpd_use_version = Servlets
+# workload_number_of_clients_per_node = XX/number of client machines
+# workload_transition_table = yourPath/RUBBoS/workload/transitions.txt
+#
+# This script should be run from the RUBBoS/bench directory on the local
+# client machine.
+# Results will be generated in the RUBBoS/bench directory.
+#
+################################################################################
+
+#setenv SERVLETDIR $RUBBOS_HOME/Servlets
+
+# Go back to RUBBoS root directory
+cd ..
+
+# Read/write mix
+
+cp --fi ./workload/user_default_transitions.txt ./workload/user_transitions.txt
+cp --fi ./workload/author_default_transitions.txt ./workload/author_transitions.txt
+
+scp ./workload/user_default_transitions.txt ${CLIENT1_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
+scp ./workload/author_default_transitions.txt ${CLIENT1_HOST}:${RUBBOS_HOME}/workload/author_transitions.txt
+
+scp ./workload/user_default_transitions.txt ${CLIENT2_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
+scp ./workload/author_default_transitions.txt ${CLIENT2_HOST}:${RUBBOS_HOME}/workload/author_transitions.txt
+
+scp ./workload/user_default_transitions.txt ${CLIENT3_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
+scp ./workload/author_default_transitions.txt ${CLIENT3_HOST}:${RUBBOS_HOME}/workload/author_transitions.txt
+
+scp ./workload/user_default_transitions.txt ${CLIENT4_HOST}:${RUBBOS_HOME}/workload/user_transitions.txt
+scp ./workload/author_default_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
+
+RAMPUP=480000
+MI=720000
+current_seconds=`date +%s`
+start_seconds=`echo \( $RAMPUP / 1000 \) + $current_seconds - 60 | bc`
+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" &
+
+
+make emulator
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos.properties_template b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos.properties_template
new file mode 100644
index 00000000..0e8a4b43
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/rubbos.properties_template
@@ -0,0 +1,79 @@
+
+#n HTTP server information
+httpd_hostname = REPLACE_HTTPD_HOST
+httpd_port = 8000
+
+# C/JDBC server to monitor (if any)
+cjdbc_hostname =
+
+# Precise which version to use. Valid options are : PHP, Servlets, EJB
+httpd_use_version = Servlets
+
+# EJB server information
+ejb_server =
+ejb_html_path =
+ejb_script_path =
+
+# Servlets server information
+servlets_server = REPLACE_TOMCAT1_HOST
+servlets_html_path = /rubbos
+servlets_script_path = /rubbos/servlet
+
+# PHP information
+php_html_path = /PHP
+php_script_path = /PHP
+
+#Database information
+database_master_server = REPLACE_MYSQL1_HOST
+
+database_slave_servers =
+workload_remote_client_nodes = REPLACE_CLIENT1_HOST,REPLACE_CLIENT2_HOST,REPLACE_CLIENT3_HOST,REPLACE_CLIENT4_HOST
+workload_remote_client_command = /bottlenecks/rubbos/app/jdk1.6.0_27/bin/java -classpath .:/bottlenecks/rubbos/app/RUBBoS/Client/:/bottlenecks/rubbos/app/RUBBoS/Client/rubbos_client.jar -Xmx1300m -Dhttp.keepAlive=true -Dhttp.maxConnections=1000000 edu.rice.rubbos.client.ClientEmulator
+
+
+workload_number_of_clients_per_node = REPLACE_NUMBER_OF_CLIENTS_PER_NODE
+
+
+# Workload: precise which transition table to use
+workload_user_transition_table = /bottlenecks/rubbos/app/RUBBoS/workload/user_transitions.txt
+workload_author_transition_table = /bottlenecks/rubbos/app/RUBBoS/workload/author_transitions.txt
+workload_number_of_columns = 24
+workload_number_of_rows = 26
+workload_maximum_number_of_transitions = 1000
+workload_use_tpcw_think_time = yes
+workload_number_of_stories_per_page = 20
+
+workload_up_ramp_time_in_ms = 48000
+workload_up_ramp_slowdown_factor = 2
+
+workload_session_run_time_in_ms = 72000
+workload_down_ramp_time_in_ms = 3000
+workload_down_ramp_slowdown_factor = 3
+workload_percentage_of_author = 10
+
+# Users policy
+database_number_of_authors = 50
+database_number_of_users = 500000
+
+# Stories policy
+database_story_dictionnary = /bottlenecks/rubbos/app/RUBBoS/database/dictionary
+database_story_maximum_length = 1024
+database_oldest_story_year = 1998
+database_oldest_story_month = 1
+
+# Comments policy
+database_comment_max_length = 1024
+
+# Connection timedout settings
+connection_time_out_interval = 300
+
+
+# Monitoring Information
+monitoring_debug_level = 1
+monitoring_program = /bottlenecks/rubbos/app/sysstat-9.0.6/bin/sar
+monitoring_options = -u ALL -I SUM
+monitoring_sampling_in_seconds = 1
+monitoring_rsh = /usr/bin/ssh
+monitoring_scp = /usr/bin/scp
+monitoring_gnuplot_terminal = png
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/web.xml b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/web.xml
new file mode 100644
index 00000000..e0a32b6b
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/rubbos_conf/web.xml
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!--
+<!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN' 'http://java.sun.com/dtd/web-app_2_3.dtd'>
+-->
+<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
+
+<web-app>
+
+ <display-name>RUBBos</display-name>
+ <description>
+ Rice University Bulletin Board System
+ </description>
+
+
+ <servlet>
+ <servlet-name>BrowseCategories</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.BrowseCategories</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>BrowseStoriesByCategory</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.BrowseStoriesByCategory</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>ViewComment</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.ViewComment</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>ModerateComment</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.ModerateComment</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>PostComment</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.PostComment</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>StoreComment</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.StoreComment</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>SubmitStory</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.SubmitStory</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>AcceptStory</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.AcceptStory</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>RejectStory</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.RejectStory</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>ReviewStories</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.ReviewStories</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>StoreStory</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.StoreStory</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>ViewStory</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.ViewStory</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>StoriesOfTheDay</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.StoriesOfTheDay</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>Search</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.Search</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>StoreModeratorLog</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.StoreModeratorLog</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>RegisterUser</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.RegisterUser</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>Author</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.Author</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>OlderStories</servlet-name>
+ <servlet-class>edu.rice.rubbos.servlets.OlderStories</servlet-class>
+ </servlet>
+
+
+ <servlet-mapping>
+ <servlet-name>BrowseCategories</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.BrowseCategories</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>BrowseStoriesByCategory</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.BrowseStoriesByCategory</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>ViewComment</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.ViewComment</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>ModerateComment</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.ModerateComment</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>PostComment</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.PostComment</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>StoreComment</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.StoreComment</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>SubmitStory</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.SubmitStory</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>AcceptStory</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.AcceptStory</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>RejectStory</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.RejectStory</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>ReviewStories</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.ReviewStories</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>StoreStory</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.StoreStory</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>ViewStory</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.ViewStory</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>StoriesOfTheDay</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.StoriesOfTheDay</url-pattern>
+ </servlet-mapping>
+
+
+ <servlet-mapping>
+ <servlet-name>Search</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.Search</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>StoreModeratorLog</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.StoreModeratorLog</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>RegisterUser</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.RegisterUser</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>Author</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.Author</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>OlderStories</servlet-name>
+ <url-pattern>/servlet/edu.rice.rubbos.servlets.OlderStories</url-pattern>
+ </servlet-mapping>
+
+
+ <session-config>
+ <session-timeout>30</session-timeout> <!-- 30 minutes -->
+ </session-config>
+
+</web-app>
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_configure.sh
new file mode 100755
index 00000000..4c8c416a
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_configure.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING RUBBOS CLIENT on $HOSTNAME"
+
+cp -r $WORK_HOME/rubbos_files/Client $RUBBOS_HOME/
+cp -r $WORK_HOME/rubbos_files/bench $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/build.properties $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/config.mk $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/Makefile $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsBO.sh $RUBBOS_HOME/bench/
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsRW.sh $RUBBOS_HOME/bench/
+
+chmod ug+x $RUBBOS_HOME/bench/*.sh
+
+#build clients
+echo "COMPILING RUBBOS CLIENT on $HOSTNAME"
+cd $RUBBOS_HOME/Client
+make clean >/dev/null
+make >/dev/null 2>&1
+
+echo "DONE CONFIGURING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_install.sh
new file mode 100755
index 00000000..f516b061
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_install.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS CLIENT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+tar xzf $SOFTWARE_HOME/$JAVA_TARBALL --directory=$RUBBOS_APP
+
+echo "DONE INSTALLING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_pkg_prepare.sh
new file mode 100755
index 00000000..7e96fe81
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_pkg_prepare.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+. ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for BENCHMARK rubbos install
+if true; then
+ssh $BENCHMARK_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $BENCHMARK_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $BENCHMARK_HOST "mkdir -p $SOFTWARE_HOME"
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $BENCHMARK_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $BENCHMARK_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $BENCHMARK_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $BENCHMARK_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $BENCHMARK_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# Packages for BENCHMARK install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$JAVA_TARBALL $BENCHMARK_HOST:$SOFTWARE_HOME/$JAVA_TARBALL
+fi
+
+# Packages for BENCHMARK configure
+if true; then
+ssh $BENCHMARK_HOST "mkdir -p $WORK_HOME/rubbos_files"
+scp $scp_options -r $WORK_HOME/rubbos_files/Client $BENCHMARK_HOST:$WORK_HOME/rubbos_files
+scp $scp_options -r $WORK_HOME/rubbos_files/bench $BENCHMARK_HOST:$WORK_HOME/rubbos_files
+ssh $BENCHMARK_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+for i in build.properties config.mk Makefile \
+ rubbos-servletsBO.sh rubbos-servletsRW.sh
+do
+ scp $scp_options -r $OUTPUT_HOME/rubbos_conf/$i $BENCHMARK_HOST:$OUTPUT_HOME/rubbos_conf/$i
+done
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_install.sh
new file mode 100755
index 00000000..6f2555aa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_install.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+#tar xzf $SOFTWARE_HOME/rubbos_html.tar.gz --directory=$RUBBOS_HOME/Servlet_HTML/
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_uninstall.sh
new file mode 100755
index 00000000..413ee958
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_rubbos_uninstall.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_uninstall.sh
new file mode 100755
index 00000000..36ecde18
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/BENCHMARK_uninstall.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $JAVA_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_configure.sh
new file mode 100755
index 00000000..4c8c416a
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_configure.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING RUBBOS CLIENT on $HOSTNAME"
+
+cp -r $WORK_HOME/rubbos_files/Client $RUBBOS_HOME/
+cp -r $WORK_HOME/rubbos_files/bench $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/build.properties $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/config.mk $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/Makefile $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsBO.sh $RUBBOS_HOME/bench/
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsRW.sh $RUBBOS_HOME/bench/
+
+chmod ug+x $RUBBOS_HOME/bench/*.sh
+
+#build clients
+echo "COMPILING RUBBOS CLIENT on $HOSTNAME"
+cd $RUBBOS_HOME/Client
+make clean >/dev/null
+make >/dev/null 2>&1
+
+echo "DONE CONFIGURING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_install.sh
new file mode 100755
index 00000000..f516b061
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_install.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS CLIENT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+tar xzf $SOFTWARE_HOME/$JAVA_TARBALL --directory=$RUBBOS_APP
+
+echo "DONE INSTALLING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_pkg_prepare.sh
new file mode 100755
index 00000000..f73ff9fd
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_pkg_prepare.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+. ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for CLIENT1 rubbos install
+if true; then
+ssh $CLIENT1_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $CLIENT1_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $CLIENT1_HOST "mkdir -p $SOFTWARE_HOME"
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $CLIENT1_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $CLIENT1_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $CLIENT1_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $CLIENT1_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $CLIENT1_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# Packages for CLIENT1 install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$JAVA_TARBALL $CLIENT1_HOST:$SOFTWARE_HOME/$JAVA_TARBALL
+fi
+
+# Packages for CLIENT1 configure
+if true; then
+ssh $CLIENT1_HOST "mkdir -p $WORK_HOME/rubbos_files"
+scp $scp_options -r $WORK_HOME/rubbos_files/Client $CLIENT1_HOST:$WORK_HOME/rubbos_files
+scp $scp_options -r $WORK_HOME/rubbos_files/bench $CLIENT1_HOST:$WORK_HOME/rubbos_files
+ssh $CLIENT1_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+for i in build.properties config.mk Makefile \
+ rubbos-servletsBO.sh rubbos-servletsRW.sh
+do
+ scp $scp_options -r $OUTPUT_HOME/rubbos_conf/$i $CLIENT1_HOST:$OUTPUT_HOME/rubbos_conf/$i
+done
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_install.sh
new file mode 100755
index 00000000..6f2555aa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_install.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+#tar xzf $SOFTWARE_HOME/rubbos_html.tar.gz --directory=$RUBBOS_HOME/Servlet_HTML/
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_uninstall.sh
new file mode 100755
index 00000000..413ee958
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_rubbos_uninstall.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_uninstall.sh
new file mode 100755
index 00000000..36ecde18
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT1_uninstall.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $JAVA_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_configure.sh
new file mode 100755
index 00000000..4c8c416a
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_configure.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING RUBBOS CLIENT on $HOSTNAME"
+
+cp -r $WORK_HOME/rubbos_files/Client $RUBBOS_HOME/
+cp -r $WORK_HOME/rubbos_files/bench $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/build.properties $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/config.mk $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/Makefile $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsBO.sh $RUBBOS_HOME/bench/
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsRW.sh $RUBBOS_HOME/bench/
+
+chmod ug+x $RUBBOS_HOME/bench/*.sh
+
+#build clients
+echo "COMPILING RUBBOS CLIENT on $HOSTNAME"
+cd $RUBBOS_HOME/Client
+make clean >/dev/null
+make >/dev/null 2>&1
+
+echo "DONE CONFIGURING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_install.sh
new file mode 100755
index 00000000..f516b061
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_install.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS CLIENT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+tar xzf $SOFTWARE_HOME/$JAVA_TARBALL --directory=$RUBBOS_APP
+
+echo "DONE INSTALLING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_pkg_prepare.sh
new file mode 100755
index 00000000..7dfd60d9
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_pkg_prepare.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+. ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for CLIENT2 rubbos install
+if true; then
+ssh $CLIENT2_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $CLIENT2_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $CLIENT2_HOST "mkdir -p $SOFTWARE_HOME"
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $CLIENT2_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $CLIENT2_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $CLIENT2_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $CLIENT2_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $CLIENT2_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# Packages for CLIENT2 install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$JAVA_TARBALL $CLIENT2_HOST:$SOFTWARE_HOME/$JAVA_TARBALL
+fi
+
+# Packages for CLIENT2 configure
+if true; then
+ssh $CLIENT2_HOST "mkdir -p $WORK_HOME/rubbos_files"
+scp $scp_options -r $WORK_HOME/rubbos_files/Client $CLIENT2_HOST:$WORK_HOME/rubbos_files
+scp $scp_options -r $WORK_HOME/rubbos_files/bench $CLIENT2_HOST:$WORK_HOME/rubbos_files
+ssh $CLIENT2_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+for i in build.properties config.mk Makefile \
+ rubbos-servletsBO.sh rubbos-servletsRW.sh
+do
+ scp $scp_options -r $OUTPUT_HOME/rubbos_conf/$i $CLIENT2_HOST:$OUTPUT_HOME/rubbos_conf/$i
+done
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_install.sh
new file mode 100755
index 00000000..6f2555aa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_install.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+#tar xzf $SOFTWARE_HOME/rubbos_html.tar.gz --directory=$RUBBOS_HOME/Servlet_HTML/
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_uninstall.sh
new file mode 100755
index 00000000..413ee958
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_rubbos_uninstall.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_uninstall.sh
new file mode 100755
index 00000000..36ecde18
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT2_uninstall.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $JAVA_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_configure.sh
new file mode 100755
index 00000000..4c8c416a
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_configure.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING RUBBOS CLIENT on $HOSTNAME"
+
+cp -r $WORK_HOME/rubbos_files/Client $RUBBOS_HOME/
+cp -r $WORK_HOME/rubbos_files/bench $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/build.properties $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/config.mk $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/Makefile $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsBO.sh $RUBBOS_HOME/bench/
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsRW.sh $RUBBOS_HOME/bench/
+
+chmod ug+x $RUBBOS_HOME/bench/*.sh
+
+#build clients
+echo "COMPILING RUBBOS CLIENT on $HOSTNAME"
+cd $RUBBOS_HOME/Client
+make clean >/dev/null
+make >/dev/null 2>&1
+
+echo "DONE CONFIGURING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_install.sh
new file mode 100755
index 00000000..f516b061
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_install.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS CLIENT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+tar xzf $SOFTWARE_HOME/$JAVA_TARBALL --directory=$RUBBOS_APP
+
+echo "DONE INSTALLING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_pkg_prepare.sh
new file mode 100755
index 00000000..f958638f
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_pkg_prepare.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+. ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for CLIENT3 rubbos install
+if true; then
+ssh $CLIENT3_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $CLIENT3_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $CLIENT3_HOST "mkdir -p $SOFTWARE_HOME"
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $CLIENT3_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $CLIENT3_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $CLIENT3_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $CLIENT3_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $CLIENT3_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# Packages for CLIENT3 install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$JAVA_TARBALL $CLIENT3_HOST:$SOFTWARE_HOME/$JAVA_TARBALL
+fi
+
+# Packages for CLIENT3 configure
+if true; then
+ssh $CLIENT3_HOST "mkdir -p $WORK_HOME/rubbos_files"
+scp $scp_options -r $WORK_HOME/rubbos_files/Client $CLIENT3_HOST:$WORK_HOME/rubbos_files
+scp $scp_options -r $WORK_HOME/rubbos_files/bench $CLIENT3_HOST:$WORK_HOME/rubbos_files
+ssh $CLIENT3_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+for i in build.properties config.mk Makefile \
+ rubbos-servletsBO.sh rubbos-servletsRW.sh
+do
+ scp $scp_options -r $OUTPUT_HOME/rubbos_conf/$i $CLIENT3_HOST:$OUTPUT_HOME/rubbos_conf/$i
+done
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_install.sh
new file mode 100755
index 00000000..6f2555aa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_install.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+#tar xzf $SOFTWARE_HOME/rubbos_html.tar.gz --directory=$RUBBOS_HOME/Servlet_HTML/
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_uninstall.sh
new file mode 100755
index 00000000..413ee958
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_rubbos_uninstall.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_uninstall.sh
new file mode 100755
index 00000000..36ecde18
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT3_uninstall.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $JAVA_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_configure.sh
new file mode 100755
index 00000000..4c8c416a
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_configure.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING RUBBOS CLIENT on $HOSTNAME"
+
+cp -r $WORK_HOME/rubbos_files/Client $RUBBOS_HOME/
+cp -r $WORK_HOME/rubbos_files/bench $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/build.properties $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/config.mk $RUBBOS_HOME/
+cp $OUTPUT_HOME/rubbos_conf/Makefile $RUBBOS_HOME/
+
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsBO.sh $RUBBOS_HOME/bench/
+cp $OUTPUT_HOME/rubbos_conf/rubbos-servletsRW.sh $RUBBOS_HOME/bench/
+
+chmod ug+x $RUBBOS_HOME/bench/*.sh
+
+#build clients
+echo "COMPILING RUBBOS CLIENT on $HOSTNAME"
+cd $RUBBOS_HOME/Client
+make clean >/dev/null
+make >/dev/null 2>&1
+
+echo "DONE CONFIGURING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_install.sh
new file mode 100755
index 00000000..f516b061
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_install.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS CLIENT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+tar xzf $SOFTWARE_HOME/$JAVA_TARBALL --directory=$RUBBOS_APP
+
+echo "DONE INSTALLING RUBBOS CLIENT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_pkg_prepare.sh
new file mode 100755
index 00000000..5f218269
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_pkg_prepare.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+. ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for CLIENT4 rubbos install
+if true; then
+ssh $CLIENT4_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $CLIENT4_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $CLIENT4_HOST "mkdir -p $SOFTWARE_HOME"
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $CLIENT4_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $CLIENT4_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $CLIENT4_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $CLIENT4_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $CLIENT4_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# Packages for CLIENT4 install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$JAVA_TARBALL $CLIENT4_HOST:$SOFTWARE_HOME/$JAVA_TARBALL
+fi
+
+# Packages for CLIENT4 configure
+if true; then
+ssh $CLIENT4_HOST "mkdir -p $WORK_HOME/rubbos_files"
+scp $scp_options -r $WORK_HOME/rubbos_files/Client $CLIENT4_HOST:$WORK_HOME/rubbos_files
+scp $scp_options -r $WORK_HOME/rubbos_files/bench $CLIENT4_HOST:$WORK_HOME/rubbos_files
+ssh $CLIENT4_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+for i in build.properties config.mk Makefile \
+ rubbos-servletsBO.sh rubbos-servletsRW.sh
+do
+ scp $scp_options -r $OUTPUT_HOME/rubbos_conf/$i $CLIENT4_HOST:$OUTPUT_HOME/rubbos_conf/$i
+done
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_install.sh
new file mode 100755
index 00000000..6f2555aa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_install.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+if [ ! -d "$RUBBOS_APP" ]; then
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+fi
+
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+#tar xzf $SOFTWARE_HOME/rubbos_html.tar.gz --directory=$RUBBOS_HOME/Servlet_HTML/
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_uninstall.sh
new file mode 100755
index 00000000..413ee958
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_rubbos_uninstall.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_uninstall.sh
new file mode 100755
index 00000000..36ecde18
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CLIENT4_uninstall.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $JAVA_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_checkScp_exec.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_checkScp_exec.sh
new file mode 100755
index 00000000..1cfb0bc7
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_checkScp_exec.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+# Check scp to all servers
+echo "*** checking scp to all servers *********************************"
+
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $CONTROL_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $BENCHMARK_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $CLIENT1_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $CLIENT2_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $CLIENT3_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $CLIENT4_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $HTTPD_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $TOMCAT1_HOST "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes $MYSQL1_HOST "hostname"
+
+#ssh -o StrictHostKeyChecking=no -o BatchMode=yes bonn.cc.gt.atl.ga.us "hostname"
+ssh -o StrictHostKeyChecking=no -o BatchMode=yes localhost "hostname"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_emulabConf_exec.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_emulabConf_exec.sh
new file mode 100755
index 00000000..428172ab
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_emulabConf_exec.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+# Limit pc3000 Memory Capacity
+
+sleep 10
+
+# Make and mount new partiton
+echo "*** make FS on a partition and mount it *************************"
+
+for i in "$BENCHMARK_HOST" "$CLIENT1_HOST" "$CLIENT2_HOST" "$CLIENT3_HOST" "$CLIENT4_HOST" "$HTTPD_HOST" "$TOMCAT1_HOST" "$MYSQL1_HOST"
+do
+ssh $i "
+ sudo mkdir -p $ELBA_TOP
+ sudo chmod 777 $ELBA_TOP
+"
+scp $WORK_HOME/emulab_files/limits.conf $i:$ELBA_TOP
+scp $WORK_HOME/emulab_files/login $i:$ELBA_TOP
+scp $WORK_HOME/emulab_files/file-max $i:$ELBA_TOP
+
+ssh $i "
+ sudo mv $ELBA_TOP/limits.conf /etc/security/
+ sudo mv $ELBA_TOP/login /etc/pam.d/
+"
+done
+
+
+for i in "$BENCHMARK_HOST" "$CLIENT1_HOST" "$CLIENT2_HOST" "$CLIENT3_HOST" "$CLIENT4_HOST" "$HTTPD_HOST" "$TOMCAT1_HOST" "$MYSQL1_HOST"
+do
+ ssh $i "
+ sudo /sbin/mkfs /dev/sda4
+ sudo mount /dev/sda4 $ELBA_TOP
+ sudo chmod 777 $ELBA_TOP
+ mkdir -p $RUBBOS_TOP
+ sudo cp $SOFTWARE_HOME/sdparm-1.03.tgz /tmp
+ cd /tmp
+ sudo tar -zxvf ./sdparm-1.03.tgz
+ cd sdparm-1.03
+ sudo ./configure
+ sudo make
+ sudo make install
+ sudo sdparm -c WCE /dev/sda
+ " &
+done
+
+echo "sleep 420"
+sleep 420
+echo "wake up from sleeping 420"
+
+
+# Turning off Swap Partition
+
+sleep 10
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_rubbos_exec.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_rubbos_exec.sh
new file mode 100755
index 00000000..77da6459
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/CONTROL_rubbos_exec.sh
@@ -0,0 +1,151 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+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/
+
+echo "Starting RUBBoS"
+
+ssh $RUBBOS_RESULTS_HOST "
+ mkdir -p $RUBBOS_RESULTS_DIR_BASE
+"
+ssh $BENCHMARK_HOST "
+ mkdir -p $TMP_RESULTS_DIR_BASE/$RUBBOS_RESULTS_DIR_NAME
+"
+
+# run test rubbos.properties from 200 to 3200
+for i in {2..32..5}
+do
+ echo "Start Browsing Only with rubbos.properties_$((100*i)) $(date)"
+
+ ssh $BENCHMARK_HOST "
+ source /bottlenecks/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh
+ rm -f $RUBBOS_HOME/Client/rubbos.properties
+ "
+
+ sed -e "s/REPLACE_HTTPD_HOST/$HTTPD_HOST/g" \
+ -e "s/REPLACE_TOMCAT1_HOST/$TOMCAT1_HOST/g" \
+ -e "s/REPLACE_MYSQL1_HOST/$MYSQL1_HOST/g" \
+ -e "s#REPLACE_CLIENT1_HOST#$CLIENT1_HOST#g" \
+ -e "s#REPLACE_CLIENT2_HOST#$CLIENT2_HOST#g" \
+ -e "s#REPLACE_CLIENT3_HOST#$CLIENT3_HOST#g" \
+ -e "s#REPLACE_CLIENT4_HOST#$CLIENT4_HOST#g" \
+ -e "s/REPLACE_NUMBER_OF_CLIENTS_PER_NODE/$((20*i))/g" \
+ $OUTPUT_HOME/rubbos_conf/rubbos.properties_template \
+ > $OUTPUT_HOME/rubbos_conf/rubbos.properties
+ scp $OUTPUT_HOME/rubbos_conf/rubbos.properties $BENCHMARK_HOST:$RUBBOS_HOME/Client/rubbos.properties
+ rm -rf $OUTPUT_HOME/rubbos_conf/rubbos.properties
+
+ echo "Resetting all data"
+ $OUTPUT_HOME/scripts/reset_all.sh
+
+ # Browsing Only
+ echo "Start Browsing Only with rubbos.properties_$((100*i))"
+ echo "Removing previous logs..."
+ ssh $HTTPD_HOST "rm -f $HTTPD_HOME/logs/*log"
+ 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
+
+ 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 "
+ set -x
+ source /bottlenecks/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh
+
+ cd $RUBBOS_HOME/bench
+ \rm -r 20*
+
+ # Execute benchmark
+ echo "execute benchmark"
+ ./rubbos-servletsBO.sh
+
+ # Collect results
+ echo "The benchmark has finished. Now, collecting results..."
+ cd 20*
+ 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 ..
+ find -type f
+ find -type f | grep stat_client | xargs grep throughput
+ mv 20* $TMP_RESULTS_DIR_BASE/$RUBBOS_RESULTS_DIR_NAME/
+ "
+
+ $OUTPUT_HOME/scripts/stop_all.sh
+ $OUTPUT_HOME/scripts/kill_all.sh
+ sleep 15
+
+ echo "End Browsing Only with rubbos.properties_$((100*i)) $(date)"
+done
+
+echo "Processing the results..."
+ssh $BENCHMARK_HOST "
+ cd $TMP_RESULTS_DIR_BASE
+ #cd $RUBBOS_RESULTS_DIR_NAME
+ #scp $RUBBOS_RESULTS_HOST:$RUBBOS_RESULTS_DIR_BASE/calc-sarSummary.prl ../
+ #../calc-sarSummary.prl
+
+ #rm -f 20*/*.bin
+
+ #cd ../
+ tar zcf $RUBBOS_RESULTS_DIR_NAME.tgz $RUBBOS_RESULTS_DIR_NAME
+ scp $scp_options $RUBBOS_RESULTS_DIR_NAME.tgz $RUBBOS_RESULTS_HOST:$RUBBOS_RESULTS_DIR_BASE/
+"
+
+echo "Push the results to DB..."
+cd $RUBBOS_RESULTS_DIR_BASE
+
+ls $RUBBOS_RESULTS_DIR_NAME.tgz
+tar zxf $RUBBOS_RESULTS_DIR_NAME.tgz
+ls $RUBBOS_RESULTS_DIR_NAME
+
+echo "Fetch POD env parameters"
+source /tmp/vm_dev_setup/hosts.conf
+sed -i -e "s/REPLACE_NODE_NAME/$NODE_NAME/g" \
+ -e "s/REPLACE_INSTALLER_TYPE/$INSTALLER_TYPE/g" \
+ -e "s/REPLACE_VERSION/$BOTTLENECKS_VERSION/g" \
+ -e "s#REPLACE_BOTTLENECKS_DB_TARGET#$BOTTLENECKS_DB_TARGET#g" \
+ $BOTTLENECKS_TOP/utils/dashboard/dashboard.yaml
+
+cat $BOTTLENECKS_TOP/utils/dashboard/dashboard.yaml
+
+python $BOTTLENECKS_TOP/utils/dashboard/process_data.py \
+ $RUBBOS_RESULTS_DIR_BASE/$RUBBOS_RESULTS_DIR_NAME \
+ $BOTTLENECKS_TOP/utils/dashboard/dashboard.yaml
+cd -
+
+echo "Finish RUBBoS"
+touch /tmp/rubbos_finished
+
+set +x
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_configure.sh
new file mode 100755
index 00000000..2cacf966
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_configure.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING APACHE on $HOSTNAME"
+
+cp $OUTPUT_HOME/apache_conf/httpd.conf $HTTPD_HOME/conf/
+cp $OUTPUT_HOME/apache_conf/workers.properties $HTTPD_HOME/conf/
+cp -r $WORK_HOME/apache_files/rubbos_html $HTTPD_HOME/htdocs/rubbos
+
+apache > /dev/null 2>&1
+
+echo "APACHE CONFIGURED SUCCESSFULLY on $HOSTNAME"
+
+
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_ignition.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_ignition.sh
new file mode 100755
index 00000000..74850b65
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_ignition.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "STARTING APACHE on $HOSTNAME"
+
+$HTTPD_HOME/bin/apachectl -f $HTTPD_HOME/conf/httpd.conf -k start
+
+echo "APACHE IS RUNNING on $HOSTNAME"
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_install.sh
new file mode 100755
index 00000000..1370bc77
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_install.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING APACHE on $HOSTNAME"
+
+echo "Adding new user apache begin"
+useradd apache
+groupadd apache
+usermod -G apache apache
+echo "Adding new user apache end"
+
+mkdir -p $BOTTLENECKS_TOP
+chmod 755 $BOTTLENECKS_TOP
+mkdir -p $RUBBOS_TOP
+chmod 755 $RUBBOS_TOP
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+
+# apache
+tar zxf $SOFTWARE_HOME/$HTTPD_TARBALL --directory=$RUBBOS_APP
+cd $HTTPD_INSTALL_FILES
+./configure --prefix=$HTTPD_HOME --enable-module=so --enable-so --with-mpm=worker >/dev/null
+make >/dev/null
+make install >/dev/null
+
+# mod jk
+tar zxf $SOFTWARE_HOME/$MOD_JK_TARBALL --directory=$RUBBOS_APP
+tar zxf $SOFTWARE_HOME/$JAVA_TARBALL --directory=$RUBBOS_APP
+cd $MOD_JK_INSTALL_CONFIGURE
+./configure --with-apxs=$HTTPD_HOME/bin/apxs --enable-jni --with-java-home=$JAVA_HOME >/dev/null
+make >/dev/null
+make install >/dev/null
+
+echo "APACHE IS INSTALLED on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_pkg_prepare.sh
new file mode 100755
index 00000000..4dd116aa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_pkg_prepare.sh
@@ -0,0 +1,50 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+. ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for HTTPD install
+if true; then
+ssh $HTTPD_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $HTTPD_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $HTTPD_HOST "mkdir -p $SOFTWARE_HOME"
+scp $scp_options $SOFTWARE_HOME/$HTTPD_TARBALL $HTTPD_HOST:$SOFTWARE_HOME/$HTTPD_TARBALL
+scp $scp_options $SOFTWARE_HOME/$MOD_JK_TARBALL $HTTPD_HOST:$SOFTWARE_HOME/$MOD_JK_TARBALL
+scp $scp_options $SOFTWARE_HOME/$JAVA_TARBALL $HTTPD_HOST:$SOFTWARE_HOME/$JAVA_TARBALL
+
+fi
+
+# Packages for HTTPD rubbos install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $HTTPD_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $HTTPD_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $HTTPD_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $HTTPD_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $HTTPD_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# Packages for HTTPD configure
+if true; then
+ssh $HTTPD_HOST "mkdir -p $OUTPUT_HOME/apache_conf"
+scp $scp_options $OUTPUT_HOME/apache_conf/httpd.conf $HTTPD_HOST:$OUTPUT_HOME/apache_conf/httpd.conf
+
+sed -e "s/REPLACE_TOMCAT1_HOST/$TOMCAT1_HOST/g" \
+ $OUTPUT_HOME/apache_conf/workers.properties_template \
+ > $OUTPUT_HOME/apache_conf/workers.properties
+scp $scp_options $OUTPUT_HOME/apache_conf/workers.properties $HTTPD_HOST:$OUTPUT_HOME/apache_conf/workers.properties
+rm -rf $OUTPUT_HOME/apache_conf/workers.properties
+
+ssh $HTTPD_HOST "mkdir -p $WORK_HOME/apache_files"
+scp $scp_options -r $WORK_HOME/apache_files/rubbos_html $HTTPD_HOST:$WORK_HOME/apache_files/rubbos_html
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_install.sh
new file mode 100755
index 00000000..29316c57
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_install.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+mkdir -p $RUBBOS_APP
+
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_uninstall.sh
new file mode 100755
index 00000000..71cefa44
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_rubbos_uninstall.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_APP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_stop.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_stop.sh
new file mode 100755
index 00000000..515ecea2
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_stop.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "STOPPING APACHE on $HOSTNAME"
+
+$HTTPD_HOME/bin/apachectl -f $HTTPD_HOME/conf/httpd.conf -k stop
+
+echo "APACHE IS STOPPED on $HOSTNAME"
+
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_uninstall.sh
new file mode 100755
index 00000000..5f6cff8a
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/HTTPD_uninstall.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $HTTPD_INSTALL_FILES
+rm -rf $HTTPD_HOME
+
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_configure.sh
new file mode 100755
index 00000000..d0ff01ab
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_configure.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING MYSQL on $HOSTNAME"
+
+cd $MYSQL_HOME
+chown -R mysql:mysql ./
+cp support-files/my-medium.cnf /etc/my.cnf
+#bin/mysqld_safe --user=$BOTTLENECKS_USER &
+#bin/mysqladmin -u root password 'new-password'
+cp support-files/mysql.server /etc/init.d/mysql.server
+/etc/init.d/mysql.server status
+
+if [ -f "/usr/local/bin/mysql" ]; then
+rm -rf /usr/local/bin/mysql
+fi
+
+ln -s $MYSQL_HOME/bin/mysql /usr/local/bin/mysql
+
+echo "DONE CONFIGURING MYSQL on $HOSTNAME"
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_ignition.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_ignition.sh
new file mode 100755
index 00000000..946f1007
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_ignition.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "STARTING MYSQL on $HOSTNAME $(date)"
+
+cd $MYSQL_HOME
+bin/mysqld_safe&
+sleep 10
+/etc/init.d/mysql.server status
+
+
+echo "MYSQL IS RUNNING on $HOSTNAME $(date)"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_install.sh
new file mode 100755
index 00000000..b69cae88
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_install.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING MYSQL on $HOSTNAME"
+
+mkdir -p $BOTTLENECKS_TOP
+chmod 755 $BOTTLENECKS_TOP
+mkdir -p $RUBBOS_TOP
+chmod 755 $RUBBOS_TOP
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+
+cd /root
+groupadd mysql
+useradd -r -g mysql $BOTTLENECKS_USER
+tar xzf $SOFTWARE_HOME/$MYSQL_TARBALL --directory=$RUBBOS_APP
+cd /usr/local
+ln -s $MYSQL_HOME mysql
+cd mysql
+chown -R $BOTTLENECKS_USER .
+chgrp -R mysql .
+#scripts/mysql_install_db --verbose --user=$BOTTLENECKS_USER --basedir=$MYSQL_HOME --datadir=$MYSQL_DATA_DIR
+scripts/mysql_install_db --user=$BOTTLENECKS_USER
+chown -R root .
+chown -R $BOTTLENECKS_USER data
+
+#echo "begin install mysql"
+#cd $MYSQL_HOME
+#scripts/mysql_install_db --no-defaults --user=root --basedir=$MYSQL_HOME --port=$MYSQL_PORT --datadir=$MYSQL_DATA_DIR --log=$MYSQL_ERR_LOG --pid-file=$MYSQL_PID_FILE --socket=$MYSQL_SOCKET
+
+echo "DONE INSTALLING MYSQL on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_pkg_prepare.sh
new file mode 100755
index 00000000..cc714164
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_pkg_prepare.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+source ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for MYSQL1 install
+echo "MYSQL PREPARE DEPENDANT LIBRARY BEGIN"
+if true; then
+ssh $MYSQL1_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $MYSQL1_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $MYSQL1_HOST "mkdir -p $SOFTWARE_HOME"
+scp $scp_options $SOFTWARE_HOME/$MYSQL_TARBALL $MYSQL1_HOST:$SOFTWARE_HOME/$MYSQL_TARBALL
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_DATA_TARBALL $MYSQL1_HOST:$SOFTWARE_HOME/$RUBBOS_DATA_TARBALL
+
+fi
+echo "MYSQL PREPARE DEPENDANT LIBRARY END"
+
+# Packages for MYSQL1 rubbos install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $MYSQL1_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $MYSQL1_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $MYSQL1_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $MYSQL1_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $MYSQL1_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# Packages for MYSQL1 configure
+if true; then
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_DATA_TARBALL $MYSQL1_HOST:/tmp
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_reset.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_reset.sh
new file mode 100755
index 00000000..da07ab36
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_reset.sh
@@ -0,0 +1,49 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "RESETING MYSQL on $HOSTNAME"
+# copy rubbos data files
+#tar xzf $RUBBOS_TOP/$RUBBOS_DATA_TARBALL --directory=$MYSQL_HOME/data/rubbos
+cd $MYSQL_HOME
+bin/mysqld_safe&
+sleep 10
+/etc/init.d/mysql.server status
+
+echo "BEGIN RUBBOS DATABASE GIVE PRIVILEGES"
+cat << EOF | mysql -uroot
+
+DROP DATABASE IF EXISTS rubbos;
+
+CREATE DATABASE rubbos;
+
+GRANT ALL PRIVILEGES ON rubbos.* TO 'rubbos'@'%' \
+ IDENTIFIED BY 'rubbos';
+ flush privileges;
+GRANT ALL PRIVILEGES ON rubbos.* TO 'rubbos'@'localhost' \
+ IDENTIFIED BY 'rubbos';
+ flush privileges;
+EOF
+echo "END RUBBOS DATABASE GIVE PRIVILEGES"
+
+echo "BEGIN IMPORT SQL DATA $(date)"
+echo "software_home=$SOFTWARE_HOME"
+tar xzf $SOFTWARE_HOME/$RUBBOS_DATA_TARBALL --directory /tmp
+mysql -uroot rubbos < /tmp/$RUBBOS_DATA_SQL
+echo "END IMPORT SQL DATA $(date)"
+rm /tmp/$RUBBOS_DATA_SQL
+
+bin/mysqladmin shutdown
+
+echo "DONE RESETING MYSQL on $HOSTNAME"
+sleep 5
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_install.sh
new file mode 100755
index 00000000..96a47007
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_install.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+mkdir -p $RUBBOS_APP
+
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+#tar xzf $SOFTWARE_HOME/rubbos_html.tar.gz --directory=$RUBBOS_HOME/Servlet_HTML/
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_uninstall.sh
new file mode 100755
index 00000000..d5db08a0
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_rubbos_uninstall.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_HOME
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_stop.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_stop.sh
new file mode 100755
index 00000000..a41dfce8
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_stop.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "STOPPING MYSQL on $HOSTNAME"
+
+cd $MYSQL_HOME
+#bin/mysqladmin --socket=$MYSQL_SOCKET --user=root --password=$ROOT_PASSWORD shutdown
+bin/mysqladmin shutdown
+
+echo "MYSQL IS STOPPED on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_uninstall.sh
new file mode 100755
index 00000000..24aa4fbb
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/MYSQL1_uninstall.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $MYSQL_HOME
+#rm -rf $ELBA_TOP
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_configure.sh
new file mode 100755
index 00000000..604de026
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_configure.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING TOMCAT on $HOSTNAME"
+
+cp $OUTPUT_HOME/tomcat_conf/server.xml $CATALINA_HOME/conf/server.xml
+
+echo "DONE CONFIGURING TOMCAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_ignition.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_ignition.sh
new file mode 100755
index 00000000..88c62bec
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_ignition.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "STARTING TOMCAT on $HOSTNAME"
+
+cd $CATALINA_HOME/bin
+./startup.sh
+
+echo "TOMCAT IS RUNNING on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_install.sh
new file mode 100755
index 00000000..ddd52081
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_install.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING TOMCAT on $HOSTNAME"
+
+mkdir -p $BOTTLENECKS_TOP
+chmod 755 $BOTTLENECKS_TOP
+mkdir -p $RUBBOS_TOP
+chmod 755 $RUBBOS_TOP
+mkdir -p $RUBBOS_APP
+chmod 755 $RUBBOS_APP
+
+tar xzf $SOFTWARE_HOME/$TOMCAT_TARBALL --directory=$RUBBOS_APP
+tar xzf $SOFTWARE_HOME/$JAVA_TARBALL --directory=$RUBBOS_APP
+tar xzf $SOFTWARE_HOME/$J2EE_TARBALL --directory=$RUBBOS_APP
+tar xzf $SOFTWARE_HOME/$ANT_TARBALL --directory=$RUBBOS_APP
+
+echo "DONE INSTALLING TOMCAT on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_pkg_prepare.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_pkg_prepare.sh
new file mode 100755
index 00000000..7d01066f
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_pkg_prepare.sh
@@ -0,0 +1,59 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+. ../set_bottlenecks_rubbos_env.sh
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+# Packages for TOMCAT1 install
+if true; then
+ssh $TOMCAT1_HOST "mkdir -p /bottlenecks/rubbos/rubbos_scripts/1-1-1"
+scp $scp_options ../set_bottlenecks_rubbos_env.sh $TOMCAT1_HOST:/bottlenecks/rubbos/rubbos_scripts/1-1-1
+
+ssh $TOMCAT1_HOST "mkdir -p $SOFTWARE_HOME"
+
+for i in $TOMCAT_TARBALL $JAVA_TARBALL $J2EE_TARBALL $ANT_TARBALL
+do
+ scp $scp_options $SOFTWARE_HOME/$i $TOMCAT1_HOST:$SOFTWARE_HOME/$i
+done
+
+fi
+
+# Packages for TOMCAT1 rubbos install
+if true; then
+scp $scp_options $SOFTWARE_HOME/$RUBBOS_TARBALL $TOMCAT1_HOST:$SOFTWARE_HOME/$RUBBOS_TARBALL
+scp $scp_options $SOFTWARE_HOME/flush_cache $TOMCAT1_HOST:$SOFTWARE_HOME/flush_cache
+scp $scp_options $SOFTWARE_HOME/$SYSSTAT_TARBALL $TOMCAT1_HOST:$SOFTWARE_HOME/$SYSSTAT_TARBALL
+ssh $TOMCAT1_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+scp $scp_options $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $TOMCAT1_HOST:$OUTPUT_HOME/rubbos_conf/cpu_mem.sh
+fi
+
+# 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 $TOMCAT1_HOST:$OUTPUT_HOME/tomcat_conf/server.xml
+fi
+
+# Packages for TOMCAT1 rubbosSL configure
+if true; then
+ssh $TOMCAT1_HOST "mkdir -p $OUTPUT_HOME/rubbos_conf"
+sed -e "s#REPLACE_MYSQL1_HOST#$MYSQL1_HOST#g" \
+ $OUTPUT_HOME/rubbos_conf/mysql.properties_template \
+ > $OUTPUT_HOME/rubbos_conf/mysql.properties
+for i in build.properties mysql.properties build.xml Config.java web.xml
+do
+ scp $scp_options $OUTPUT_HOME/rubbos_conf/$i $TOMCAT1_HOST:$OUTPUT_HOME/rubbos_conf/$i
+done
+rm -rf $OUTPUT_HOME/rubbos_conf/mysql.properties
+
+ssh $TOMCAT1_HOST "mkdir -p $WORK_HOME/rubbos_files"
+scp $scp_options -r $WORK_HOME/rubbos_files/Servlets $TOMCAT1_HOST:$WORK_HOME/rubbos_files/Servlets
+fi
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbosSL_configure.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbosSL_configure.sh
new file mode 100755
index 00000000..764ae737
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbosSL_configure.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "CONFIGURING RUBBOS SERVLET on $HOSTNAME"
+
+\cp $OUTPUT_HOME/rubbos_conf/build.properties $RUBBOS_HOME/
+
+\cp -r $WORK_HOME/rubbos_files/Servlets $RUBBOS_HOME/
+\cp $OUTPUT_HOME/rubbos_conf/mysql.properties $RUBBOS_HOME/Servlets/
+\cp $OUTPUT_HOME/rubbos_conf/build.xml $RUBBOS_HOME/Servlets/
+\cp $OUTPUT_HOME/rubbos_conf/Config.java $RUBBOS_HOME/Servlets/edu/rice/rubbos/servlets/
+\cp $OUTPUT_HOME/rubbos_conf/web.xml $RUBBOS_HOME/Servlet_HTML/WEB-INF/
+
+cd $RUBBOS_HOME/Servlets/edu/rice/rubbos/servlets
+sed 's/public static final int BrowseCategoriesPoolSize = 6;/public static final int BrowseCategoriesPoolSize = 12;/g' Config.java > Config.java.tmp
+mv Config.java.tmp Config.java
+
+cd $RUBBOS_HOME/Servlets
+/bottlenecks/rubbos/app/apache-ant-1.6.5/bin/ant clean >/dev/null
+/bottlenecks/rubbos/app/apache-ant-1.6.5/bin/ant dist >/dev/null
+make >/dev/null 2>&1
+cp rubbos.war $CATALINA_HOME/webapps/
+
+echo "DONE CONFIGURING RUBBOS SERVLET on $HOSTNAME"
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_install.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_install.sh
new file mode 100755
index 00000000..e370cffa
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_install.sh
@@ -0,0 +1,37 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+mkdir -p $RUBBOS_APP
+# install RUBBoS
+tar xzf $SOFTWARE_HOME/$RUBBOS_TARBALL --directory=$RUBBOS_APP
+mkdir -p $RUBBOS_HOME/bench
+cp $SOFTWARE_HOME/flush_cache $RUBBOS_HOME/bench/.
+
+mkdir -p $SYSSTAT_HOME
+# install sysstat
+tar xzf $SOFTWARE_HOME/$SYSSTAT_TARBALL --directory=$RUBBOS_APP
+
+cd $SYSSTAT_HOME
+./configure --prefix=$SYSSTAT_HOME >/dev/null
+make >/dev/null 2>&1
+sudo make install >/dev/null
+
+# install a script to collect statistics data
+cp $OUTPUT_HOME/rubbos_conf/cpu_mem.sh $RUBBOS_APP/.
+chmod 755 $RUBBOS_APP/cpu_mem.sh
+
+echo "DONE INSTALLING RUBBOS/SYSSTAT on $HOSTNAME"
+
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_uninstall.sh
new file mode 100755
index 00000000..75eb561c
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_rubbos_uninstall.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+cd $SYSSTAT_HOME
+sudo make uninstall
+sudo rm -rf $SYSSTAT_HOME
+rm -rf $RUBBOS_HOME
+
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_stop.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_stop.sh
new file mode 100755
index 00000000..9e17d7c9
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_stop.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "STOPPING TOMCAT on $HOSTNAME"
+
+cd $CATALINA_HOME/bin
+./shutdown.sh
+
+echo "TOMCAT IS STOPPED on $HOSTNAME"
+
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_uninstall.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_uninstall.sh
new file mode 100755
index 00000000..06bffaef
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/TOMCAT1_uninstall.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+rm -rf $CATALINA_HOME
+
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/check_service_status.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/check_service_status.sh
new file mode 100755
index 00000000..8434be82
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/check_service_status.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+#ssh_options=""
+
+ssh root@$TOMCAT1_HOST service tomcat status
+ssh root@$HTTPD_HOST service apache2 status
+ssh root@$MYSQL1_HOST service mysql status
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/env_preparation.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/env_preparation.sh
new file mode 100755
index 00000000..6ecf4832
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/env_preparation.sh
@@ -0,0 +1,50 @@
+#!/bin/bash
+###############################################################################
+# Copyright (c) 2015 Huawei Tech.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+set -ex
+
+RELENG_REPO=https://gerrit.opnfv.org/gerrit/releng
+RELENG_REPO_DIR=/tmp/opnfvrepo/releng
+#RELENG_BRANCH=master # branch, tag, sha1 or refspec
+
+INSTALLER_TYPE=fuel
+INSTALLER_IP=10.20.0.2
+
+NODE_NAME=opnfv-jump-2
+EXTERNAL_NET=net04_ext
+
+echo "INFO: Creating openstack credentials .."
+
+if [ -d $RELENG_REPO_DIR ]; then
+ rm -rf ${RELENG_REPO_DIR}
+fi
+mkdir -p ${RELENG_REPO_DIR}
+git config --global http.sslVerify false
+git clone ${RELENG_REPO} ${RELENG_REPO_DIR}
+
+# Create openstack credentials
+$RELENG_REPO_DIR/utils/fetch_os_creds.sh \
+ -d /tmp/openrc \
+ -i ${INSTALLER_TYPE} -a ${INSTALLER_IP}
+
+source /tmp/openrc
+
+# FIXME: Temporary OPNFV playground hack
+if [ "$INSTALLER_TYPE" == "fuel" ]; then
+ ssh_opts="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
+ if sshpass -p r00tme ssh 2>/dev/null $ssh_opts root@${INSTALLER_IP} \
+ fuel environment --env 1 | grep opnfv-virt; then
+ echo "INFO: applying OPNFV playground hack"
+ export OS_ENDPOINT_TYPE='publicURL'
+ fi
+fi
+
+export EXTERNAL_NET INSTALLER_TYPE NODE_NAME
+set +ex
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/kill_all.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/kill_all.sh
new file mode 100755
index 00000000..f91b73fd
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/kill_all.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+$OUTPUT_HOME/scripts/stop_all.sh
+
+for i in "$BENCHMARK_HOST" "$CLIENT1_HOST" "$CLIENT2_HOST" "$CLIENT3_HOST" "$CLIENT4_HOST" "$HTTPD_HOST" "$TOMCAT1_HOST" "$MYSQL1_HOST"
+do
+ ssh $i "
+ kill -9 -1
+ "
+done
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/manualCleanup.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/manualCleanup.sh
new file mode 100755
index 00000000..94930eed
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/manualCleanup.sh
@@ -0,0 +1,84 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+echo "Uninstalling ...."
+
+ssh $BENCHMARK_HOST /tmp/BENCHMARK_uninstall.sh
+ssh $CLIENT1_HOST /tmp/CLIENT1_uninstall.sh
+ssh $CLIENT2_HOST /tmp/CLIENT2_uninstall.sh
+ssh $CLIENT3_HOST /tmp/CLIENT3_uninstall.sh
+ssh $CLIENT4_HOST /tmp/CLIENT4_uninstall.sh
+ssh $HTTPD_HOST /tmp/HTTPD_uninstall.sh
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_uninstall.sh
+ssh $MYSQL1_HOST /tmp/MYSQL1_uninstall.sh
+
+echo "Cleaning up ...."
+for i in "$BENCHMARK_HOST" "$CLIENT1_HOST" "$CLIENT2_HOST" "$CLIENT3_HOST" "$CLIENT4_HOST" "$HTTPD_HOST" "$TOMCAT1_HOST" "$MYSQL1_HOST"
+do
+ ssh $i "
+ sudo \rm -r $RUBBOS_TOP
+ "
+done
+
+
+ssh $CONTROL_HOST rm -f /tmp/CONTROL_checkScp_exec.sh
+ssh $CONTROL_HOST rm -f /tmp/CONTROL_emulabConf_exec.sh
+ssh $CONTROL_HOST rm -f /tmp/CONTROL_rubbos_exec.sh
+ssh $BENCHMARK_HOST rm -f /tmp/BENCHMARK_rubbos_install.sh
+ssh $BENCHMARK_HOST rm -f /tmp/BENCHMARK_install.sh
+ssh $BENCHMARK_HOST rm -f /tmp/BENCHMARK_configure.sh
+ssh $BENCHMARK_HOST rm -f /tmp/BENCHMARK_uninstall.sh
+ssh $BENCHMARK_HOST rm -f /tmp/BENCHMARK_rubbos_uninstall.sh
+ssh $CLIENT1_HOST rm -f /tmp/CLIENT1_rubbos_install.sh
+ssh $CLIENT1_HOST rm -f /tmp/CLIENT1_install.sh
+ssh $CLIENT1_HOST rm -f /tmp/CLIENT1_configure.sh
+ssh $CLIENT1_HOST rm -f /tmp/CLIENT1_uninstall.sh
+ssh $CLIENT1_HOST rm -f /tmp/CLIENT1_rubbos_uninstall.sh
+ssh $CLIENT2_HOST rm -f /tmp/CLIENT2_rubbos_install.sh
+ssh $CLIENT2_HOST rm -f /tmp/CLIENT2_install.sh
+ssh $CLIENT2_HOST rm -f /tmp/CLIENT2_configure.sh
+ssh $CLIENT2_HOST rm -f /tmp/CLIENT2_uninstall.sh
+ssh $CLIENT2_HOST rm -f /tmp/CLIENT2_rubbos_uninstall.sh
+ssh $CLIENT3_HOST rm -f /tmp/CLIENT3_rubbos_install.sh
+ssh $CLIENT3_HOST rm -f /tmp/CLIENT3_install.sh
+ssh $CLIENT3_HOST rm -f /tmp/CLIENT3_configure.sh
+ssh $CLIENT3_HOST rm -f /tmp/CLIENT3_uninstall.sh
+ssh $CLIENT3_HOST rm -f /tmp/CLIENT3_rubbos_uninstall.sh
+ssh $CLIENT4_HOST rm -f /tmp/CLIENT4_rubbos_install.sh
+ssh $CLIENT4_HOST rm -f /tmp/CLIENT4_install.sh
+ssh $CLIENT4_HOST rm -f /tmp/CLIENT4_configure.sh
+ssh $CLIENT4_HOST rm -f /tmp/CLIENT4_uninstall.sh
+ssh $CLIENT4_HOST rm -f /tmp/CLIENT4_rubbos_uninstall.sh
+ssh $HTTPD_HOST rm -f /tmp/HTTPD_install.sh
+ssh $HTTPD_HOST rm -f /tmp/HTTPD_rubbos_install.sh
+ssh $HTTPD_HOST rm -f /tmp/HTTPD_configure.sh
+ssh $HTTPD_HOST rm -f /tmp/HTTPD_ignition.sh
+ssh $HTTPD_HOST rm -f /tmp/HTTPD_stop.sh
+ssh $HTTPD_HOST rm -f /tmp/HTTPD_rubbos_uninstall.sh
+ssh $HTTPD_HOST rm -f /tmp/HTTPD_uninstall.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_install.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_rubbos_install.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_configure.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_rubbosSL_configure.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_ignition.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_stop.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_rubbos_uninstall.sh
+ssh $TOMCAT1_HOST rm -f /tmp/TOMCAT1_uninstall.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_install.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_rubbos_install.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_configure.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_reset.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_ignition.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_stop.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_rubbos_uninstall.sh
+ssh $MYSQL1_HOST rm -f /tmp/MYSQL1_uninstall.sh
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/reset_all.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/reset_all.sh
new file mode 100755
index 00000000..eeeab8b9
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/reset_all.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+ssh $MYSQL1_HOST /tmp/MYSQL1_reset.sh &
+sleep 120
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/run.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/run.sh
new file mode 100755
index 00000000..47cec3ad
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/run.sh
@@ -0,0 +1,153 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+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
+# Transfer all sub scripts to target hosts
+echo "*** scp scripts *************************************************"
+
+scp_options="-o StrictHostKeyChecking=no -o BatchMode=yes"
+
+scp $scp_options CONTROL_rubbos_exec.sh $CONTROL_HOST:/tmp
+
+if true; then
+for script in BENCHMARK_rubbos_install.sh BENCHMARK_install.sh \
+ BENCHMARK_configure.sh BENCHMARK_uninstall.sh \
+ BENCHMARK_rubbos_uninstall.sh
+do
+ scp $scp_options $script $BENCHMARK_HOST:/tmp
+done
+fi
+
+if true; then
+for i in {1..4}
+do
+ for script in CLIENT${i}_rubbos_install.sh CLIENT${i}_install.sh \
+ CLIENT${i}_configure.sh CLIENT${i}_uninstall.sh \
+ CLIENT${i}_rubbos_uninstall.sh
+ do
+ CLIENT_HOST=`printenv CLIENT${i}_HOST`
+ scp $scp_options $script $CLIENT_HOST:/tmp
+ done
+done
+fi
+
+if true; then
+for script in HTTPD_install.sh HTTPD_rubbos_install.sh \
+ HTTPD_configure.sh HTTPD_ignition.sh \
+ HTTPD_stop.sh HTTPD_rubbos_uninstall.sh \
+ HTTPD_uninstall.sh
+do
+ scp $scp_options $script $HTTPD_HOST:/tmp
+done
+fi
+
+if true; then
+for script in TOMCAT1_install.sh TOMCAT1_rubbos_install.sh \
+ TOMCAT1_configure.sh TOMCAT1_rubbosSL_configure.sh \
+ TOMCAT1_ignition.sh TOMCAT1_stop.sh \
+ TOMCAT1_rubbos_uninstall.sh TOMCAT1_uninstall.sh
+do
+ scp $scp_options $script $TOMCAT1_HOST:/tmp
+done
+fi
+
+if true; then
+for script in MYSQL1_install.sh MYSQL1_rubbos_install.sh \
+ MYSQL1_configure.sh MYSQL1_reset.sh \
+ MYSQL1_ignition.sh MYSQL1_stop.sh \
+ MYSQL1_rubbos_uninstall.sh \
+ MYSQL1_uninstall.sh
+do
+ scp $scp_options $script $MYSQL1_HOST:/tmp
+done
+fi
+
+# Prepare software packages
+echo "*** prepare software packages ***"
+./MYSQL1_pkg_prepare.sh
+./TOMCAT1_pkg_prepare.sh
+./HTTPD_pkg_prepare.sh
+./BENCHMARK_pkg_prepare.sh
+for i in {1..4}
+do
+ ./CLIENT${i}_pkg_prepare.sh
+done
+
+# Install and Configure and run Apache, Tomcat, CJDBC, and MySQL
+echo "*** install scripts & configure & execute ***********************"
+
+ssh root@$MYSQL1_HOST chmod 770 /tmp/MYSQL1_install.sh
+ssh $MYSQL1_HOST /tmp/MYSQL1_install.sh
+
+ssh root@$TOMCAT1_HOST chmod 770 /tmp/TOMCAT1_install.sh
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_install.sh
+
+ssh root@$HTTPD_HOST chmod 770 /tmp/HTTPD_install.sh
+ssh $HTTPD_HOST /tmp/HTTPD_install.sh
+
+ssh root@$MYSQL1_HOST chmod 770 /tmp/MYSQL1_rubbos_install.sh
+ssh $MYSQL1_HOST /tmp/MYSQL1_rubbos_install.sh
+
+ssh root@$TOMCAT1_HOST chmod 770 /tmp/TOMCAT1_rubbos_install.sh
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_rubbos_install.sh
+
+ssh root@$HTTPD_HOST chmod 770 /tmp/HTTPD_rubbos_install.sh
+ssh $HTTPD_HOST /tmp/HTTPD_rubbos_install.sh
+
+ssh root@$BENCHMARK_HOST chmod 770 /tmp/BENCHMARK_rubbos_install.sh
+ssh $BENCHMARK_HOST /tmp/BENCHMARK_rubbos_install.sh
+
+for i in {1..4}
+do
+ CLIENT_HOST=`printenv CLIENT${i}_HOST`
+ ssh root@$CLIENT_HOST chmod 770 /tmp/CLIENT${i}_rubbos_install.sh
+ ssh $CLIENT_HOST /tmp/CLIENT${i}_rubbos_install.sh
+done
+
+ssh root@$BENCHMARK_HOST chmod 770 /tmp/BENCHMARK_install.sh
+ssh $BENCHMARK_HOST /tmp/BENCHMARK_install.sh
+
+for i in {1..4}
+do
+ CLIENT_HOST=`printenv CLIENT${i}_HOST`
+ ssh root@$CLIENT_HOST chmod 770 /tmp/CLIENT${i}_install.sh
+ ssh $CLIENT_HOST /tmp/CLIENT${i}_install.sh
+done
+
+ssh root@$MYSQL1_HOST chmod 770 /tmp/MYSQL1_configure.sh
+ssh $MYSQL1_HOST /tmp/MYSQL1_configure.sh &
+sleep 60
+
+ssh root@$TOMCAT1_HOST chmod 770 /tmp/TOMCAT1_configure.sh
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_configure.sh
+
+ssh root@$HTTPD_HOST chmod 770 /tmp/HTTPD_configure.sh
+ssh $HTTPD_HOST /tmp/HTTPD_configure.sh
+
+ssh root@$BENCHMARK_HOST chmod 770 /tmp/BENCHMARK_configure.sh
+ssh $BENCHMARK_HOST /tmp/BENCHMARK_configure.sh
+
+for i in {1..4}
+do
+ CLIENT_HOST=`printenv CLIENT${i}_HOST`
+ ssh root@$CLIENT_HOST chmod 770 /tmp/CLIENT${i}_configure.sh
+ ssh $CLIENT_HOST /tmp/CLIENT${i}_configure.sh
+done
+
+ssh root@$TOMCAT1_HOST chmod 770 /tmp/TOMCAT1_rubbosSL_configure.sh
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_rubbosSL_configure.sh
+
+ssh $CONTROL_HOST /tmp/CONTROL_rubbos_exec.sh
+
+set +x
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/start_all.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/start_all.sh
new file mode 100755
index 00000000..e47b54d3
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/start_all.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+ssh $MYSQL1_HOST /tmp/MYSQL1_ignition.sh &
+sleep 20
+
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_ignition.sh
+sleep 10
+
+ssh $HTTPD_HOST /tmp/HTTPD_ignition.sh
+sleep 5
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/stop_all.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/stop_all.sh
new file mode 100755
index 00000000..8e57b2b2
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/scripts/stop_all.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+cd /bottlenecks/rubbos/rubbos_scripts/1-1-1
+source set_bottlenecks_rubbos_env.sh
+
+ssh $HTTPD_HOST /tmp/HTTPD_stop.sh
+
+ssh $TOMCAT1_HOST /tmp/TOMCAT1_stop.sh
+
+ssh $MYSQL1_HOST /tmp/MYSQL1_stop.sh
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh b/testsuites/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh
new file mode 100755
index 00000000..0d175eba
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/set_bottlenecks_rubbos_env.sh
@@ -0,0 +1,95 @@
+#!/bin/bash
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+set -o allexport
+
+# HOSTS
+CONTROL_HOST=REPLACE_CONTROL_HOST
+HTTPD_HOST=REPLACE_HTTPD_HOST
+MYSQL1_HOST=REPLACE_MYSQL1_HOST
+TOMCAT1_HOST=REPLACE_TOMCAT1_HOST
+CLIENT1_HOST=REPLACE_CLIENT1_HOST
+CLIENT2_HOST=REPLACE_CLIENT2_HOST
+CLIENT3_HOST=REPLACE_CLIENT3_HOST
+CLIENT4_HOST=REPLACE_CLIENT4_HOST
+BENCHMARK_HOST=REPLACE_BENCHMARK_HOST
+
+# Experiment name on OPNFV
+BOTTLNECKS_NAME=bottlenecks
+
+# Directories from which files are copied
+WORK_HOME=/bottlenecks/rubbos/rubbos_scripts/rubbosMulini6
+OUTPUT_HOME=/bottlenecks/rubbos/rubbos_scripts/1-1-1
+SOFTWARE_HOME=/bottlenecks/rubbos/app_tools
+
+# Output directory for results of RUBBoS benchmark
+RUBBOS_RESULTS_HOST=${CONTROL_HOST}
+RUBBOS_RESULTS_DIR_BASE=/bottlenecks/rubbos/rubbos_results
+RUBBOS_RESULTS_DIR_NAME=2015-01-20T081237-0700
+
+# Target directories
+BOTTLENECKS_TOP=/bottlenecks
+RUBBOS_TOP=$BOTTLENECKS_TOP/rubbos
+RUBBOS_APP=$RUBBOS_TOP/app
+TMP_RESULTS_DIR_BASE=$RUBBOS_TOP/tmp_results
+RUBBOS_HOME=$RUBBOS_APP/RUBBoS
+SYSSTAT_HOME=$RUBBOS_APP/sysstat-9.0.6
+
+HTTPD_HOME=$RUBBOS_APP/apache2
+HTTPD_INSTALL_FILES=$RUBBOS_APP/httpd-2.0.64
+MOD_JK_INSTALL_FILES=$RUBBOS_APP/tomcat-connectors-1.2.32-src
+MOD_JK_INSTALL_CONFIGURE=$MOD_JK_INSTALL_FILES/native
+CATALINA_HOME=$RUBBOS_APP/apache-tomcat-5.5.17
+SERVLET_API_PATH=$CATALINA_HOME/common/lib/servlet-api.jar
+CATALINA_BASE=$CATALINA_HOME
+CJDBC_HOME=
+
+MYSQL_HOME=$RUBBOS_APP/mysql-5.5.46-linux2.6-x86_64
+
+# Java & Ant
+JAVA_HOME=$RUBBOS_APP/jdk1.6.0_27
+JAVA_OPTS="-Xmx1300m"
+J2EE_HOME=$RUBBOS_APP/j2sdkee1.3.1
+ANT_HOME=$RUBBOS_APP/apache-ant-1.6.5
+
+# Tarballs
+JAVA_TARBALL=jdk1.6.0_27.tar.gz
+J2EE_TARBALL=j2sdkee1.3.1.jar.gz
+ANT_TARBALL=apache-ant-1.6.5.tar.gz
+SYSSTAT_TARBALL=sysstat-9.0.6.tar.gz
+HTTPD_TARBALL=httpd-2.0.64.tar.gz
+MOD_JK_TARBALL=tomcat-connectors-1.2.32-src.tar.gz
+TOMCAT_TARBALL=apache-tomcat-5.5.17.tar.gz
+CJDBC_TARBALL=
+MYSQL_TARBALL=mysql-5.5.46-linux2.6-x86_64.tar.gz
+RUBBOS_TARBALL=RUBBoS-servlets.tar.gz
+RUBBOS_DATA_TARBALL=rubbos_data.sql.tar.gz
+RUBBOS_DATA_SQL=rubbos_data.sql
+RUBBOS_DATA_TEXTFILES_TARBALL=smallDB-rubbos-modified.tgz
+
+# for MySQL
+MYSQL_CONNECTOR=mysql-connector-java-5.1.7-bin.jar
+MYSQL_PORT=3313
+MYSQL_SOCKET=$MYSQL_HOME/mysql.sock
+MYSQL_DATA_DIR=$MYSQL_HOME/data
+MYSQL_ERR_LOG=$MYSQL_HOME/data/mysql.log
+MYSQL_PID_FILE=$MYSQL_HOME/run/mysqld.pid
+
+# for DBs & C-JDBC
+ROOT_PASSWORD=new-password
+BOTTLENECKS_USER=mysql
+BOTTLENECKS_PASSWORD=mysql
+
+
+CLASSPATH=$CLASSPATH:$JONAS_ROOT/bin/unix/registry:$JAVA_HOME:$JAVA_HOME/lib/tools.jar:$SERVLET_API_PATH:.
+
+PATH=$JAVA_HOME/bin:$JONAS_ROOT/bin/unix:$ANT_HOME/bin:$CATALINA_HOME/bin:$PATH
+set +o allexport
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/sysstat_conf/CONFIG b/testsuites/rubbos/rubbos_scripts/1-1-1/sysstat_conf/CONFIG
new file mode 100644
index 00000000..24bfca3a
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/sysstat_conf/CONFIG
@@ -0,0 +1,46 @@
+
+# Configuration file for sysstat
+# (C) 2000-2006 Sebastien GODARD (sysstat <at> wanadoo.fr)
+
+# Directories
+PREFIX = /bottlenecks/rubbos/app/sysstat-9.0.6
+SA_LIB_DIR = /bottlenecks/rubbos/app/sysstat-9.0.6/lib/sa
+SADC_PATH = ${SA_LIB_DIR}/sadc
+SA_DIR = /bottlenecks/rubbos/app/sysstat-9.0.6/var/log/sa
+MAN_DIR = /bottlenecks/rubbos/app/sysstat-9.0.6/man
+CLEAN_SA_DIR = n
+YESTERDAY =
+HISTORY = 7
+
+DFLAGS =
+SAS_DFLAGS =
+
+ENABLE_NLS = y
+ENABLE_SMP_WRKARD = n
+
+ifeq ($(ENABLE_NLS),y)
+# NLS (National Language Support)
+REQUIRE_NLS = -DUSE_NLS -DPACKAGE=\"$(PACKAGE)\" -DLOCALEDIR=\"$(PREFIX)/share/locale\"
+endif
+ifdef REQUIRE_NLS
+ DFLAGS += $(REQUIRE_NLS)
+endif
+
+ifeq ($(ENABLE_SMP_WRKARD),y)
+# Uncomment this to enable workaround for Linux kernel SMP race condition
+SAS_DFLAGS += -DSMP_RACE
+endif
+
+# Man page group
+MAN_GROUP = man
+
+# Crontab owner
+CRON_OWNER = adm
+
+# Run-command directories
+RC_DIR = /etc
+INIT_DIR = /etc/init.d
+INITD_DIR = init.d
+
+INSTALL_CRON = n
+
diff --git a/testsuites/rubbos/rubbos_scripts/1-1-1/tomcat_conf/server.xml b/testsuites/rubbos/rubbos_scripts/1-1-1/tomcat_conf/server.xml
new file mode 100644
index 00000000..525c4398
--- /dev/null
+++ b/testsuites/rubbos/rubbos_scripts/1-1-1/tomcat_conf/server.xml
@@ -0,0 +1,79 @@
+
+<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"
+ type="org.apache.catalina.UserDatabase"
+ 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. -->
+ <!--
+ <Connector port="8082"
+ maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
+ 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>
+