MapR 4.1 Documentation : Installing HBase

This page contains the following topics:

Installing HBase in the Cluster

Plan which cluster nodes should run the HBase Master service, and which nodes should run the HBase RegionServer. At least one node (generally three nodes) should run the HBase Master; for example, install HBase Master on the ZooKeeper nodes. Only a few of the remaining nodes or all of the remaining nodes can run the HBase RegionServer. When you install HBase RegionServer on nodes that also run TaskTracker, reduce the number of map and reduce slots to avoid oversubscribing the machine. The following procedures use the operating system package managers to download and install from the MapR Repository. To install the packages manually, refer to Preparing Packages and Repositories.

To use Java 7 with HBase, set the value of the JAVA_HOME attribute in /opt/mapr/conf/env.sh to the location of your Java 7 JVM. Note that this change results in all other Hadoop and MapR Java daemons and code using the specified JVM.

Supported HBase Versions

To see which versions of HBase are supported in each MapR release, go to the Ecosystem Support Matrix.

To install HBase on an Ubuntu cluster:

Execute the following commands as root or using sudo.

  1. This procedure is to be performed on a MapR cluster. If you have not installed MapR, see the Advanced Installation Topics.
  2. Update the list of available packages:

    apt-get update
  3. On each planned HBase Master node, install mapr-hbase-master:

    apt-get install mapr-hbase-master
  4. On each planned HBase RegionServer node, install mapr-hbase-regionserver:

    apt-get install mapr-hbase-regionserver
  5. On all HBase nodes, run configure.sh with a list of the CLDB nodes and ZooKeeper nodes in the cluster.
  6. The warden picks up the new configuration and automatically starts the new services. When it is convenient, restart the warden:

    # service mapr-warden stop
    # service mapr-warden start
    

To install HBase on a Red Hat or CentOS cluster:

Execute the following commands as root or using sudo.

  1. On each planned HBase Master node, install mapr-hbase-master:

    yum install mapr-hbase-master
  2. On each planned HBase RegionServer node, install mapr-hbase-regionserver:

    yum install mapr-hbase-regionserver
  3. On all HBase nodes, run the configure.sh script with a list of the CLDB nodes and ZooKeeper nodes in the cluster.
  4. The warden picks up the new configuration and automatically starts the new services. When it is convenient, restart the warden:

    # service mapr-warden stop
    # service mapr-warden start
    

Installing HBase on a Client

To use the HBase shell from a machine outside the cluster, you can install HBase on a computer running the MapR client. For MapR client setup instructions, see Setting Up the Client.

Prerequisites:

  • The MapR client must be installed
  • You must know the IP addresses or hostnames of the ZooKeeper nodes on the cluster

To install HBase on a client computer:

Execute the following commands as root or using sudo.

  1. On the client computer, install mapr-hbase:
    • CentOS or Red Hat: yum install mapr-hbase
    • Ubuntu: apt-get install mapr-hbase
  2. On all HBase nodes, run configure.sh with a list of the CLDB nodes and ZooKeeper nodes in the cluster.

Installing Additional HBase Services and Libraries

Based on the HBase version that you installed, you may also want to install the following HBase Services and Libraries:

ServiceDescriptionMapR Package Available with HBase Version
HBase Thrift Gateway

HBase Thrift Gateway includes an API and a service that accepts Thrift requests to connect to HBase tables or MapR-DB tables. For information on installation and configuration, see Using the HBase Thrift Gateway.

0.94.17 and above.
HBase REST GatewayHBase REST Gateway includes an API and a service that accepts REST requests to connect to HBase tables or MapR-DB tables. For information on installation and configuration, see Using the HBase REST Gateway,0.98.9 and above
libhbase Librarieslibhbase is a JNI-based, thread-safe C library that implements a native HBase client. For information on installation and configuration, see Using the libhbase Libraries.0.98.7 and above
AsyncHBase LibrariesAsyncHBase library provides asynchronous Java APIs to access HBase tables or MapR-DB tables. For information on installation and configuration, see Using the AsyncHBase Library.1.4.1 and above