Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 2 additions & 6 deletions docs/antora.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
name: hbase
---
name: home
version: "nightly"
title: Stackable Operator for Apache HBase
nav:
- modules/getting_started/nav.adoc
- modules/ROOT/nav.adoc
prerelease: true
3 changes: 0 additions & 3 deletions docs/modules/ROOT/nav.adoc

This file was deleted.

3 changes: 0 additions & 3 deletions docs/modules/getting_started/nav.adoc

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
= First steps

Once you have followed the steps in the xref:installation.adoc[] section to install the operator and its dependencies, you will now deploy an HBase cluster and its dependencies. Afterwards you can <<_verify_that_it_works, verify that it works>> by creating tables and data in HBase using the REST API and Apache Phoenix (an SQL layer used to interact with HBase).
Once you have followed the steps in the xref:getting_started/installation.adoc[] section to install the operator and its dependencies, you will now deploy an HBase cluster and its dependencies. Afterwards you can <<_verify_that_it_works, verify that it works>> by creating tables and data in HBase using the REST API and Apache Phoenix (an SQL layer used to interact with HBase).

== Setup

Expand All @@ -9,30 +9,30 @@ Once you have followed the steps in the xref:installation.adoc[] section to inst
To deploy a ZooKeeper cluster create one file called `zk.yaml`:

[source,yaml]
include::example$code/zk.yaml[]
include::example$getting_started/zk.yaml[]

We also need to define a ZNode that will be used by the HDFS and HBase clusters to reference ZooKeeper. Create another file called `znode.yaml`:

[source,yaml]
include::example$code/znode.yaml[]
include::example$getting_started/znode.yaml[]

Apply both of these files:

[source]
include::example$code/getting_started.sh[tag=install-zk]
include::example$getting_started/getting_started.sh[tag=install-zk]

The state of the ZooKeeper cluster can be tracked with `kubectl`:

[source]
include::example$code/getting_started.sh[tag=watch-zk-rollout]
include::example$getting_started/getting_started.sh[tag=watch-zk-rollout]

=== HDFS

An HDFS cluster has three components: the `namenode`, the `datanode` and the `journalnode`. Create a file named `hdfs.yaml` defining 2 `namenodes` and one `datanode` and `journalnode` each:

[source,yaml]
----
include::example$code/hdfs.yaml[]
include::example$getting_started/hdfs.yaml[]
----

Where:
Expand All @@ -47,21 +47,21 @@ It should generally be safe to simply use the latest image version that is avail
Create the actual HDFS cluster by applying the file:

----
include::example$code/getting_started.sh[tag=install-hdfs]
include::example$getting_started/getting_started.sh[tag=install-hdfs]
----

Track the progress with `kubectl` as this step may take a few minutes:

[source]
include::example$code/getting_started.sh[tag=watch-hdfs-rollout]
include::example$getting_started/getting_started.sh[tag=watch-hdfs-rollout]

=== HBase

You can now create the HBase cluster. Create a file called `hbase.yaml` containing the following:

[source,yaml]
----
include::example$code/hbase.yaml[]
include::example$getting_started/hbase.yaml[]
----

== Verify that it works
Expand All @@ -71,7 +71,7 @@ To test the cluster you will use the REST API to check its version and status, a
First, check the cluster version with this callout:

[source]
include::example$code/getting_started.sh[tag=cluster-version]
include::example$getting_started/getting_started.sh[tag=cluster-version]

This will return the version that was specified in the HBase cluster definition:

Expand All @@ -81,7 +81,7 @@ This will return the version that was specified in the HBase cluster definition:
The cluster status can be checked and formatted like this:

[source]
include::example$code/getting_started.sh[tag=cluster-status]
include::example$getting_started/getting_started.sh[tag=cluster-status]

which will display cluster metadata that looks like this (only the first region is included for the sake of readability):

Expand Down Expand Up @@ -123,12 +123,12 @@ which will display cluster metadata that looks like this (only the first region
You can now create a table like this:

[source]
include::example$code/getting_started.sh[tag=create-table]
include::example$getting_started/getting_started.sh[tag=create-table]

This will create a table `users` with a single column family `cf`. Its creation can be verified by listing it:

[source]
include::example$code/getting_started.sh[tag=get-table]
include::example$getting_started/getting_started.sh[tag=get-table]

[source,json]
{
Expand All @@ -142,7 +142,7 @@ include::example$code/getting_started.sh[tag=get-table]
An alternative way to interact with HBase is to use the https://phoenix.apache.org/index.html[Phoenix] library that is pre-installed on the Stackable HBase image (in the /stackable/phoenix directory). Use the python utility `psql.py` (found in /stackable/phoenix/bin) to create, populate and query a table called `WEB_STAT`:

[source]
include::example$code/getting_started.sh[tag=phoenix-table]
include::example$getting_started/getting_started.sh[tag=phoenix-table]

The final command will display some grouped data like this:

Expand All @@ -156,7 +156,7 @@ Time: 0.017 sec(s)
Check the tables again with:

[source]
include::example$code/getting_started.sh[tag=get-table]
include::example$getting_started/getting_started.sh[tag=get-table]

This time the list includes not just `users` (created above with the REST API) and `WEB_STAT`, but several other tables too:

Expand Down Expand Up @@ -200,4 +200,4 @@ This is because Phoenix requires these `SYSTEM.` tables for its own internal map

== What's next

Look at the xref:ROOT:usage.adoc[Usage page] to find out more about configuring your HBase cluster.
Look at the xref:usage.adoc[Usage page] to find out more about configuring your HBase cluster.
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,5 @@ Resource sizing depends on cluster type(s), usage and scope, but as a starting p

The Guide is divided into two steps:

* xref:installation.adoc[Installing the Operators].
* xref:first_steps.adoc[Setting up the HBase cluster and verifying it works].
* xref:getting_started/installation.adoc[Installing the Operators].
* xref:getting_started/first_steps.adoc[Setting up the HBase cluster and verifying it works].
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@ After you have installed stackablectl run the following command to install all o

[source,bash]
----
include::example$code/getting_started.sh[tag=stackablectl-install-operators]
include::example$getting_started/getting_started.sh[tag=stackablectl-install-operators]
----

The tool will show

[source]
include::example$code/install_output.txt[]
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].
Expand All @@ -35,17 +35,17 @@ TIP: Consult the xref:stackablectl::quickstart.adoc[] to learn more about how to
You can also use Helm to install the operators. Add the Stackable Helm repository:
[source,bash]
----
include::example$code/getting_started.sh[tag=helm-add-repo]
include::example$getting_started/getting_started.sh[tag=helm-add-repo]
----

Then install the Stackable Operators:
[source,bash]
----
include::example$code/getting_started.sh[tag=helm-install-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.

== What's next

xref:first_steps.adoc[Set up an HBase cluster] and its dependencies and xref: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].
File renamed without changes.
File renamed without changes.
6 changes: 6 additions & 0 deletions docs/modules/hbase/partials/nav.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
* xref:hbase:getting_started/index.adoc[]
** xref:hbase:getting_started/installation.adoc[]
** xref:hbase:getting_started/first_steps.adoc[]
* xref:hbase:configuration.adoc[]
* xref:hbase:usage.adoc[]
* xref:hbase:discovery.adoc[]