Stackable Operator for Apache HBase
This is an Operator for Kubernetes that manages Apache HBase clusters. Apache HBase is an open-source, distributed, non-relational database that runs on top of the Hadoop Distributed File System (HDFS).
Follow the Getting started guide to learn how to install the Stackable Operator for Apache HBase as well as the dependencies. The Guide will also show you how to interact with HBase running on Kubernetes by creating tables and some data using the REST API or Apache Phoenix.
The Operator manages the HbaseCluster custom resource. You configure your HBase instance using this resource, and the Operator creates Kubernetes resources such as StatefulSets, ConfigMaps and Services accordingly.
HBase uses three roles:
For every RoleGroup a StatefulSet is created. Each StatefulSet can contain multiple replicas (Pods).
For every RoleGroup a Service is created, as well as one for the whole cluster that references the
For every Role and RoleGroup the Operator creates a Service.
A ConfigMap is created for each RoleGroup containing 3 files:
hbase-site.xml files generated from the HbaseCluster configuration (See Usage guide for more information), plus a
log4j.properties file used for Log aggregation.
The Operator creates a discovery ConfigMap for the whole HbaseCluster a which contains information on how to connect to the HBase cluster.
A distributed Apache HBase installation depends on a running Apache ZooKeeper and HDFS cluster. See the documentation for the Stackable Operator for Apache HDFS how to set up these clusters.
The hbase-hdfs-cycling-data demo shows how you can use HBase together with HDFS.