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
regionServers. 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
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.