| <!--- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| Create Slider App Package for HBase |
| |
| While appConfig.json and resources.json are not required for the package they |
| work well as the default configuration for Slider apps. So it is advisable that |
| when you create an application package for Slider, include sample/default |
| resources.json and appConfig.json for a minimal Yarn cluster. |
| |
| OPTION-I: Use mvn command |
| OPTION-II: Manual |
| |
| ****** OPTION - I (use mvn command) ** |
| You need the HBase version available on local maven repo to create the Slider App Package for HBase. |
| |
| The version of HBase used for the app package can be adjusted by adding a |
| flag such as |
| -Dhbase.version=0.98.3 |
| |
| Download the tarball for HBase: |
| e.g. path to tarball ~/Downloads/hbase-0.98.3-hadoop2-bin.tar.gz |
| |
| Use the following command to install HBase tarball locally: |
| mvn install:install-file -Dfile=<path-to-tarball> -DgroupId=org.apache.hbase -DartifactId=hbase -Dversion=0.98.3-hadoop2 -Dclassifier=bin -Dpackaging=tar.gz |
| |
| You may need to copy the hbase tarball to the following location if the above step doesn't publish the tarball: |
| ~/.m2/repository/org/apache/hbase/hbase/0.98.3-hadoop2/ |
| |
| After HBase tarball is published locally in maven repository, you can use the following command: |
| mvn clean package -DskipTests -Phbase-app-package |
| |
| App package can be found in |
| app-packages/hbase/target/apache-slider-hbase-${hbase.version}-app-package-${slider.version}.zip |
| |
| Verify the content using |
| zip -Tv apache-slider-hbase-*.zip |
| |
| If an HBase version older than 0.98.3 is desired, it must be installed in the local maven repo. |
| |
| A less descriptive file name can be specified with |
| -Dapp.package.name=HBase_98dot3 which would create a file HBase_98dot3.zip. |
| |
| ****** OPTION - II (manual) ** |
| The Slider App Package for HBase can also be created manually. |
| |
| Download the tarball for HBase: |
| e.g. path to tarball ~/Downloads/hbase-0.98.3-hadoop2-bin.tar.gz |
| |
| Copy the hbase tarball to package/files |
| cp ~/Downloads/hbase-0.98.3-hadoop2-bin.tar.gz package/files |
| |
| Edit appConfig.json/metainfo.xml |
| Replace 4 occurrences of "${hbase.version}" with the hbase version values such as "0.98.3-hadoop2" |
| Replace 1 occurrence of "${app.package.name}" with the desired app package name, e.g. "hbase-v098" |
| |
| Create a zip package at the root of the package (<slider enlistment>/app-packages/hbase/) |
| zip -r hbase-v098.zip . |
| |
| Verify the content using |
| zip -Tv hbase-v098.zip |