You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Ivan Veselovsky (JIRA)" <ji...@apache.org> on 2015/03/13 20:23:38 UTC
[jira] [Created] (IGNITE-483) Simplify Hadoop "ignition"
Ivan Veselovsky created IGNITE-483:
--------------------------------------
Summary: Simplify Hadoop "ignition"
Key: IGNITE-483
URL: https://issues.apache.org/jira/browse/IGNITE-483
Project: Ignite
Issue Type: Task
Reporter: Ivan Veselovsky
Currently in Ignite we have setup-hadoop script + java class to replace configs and create symlinks to Ignite libraries.
This setup script and Ignite launcher script have many dependencies on the Hadoop distribution layout (files, configs, etc.)
I suggest to simplify this:
1) It seems to me that *no* symlink and/or library copying needed at all. Instead, to make hadoop client work via Ignite, we can use the following wrapper around the default hadoop client launcher script:
file "hadoop-ignited" :
-----------------------------------------------
# Ignite home is needed to allow Ignite libraries to find the logger config (it is resolved relative to the Ignite home):
export IGNITE_HOME=/home/ignite/ignite-hadoop-1.0.0-RC3-SNAPSHOT
# Add necessary Ignite libraries to the Hadoop client classpath:
export HADOOP_CLASSPATH=${IGNITE_HOME}/libs/ignite-core-1.0.0-RC3-SNAPSHOT.jar:${IGNITE_HOME}/libs/ignite-hadoop/ignite-hadoop-1.0.0-RC3-SNAPSHOT.jar
hadoop --config ${IGNITE_HOME}/ignite-conf "${@}"
-----------------------------------------------
where ${IGNITE_HOME}/ignite-conf is folder inside IGNITE distribution where the 2 custom configs are located: core-site.xml, mapred-site.xml .
(If the user wants only Ignite MapRed engine, but does not need Ignite filesystem, he symlinks the default mapred-site.xml in this directory.)
This way, in order to use fully pre-configured Hadoop cluster the user only needs to add "hadoop-ignited" script into PATH.
2) The only thing that is still needs attention is how the Ignite node should find the Hadoop libraries. My suggestion is to provide 3 versions of config scripts depending on the supported layouts, like "layout-apache", "layout-cloudera", and "layout-bigtop-hortonworks" (I suppose, the latter 2 are identical) . After that ask use after Ignite archive unzipping write 1 line into startup script, like LAYOUT=cloudera, and that's it -- the corresponding env script will be picked up to set up env variables needed by the user's Hadoop distribution.
TODO: will this approach work with Hive, etc.?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)