#!/usr/bin/env bash # #/** # * 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. # */ # # Run a hbase command on all slave hosts. # Modelled after $HADOOP_HOME/bin/hadoop-daemons.sh usage="Usage: hbase-daemons.sh [--config ] [--autostart-window-size ]\ [--autostart-window-retry-limit ] \ [--hosts regionserversfile] [autostart|autorestart|restart|start|stop] command args..." # if no args specified, show usage if [ $# -le 1 ]; then echo $usage exit 1 fi bin=`dirname "${BASH_SOURCE-$0}"` bin=`cd "$bin">/dev/null; pwd` # default autostart args value indicating infinite window size and no retry limit AUTOSTART_WINDOW_SIZE=0 AUTOSTART_WINDOW_RETRY_LIMIT=0 . $bin/hbase-config.sh if [[ "$1" = "autostart" || "$1" = "autorestart" ]] then autostart_args="--autostart-window-size ${AUTOSTART_WINDOW_SIZE} --autostart-window-retry-limit ${AUTOSTART_WINDOW_RETRY_LIMIT}" fi remote_cmd="$bin/hbase-daemon.sh --config ${HBASE_CONF_DIR} ${autostart_args} $@" args="--hosts ${HBASE_REGIONSERVERS} --config ${HBASE_CONF_DIR} $remote_cmd" command=$2 case $command in (zookeeper) exec "$bin/zookeepers.sh" $args ;; (master-backup) exec "$bin/master-backup.sh" $args ;; (*) exec "$bin/regionservers.sh" $args ;; esac