Return-Path: Delivered-To: apmail-lucene-hadoop-dev-archive@locus.apache.org Received: (qmail 86165 invoked from network); 11 Aug 2006 20:23:05 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 11 Aug 2006 20:23:05 -0000 Received: (qmail 7288 invoked by uid 500); 11 Aug 2006 20:23:05 -0000 Delivered-To: apmail-lucene-hadoop-dev-archive@lucene.apache.org Received: (qmail 7258 invoked by uid 500); 11 Aug 2006 20:23:05 -0000 Mailing-List: contact hadoop-dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hadoop-dev@lucene.apache.org Delivered-To: mailing list hadoop-dev@lucene.apache.org Received: (qmail 7249 invoked by uid 99); 11 Aug 2006 20:23:05 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Aug 2006 13:23:05 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [209.237.227.198] (HELO brutus.apache.org) (209.237.227.198) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Aug 2006 13:23:04 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 8FD4F7142D0 for ; Fri, 11 Aug 2006 20:20:16 +0000 (GMT) Message-ID: <22214301.1155327616586.JavaMail.jira@brutus> Date: Fri, 11 Aug 2006 13:20:16 -0700 (PDT) From: "Benjamin Reed (JIRA)" To: hadoop-dev@lucene.apache.org Subject: [jira] Updated: (HADOOP-435) Encapsulating startup scripts and jars in a single Jar file. In-Reply-To: <23406804.1155134593912.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N [ http://issues.apache.org/jira/browse/HADOOP-435?page=all ] Benjamin Reed updated HADOOP-435: --------------------------------- Attachment: start.sh This script starts up a datanode and tasktracker. If the config indicates that the node is the jobtracker, it also starts the jobtracker and namenode. > Encapsulating startup scripts and jars in a single Jar file. > ------------------------------------------------------------ > > Key: HADOOP-435 > URL: http://issues.apache.org/jira/browse/HADOOP-435 > Project: Hadoop > Issue Type: New Feature > Affects Versions: 0.5.0 > Reporter: Benjamin Reed > Attachments: hadoopit.patch, start.sh, stop.sh > > > Currently, hadoop is a set of scripts, configurations, and jar files. It makes it a pain to install on compute and datanodes. It also makes it a pain to setup clients so that they can use hadoop. Everytime things are updated the pain begins again. > I suggest that we should be able to build a single Jar file that has a Main-Class defined with the configuration built in so that we can distribute that one file to nodes and clients on updates. One nice thing that I haven't done would be to make the jarfile downloadable from the JobTracker webpage so that clients can easily submit the jobs. > I currently use such a setup on my small cluster. To start the job tracker I used "java -jar hadoop.jar -l /tmp/log jobtracker" to submit a job I use "java -jar hadoop.jar jar wordcount.jar". I used the client on my linux and Mac OSX machines and I'll I need installed in java and the hadoop.jar file. > hadoop.jar helps with logfiles and configurations. The default of pulling the config files from the jar file can be overridden by specifying a config directory so that you can easily have machine specific configs and still have the same hadoop.jar on all machines. > Here are the available commands from hadoop.jar: > USAGE: hadoop [-l logdir] command > User commands: > dfs run a DFS admin client > jar run a JAR file > job manipulate MapReduce jobs > fsck run a DFS filesystem check utility > Runtime startup commands: > datanode run a DFS datanode > jobtracker run the MapReduce job Tracker node > namenode run the DFS namenode (namenode -format formats the FS) > tasktracker run a MapReduce task Tracker node > HadoopLoader commands: > buildJar builds the HadoopLoader jar file > conf dump hadoop configuration > Note, I don't have the classes for hadoop streaming built into this Jar file, but if I had that would also be an option (it checks for needed classes before displaying an option). It makes it very easy for users that just write scripts to use hadoop straight from their machines. > I'm also attaching the start.sh and stop.sh scripts that I use. These are the only scripts I use to startup the daemons. They are very simple and the start.sh script uses the config file to figure out whether or not to start the jobtracker and the nameserver. > The attached patch adds the HadoopIt patch, modifies the Configuration class to find the config files correctly, and modifies the build to make a fully contained hadoop.jar. To update the configuration in a hadoop.jar you simply use "zip hadoop.jar hadoop-site.xml". -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira