| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. |
| # The ASF licenses this file to You under the Apache License, Version 2.0 |
| # (the "License"); you may not use this file except in compliance with |
| # the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # General |
| # ======= |
| |
| ## Hadoop installation |
| export HADOOP_HOME="${HADOOP_HOME:-/path/to/hadoop}" |
| ## Accumulo installation |
| export ACCUMULO_HOME="${ACCUMULO_HOME:-/path/to/accumulo}" |
| ## Path to Accumulo client properties |
| export ACCUMULO_CLIENT_PROPS="$ACCUMULO_HOME/conf/accumulo-client.properties" |
| |
| # Configuration |
| # ============= |
| conf_dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) |
| export TEST_PROPS="${conf_dir}/accumulo-testing.properties" |
| if [ ! -f "$TEST_PROPS" ]; then |
| echo "Please create and edit accumulo-testing.properties in $conf_dir" |
| exit 1 |
| fi |
| export TEST_LOG4J="${conf_dir}/log4j.properties" |
| if [ ! -f "$TEST_LOG4J" ]; then |
| export TEST_LOG4J="${conf_dir}/log4j.properties.example" |
| if [ ! -f "$TEST_LOG4J" ]; then |
| echo "Could not find logj4.properties or log4j.properties.example in $conf_dir" |
| exit 1 |
| fi |
| fi |
| |
| # Shaded test jar |
| # =============== |
| # Versions set below will be what is included in the shaded jar |
| export ACCUMULO_VERSION="`$ACCUMULO_HOME/bin/accumulo version`" |
| export HADOOP_VERSION="`hadoop version | head -n1 | awk '{print $2}'`" |
| export ZOOKEEPER_VERSION=3.4.9 |
| # Path to shaded test jar |
| at_home=$( cd "$( dirname "$conf_dir" )" && pwd ) |
| export TEST_JAR_PATH="${at_home}/target/accumulo-testing-shaded.jar" |
| if [[ ! -f "$TEST_JAR_PATH" ]]; then |
| echo "Building $TEST_JAR_PATH" |
| cd "${at_home}" || exit 1 |
| mvn clean package -P create-shade-jar -D skipTests -D accumulo.version="$ACCUMULO_VERSION" -D hadoop.version="$HADOOP_VERSION" -D zookeeper.version="$ZOOKEEPER_VERSION" |
| fi |
| |
| # Hadoop jars |
| # =========== |
| export HADOOP_API_JAR="${at_home}"/target/dependency/hadoop-client-api.jar |
| export HADOOP_RUNTIME_JAR="${at_home}"/target/dependency/hadoop-client-runtime.jar |
| if [[ ! -f "$HADOOP_API_JAR" || ! -f "$HADOOP_RUNTIME_JAR" ]]; then |
| mvn dependency:copy-dependencies -Dmdep.stripVersion=true -DincludeArtifactIds=hadoop-client-api,hadoop-client-runtime -Dhadoop.version="$HADOOP_VERSION" |
| fi |
| |
| # Agitator |
| # ======== |
| # Accumulo user |
| AGTR_ACCUMULO_USER=$(whoami) |
| # Time (in minutes) between killing Accumulo masters |
| AGTR_MASTER_KILL_SLEEP_TIME=60 |
| AGTR_MASTER_RESTART_SLEEP_TIME=2 |
| # Time (in minutes) between killing Accumulo tservers |
| AGTR_TSERVER_KILL_SLEEP_TIME=20 |
| AGTR_TSERVER_RESTART_SLEEP_TIME=10 |
| # Min and max number of Accumulo tservers that the agitator will kill at once |
| AGTR_TSERVER_MIN_KILL=1 |
| AGTR_TSERVER_MAX_KILL=1 |
| # Amount of time (in minutes) the agitator should sleep before killing datanodes |
| AGTR_DATANODE_KILL_SLEEP_TIME=20 |
| # Amount of time (in minutes) the agitator should wait before restarting datanodes |
| AGTR_DATANODE_RESTART_SLEEP_TIME=10 |
| # Min and max number of datanodes the agitator will kill at once |
| AGTR_DATANODE_MIN_KILL=1 |
| AGTR_DATANODE_MAX_KILL=1 |
| # HDFS agitation |
| AGTR_HDFS_USER=$(whoami) |
| AGTR_HDFS=false |
| AGTR_HDFS_SLEEP_TIME=10 |
| AGTR_HDFS_SUPERUSER=hdfs |
| AGTR_HDFS_COMMAND="${HADOOP_PREFIX:-/usr/lib/hadoop}/share/hadoop/hdfs/bin/hdfs" |
| AGTR_HDFS_SUDO=$(which sudo) |