Add a common HBase lib in hdfs on cluster start

Registered by Trevor McKay

HBase applications written in Java require the Hbase classpath. Typically, a Java program will be run this way using /usr/bin/hbase to get the classpath:

java -cp `hbase classpath`:MyHbaseApp.jar MyHBaseApp

Java jobs launched from EDP are Oozie actions, and there is no way to set an extra classpath value. Instead, the Oozie solution to this problem is to create a shared library (a directory of JAR files) in hdfs and then set the "oozie.libpath" configuration property on the job to the location of the library. This causes Oozie to make all of the jars in the library available to the job.

Sahara currently supports setting the oozie.libpath configuration on a job. However, in the case of HBase there is no existing collection of JARs to point to. This blueprint proposes adding an option to create an HBase library in hdfs at cluster creation time for clusters that enable the HBase service.

Blueprint information

Status:
Complete
Approver:
Sergey Lukjanov
Priority:
Medium
Drafter:
Trevor McKay
Direction:
Approved
Assignee:
lu huichun
Definition:
Approved
Series goal:
Accepted for kilo
Implementation:
Implemented
Milestone target:
milestone icon 2015.1.0
Started by
Sergey Lukjanov
Completed by
Sergey Lukjanov

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/edp-add-hbase-lib,n,z

Addressed by: https://review.openstack.org/155899
    Add a common HBase lib in hdfs on cluster start

Addressed by: https://review.openstack.org/162657
    Add a common HBase lib in hdfs on cluster start

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.