Skip to content

Latest commit

 

History

History
120 lines (77 loc) · 3.57 KB

README.md

File metadata and controls

120 lines (77 loc) · 3.57 KB

Docker-Hbase-Phoenix

Docker version for Hbase 1.3.6 cluster using Hadoop 2.7.4

Services

This version includes Phoenix 4.14.3 connected to cluster through Zookeeper 3.4.10

Queryserver

The Phoenix queryserver allows to query HBase using the python-phoenixdb driver to easily send SQL queries and fetch data to the python side.

Detail

This cluster uses HDFS to store data in a distributed environment.

Docker Images

Standalone

This configuration has no support for Phoenix

Run the build command to prepare the standalone image:

make standalone

To run standalone hbase:

docker-compose -f docker-compose-standalone.yml up -d

The deployment is the same as in quickstart HBase documentation. Can be used for testing/development, connected to Hadoop cluster.

Local distributed

Steps to run a local distributed Hbase cluster with a Phoenix service

Requisites

Run the build command to prepare cluster images:

make build

or create them separately:

Build the base version of Hbase 1.3.6
This image will serve to launch hbase-master and hbase-regionserver containers

cd base
docker build -t hbase-1.3.6 .

Once the base HBase image is built, proceed to create master and regionserver images:

cd hmaster
docker build -t hbase-master-1.3.6 .

cd ../hregionserver
docker build -t hbase-regionserver-1.3.6 .

Build the Apache Phoenix image for the queryserver

cd phoenix
docker build -t phoenix-4.14.3 .

Running

docker-compose -f docker-compose-distributed-local-with-phoenix.yml up -d

This deployment will start Zookeeper, HMaster and HRegionserver in separate containers.

Distributed

To run distributed hbase on docker swarm see this doc

Zeppelin

Using Zeppelin 0.8.0
Start Zeppelin and create a Phoenix interpreter pointing to the Phoenix container.

Configuration

Phoenix Interpreter config:

Phoenix Interpreter

Reference:

Troubleshooting

In case to find connection issues among your instances, have a look at: