Building HBase - linux-on-ibm-z/docs GitHub Wiki
Building HBase
The instructions provided below specify the steps to build HBase version 2.6.5 on Linux on IBM Z for following distributions:
- RHEL (8.10, 9.6, 9.7, 10.0, 10.1)
- SLES (15 SP7, 16)
- Ubuntu (22.04, 24.04, 25.10)
General Notes:
- When following the steps below please use a standard permission user unless otherwise specified.
- A directory
/<source_root>/will be referred to in these instructions, this is a temporary writable directory anywhere you'd like to place it.
1. Download and Install HBase
export SOURCE_ROOT=/<source_root>/
1.1. Install prerequisites
- RHEL (8.10, 9.6, 9.7, 10.0, 10.1)
sudo yum install -y git wget tar make gcc hostname curl
- SLES (15 SP7, 16)
sudo zypper install -y git wget tar make gcc gawk gzip hostname curl
- Ubuntu (22.04, 24.04, 25.10)
sudo apt update
sudo apt-get install -y git wget tar make gcc hostname curl
1.2. Install JDK
-
With Eclipse Adoptium Temurin Runtime (previously known as AdoptOpenJDK hotspot)
- Download and install Eclipse Adoptium Temurin Runtime (Java 11 or 17) on all above mentioned distribution (except ub25.10) from here.
-
With OpenJDK
-
RHEL (8.10, 9.6, 9.7)
- Java 8
sudo yum install -y java-1.8.0-openjdk-devel- Java 11
sudo yum install -y java-11-openjdk-devel- Java 17
sudo yum install -y java-17-openjdk-devel -
SLES 15 SP7, 16
- Java 8 # not supported on sles 16
sudo zypper install -y java-1_8_0-openjdk-devel- Java 11 # not supported on sles 16
sudo zypper install -y java-11-openjdk-devel- Java 17
sudo zypper install -y java-17-openjdk-devel -
Ubuntu (22.04, 24.04, 25.10)
- Java 8 # not supported on ub25.10
sudo apt-get install -y openjdk-8-jdk- Java 11
sudo apt-get install -y openjdk-11-jdk- Java 17
sudo apt-get -y install openjdk-17-jdk
-
1.3. Download the HBase binary
cd $SOURCE_ROOT
wget https://archive.apache.org/dist/hbase/2.6.5/hbase-2.6.5-bin.tar.gz
tar zxf hbase-2.6.5-bin.tar.gz
export PATH=$SOURCE_ROOT/hbase-2.6.5/bin:$PATH
1.4. Set the environment
export JAVA_HOME=<path to Java installation directory>
export PATH=$JAVA_HOME/bin:$PATH
2. Verification (optional)
Use the following commands to run HBase server:
cd hbase-2.6.5/bin
./start-hbase.sh
The HBase Web UI could be accessed from http://<IP or domain name of the host>:16010 after HBase server is successfully started.
Then use the following command to run hbase shell:
./hbase shell
The output should contain logs similar to:
Version 2.6.5, r0255064e5ed1b34c55a5392cd65829fac7a7ab1f, Sun Mar 15 15:40:55 PDT 2026
In hbase shell console, type in the following commands:
2.6.5, r0255064e5ed1b34c55a5392cd65829fac7a7ab1f, Sun Mar 15 15:40:55 PDT 2026
Took 0.0004 seconds
hbase:001:0> create 'test', 'cf'
Created table test
Took 9.4236 seconds
=> Hbase::Table - test
hbase:002:0> list 'test'
TABLE
test
1 row(s)
Took 0.0183 seconds
=> ["test"]
hbase:003:0> put 'test', 'row1', 'cf:a', 'value1'
Took 0.1306 seconds
hbase:004:0> put 'test', 'row2', 'cf:b', 'value2'
Took 0.0037 seconds
hbase:005:0> put 'test', 'row3', 'cf:c', 'value3'
Took 0.0018 seconds
hbase:006:0> put 'test', 'row4', 'cf:d', 'value4'
Took 0.0021 seconds
hbase:007:0> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=2026-04-30T07:43:44.804, value=value1
row2 column=cf:b, timestamp=2026-04-30T07:43:44.820, value=value2
row3 column=cf:c, timestamp=2026-04-30T07:43:44.826, value=value3
row4 column=cf:d, timestamp=2026-04-30T07:43:44.834, value=value4
4 row(s)
Took 0.0327 seconds
hbase:008:0> get 'test', 'row1'
COLUMN CELL
cf:a timestamp=2026-04-30T07:43:44.804, value=value1
1 row(s)
Took 0.0167 seconds
hbase:009:0> disable 'test'
Took 0.6600 seconds
hbase:010:0> enable 'test'
Took 0.6484 seconds
hbase:011:0> exit
If your session looks similar to the above, congrats, your standalone HBase server is operational!
Use the following commands to stop HBase server:
./stop-hbase.sh