Skip to content

Commit

Permalink
Initial commit (#397)
Browse files Browse the repository at this point in the history
  • Loading branch information
Techassi authored Sep 21, 2023
1 parent 1086cc6 commit bead171
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 21 deletions.
21 changes: 12 additions & 9 deletions docs/modules/hbase/pages/getting_started/installation.adoc
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
= Installation

On this page you will install the Stackable HBase operator and its dependencies, the ZooKeeper and HDFS operators, as well as the commons and secret operators which are required by all Stackable operators.
On this page you will install the Stackable HBase operator and its dependencies, the ZooKeeper and HDFS operators, as
well as the commons and secret operators which are required by all Stackable operators.

== Stackable Operators

There are 2 ways to run Stackable operators

1. Using xref:stackablectl::index.adoc[]

2. Using Helm
. Using xref:management:stackablectl:index.adoc[]
. Using Helm

=== stackablectl

stackablectl is the command line tool to interact with Stackable operators and our recommended way to install operators.
Follow the xref:stackablectl::installation.adoc[installation steps] for your platform.
`stackablectl` is the command line tool to interact with Stackable operators and our recommended way to install
operators. Follow the xref:management:stackablectl:installation.adoc[installation steps] for your platform.

After you have installed stackablectl run the following command to install all operators necessary for the HBase cluster:

Expand All @@ -28,7 +28,8 @@ The tool will show
include::example$getting_started/install_output.txt[]


TIP: Consult the xref:stackablectl::quickstart.adoc[] to learn more about how to use stackablectl. For example, you can use the `-k` flag to create a Kubernetes cluster with link:https://kind.sigs.k8s.io/[kind].
TIP: Consult the xref:management:stackablectl:quickstart.adoc[] to learn more about how to use `stackablectl`. For
example, you can use the `--cluster kind` flag to create a Kubernetes cluster with link:https://kind.sigs.k8s.io/[kind].

=== Helm

Expand All @@ -44,8 +45,10 @@ Then install the Stackable Operators:
include::example$getting_started/getting_started.sh[tag=helm-install-operators]
----

Helm will deploy the operators in a Kubernetes Deployment and apply the CRDs for the HBase cluster (as well as the CRDs for the required operators). You are now ready to deploy HBase in Kubernetes.
Helm will deploy the operators in a Kubernetes Deployment and apply the CRDs for the HBase cluster (as well as the CRDs
for the required operators). You are now ready to deploy HBase in Kubernetes.

== What's next

xref:getting_started/first_steps.adoc[Set up an HBase cluster] and its dependencies and xref:getting_started/first_steps.adoc#_verify_that_it_works[verify that it works].
xref:getting_started/first_steps.adoc[Set up an HBase cluster] and its dependencies and
xref:getting_started/first_steps.adoc#_verify_that_it_works[verify that it works].
34 changes: 22 additions & 12 deletions docs/modules/hbase/pages/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,37 +2,47 @@
:description: The Stackable Operator for Apache HBase is a Kubernetes operator that can manage Apache HBase clusters. Learn about its features, resources, dependencies, and demos, and see the list of supported HBase versions.
:keywords: Stackable Operator, Apache HBase, Kubernetes, operator, engineer, CRD, StatefulSet, ConfigMap, Service, ZooKeeper, HDFS

This is an Operator for Kubernetes that manages https://hbase.apache.org/[Apache HBase] clusters.
Apache HBase is an open-source, distributed, non-relational database that runs on top of the Hadoop Distributed File System (HDFS).
This is an Operator for Kubernetes that manages https://hbase.apache.org/[Apache HBase] clusters. Apache HBase is an
open-source, distributed, non-relational database that runs on top of the Hadoop Distributed File System (HDFS).

== Getting started

Follow the xref:getting_started/index.adoc[] guide to learn how to xref:getting_started/installation.adoc[install] the Stackable Operator for Apache HBase as well as the dependencies. The Guide will also show you how to xref:getting_started/first_steps.adoc[interact] with HBase running on Kubernetes by creating tables and some data using the REST API or Apache Phoenix.
Follow the xref:getting_started/index.adoc[] guide to learn how to xref:getting_started/installation.adoc[install] the
Stackable Operator for Apache HBase as well as the dependencies. The Guide will also show you how to
xref:getting_started/first_steps.adoc[interact] with HBase running on Kubernetes by creating tables and some data using
the REST API or Apache Phoenix.

The xref:usage-guide/index.adoc[] contains more information on xref:usage-guide/phoenix.adoc[] as well as other topics such as xref:usage-guide/resource-requests.adoc[CPU and memory configuration], xref:usage-guide/monitoring.adoc[] and xref:usage-guide/logging.adoc[].
The xref:usage-guide/index.adoc[] contains more information on xref:usage-guide/phoenix.adoc[] as well as other topics
such as xref:usage-guide/resource-requests.adoc[CPU and memory configuration], xref:usage-guide/monitoring.adoc[] and
xref:usage-guide/logging.adoc[].

== Operator model

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.
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 xref:concepts:roles-and-role-groups.adoc[roles]: `masters`, `regionServers` and `restServers`.

image::hbase_overview.drawio.svg[A diagram depicting the Kubernetes resources created by the operator]

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**.
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-env.sh` and `hbase-site.xml` files generated from the HbaseCluster configuration (See xref:usage-guide/index.adoc[] for more information), plus a `log4j.properties` file used for xref:usage-guide/logging.adoc[].
The Operator creates a **xref:usage-guide/discovery.adoc[discovery ConfigMap]** for the whole HbaseCluster a which contains information on how to connect to the HBase cluster.
A **ConfigMap** is created for each RoleGroup containing 3 files: `hbase-env.sh` and `hbase-site.xml` files generated
from the HbaseCluster configuration (See xref:usage-guide/index.adoc[] for more information), plus a `log4j.properties`
file used for xref:usage-guide/logging.adoc[]. The Operator creates a
**xref:usage-guide/discovery.adoc[discovery ConfigMap]** for the whole HbaseCluster a which contains information on how
to connect to the HBase cluster.

== Dependencies

A distributed Apache HBase installation depends on a running Apache ZooKeeper and HDFS cluster. See the documentation for the xref:hdfs:index.adoc[Stackable Operator for Apache HDFS] how to set up these clusters.
A distributed Apache HBase installation depends on a running Apache ZooKeeper and HDFS cluster. See the documentation
for the xref:hdfs:index.adoc[Stackable Operator for Apache HDFS] how to set up these clusters.

== Demo

The xref:stackablectl::demos/hbase-hdfs-load-cycling-data.adoc[] demo shows how you can use HBase together with HDFS.
The xref:demos:hbase-hdfs-load-cycling-data.adoc[] demo shows how you can use HBase together with HDFS.

== Supported Versions

Expand Down

0 comments on commit bead171

Please sign in to comment.