3. Add HBase RegionServer

Use the following instructions to manually add HBase RegionServer hosts:

  • On each of the new slave nodes, install HBase and ZooKeeper.

    • For RHEL/CentOS/Oracle Linux:

      yum install zookeeper hbase 
    • For SLES:

      zypper install zookeeper hbase 
    • For Ubuntu:

      apt-get install zookeeper hbase 
  • On each of the new slave nodes, add the HDP repository to yum:

    • RHEL/CentOS/Oracle Linux 5.x:

      wget -nv http://public-repo-1.hortonworks.com/HDP/centos5/2.x/updates/2.2.6.0/hdp.repo -O /etc/yum.repos.d/hdp.repo 
    • RHEL/CentOS/Oracle Linux 6.x

      wget -nv http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.2.6.0/hdp.repo -O /etc/yum.repos.d/hdp.repo 
    • SLES SP1:

      wget -nv http://public-repo-1.hortonworks.com/HDP/sles11sp1/2.x/updates/2.2.6.0/hdp.repo -O /etc/zypp/repos.d/hdp.repo 
    • SLES SP3/SP4:

      wget -nv http://public-repo-1.hortonworks.com/HDP/suse11sp3/2.x/updates/2.2.6.0/hdp.repo -O /etc/zypp/repos.d/hdp.repo 
    • Ubuntu 12:

      wget http://public-repo-1.hortonworks.com/HDP/ubuntu12/2.x/updates/2.2.6.0/hdp.list -O /etc/apt/sources.list.d/hdp.list 
    • Debian 6:

      wget http://public-repo-1.hortonworks.com/HDP/debian6/2.x/updates/2.2.6.0/hdp.list -O /etc/apt/sources.list.d/hdp.list 
  • Copy the HBase configurations to the new slave nodes and set appropriate permissions.

    • Option I: Copy HBase config files from an existing slave node.

      • On any existing slave node, make a copy of the current configurations:

        tar zcvf hbase_conf.tgz /etc/hbase/conf 
        tar zcvf zookeeper_conf.tgz /etc/zookeeper/conf 
      • Copy these files to each of the new nodes:

        rm -rf /etc/hbase/conf
        mkdir -p /etc/hbase/conf
        cd /
        tar zxvf $location_of_copied_conf_tar_file/hbase_conf.tgz
        chmod -R 755 /etc/hbase/conf
        rm -rf /etc/zookeeper/conf
        mkdir -p /etc/zookeeper/conf
        cd /
        tar zxvf $location_of_copied_conf_tar_file/zookeeper_conf.tgz
        chmod -R 755 /etc/zookeeper/conf
    • Option II: Manually add Hadoop configuration files as described in "Set Up the Configuration Files", in Installing HDP Manually.

  • On all of the new slave nodes, create the configuration directory, copy all of the configuration files, and set the permissions:

    rm -r $HBASE_CONF_DIR ;
    mkdir -p $HBASE_CONF_DIR ;

    Copy all of the configuration files to $HBASE_CONF_DIR

    chmod a+x $HBASE_CONF_DIR/;
    chown -R $HBASE_USER:$HADOOP_GROUP $HBASE_CONF_DIR/../ ;
    chmod -R 755 $HBASE_CONF_DIR/../
    rm -r $ZOOKEEPER_CONF_DIR ;
    mkdir -p $ZOOKEEPER_CONF_DIR ;

    Copy all of the configuration files to $ZOOKEEPER_CONF_DIR

    chmod a+x $ZOOKEEPER_CONF_DIR/;
    chown -R $ZOOKEEPER_USER:$HADOOP_GROUP $ZOOKEEPER_CONF_DIR/../ ;
    chmod -R 755 $ZOOKEEPER_CONF_DIR/../

    where:

    • $HBASE_CONF_DIR is the directory to store the HBase configuration files. For example, /etc/hbase/conf.

    • $HBASE_USER is the user owning the HBase services. For example, hbase.

    • $HADOOP_GROUP is a common group shared by services. For example, hadoop.

    • $ZOOKEEPER_CONF_DIR is the directory to store the ZooKeeper configuration files. For example, /etc/zookeeper/conf

    • $ZOOKEEPER_USER is the user owning the ZooKeeper services. For example, zookeeper.

  • Start HBase RegionServer node:

    <login as $HBASE_USER>
    /usr/lib/hbase/bin/hbase-daemon.sh --config $HBASE_CONF_DIR start regionserver
  • On the HBase Master host machine, edit the /usr/lib/hbase/conf file and add the list of slave nodes' hostnames. The hostnames must be separated by a newline character.