Return-Path: X-Original-To: apmail-hadoop-common-issues-archive@minotaur.apache.org Delivered-To: apmail-hadoop-common-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 1790961D2 for ; Sat, 2 Jul 2011 18:44:45 +0000 (UTC) Received: (qmail 3098 invoked by uid 500); 2 Jul 2011 18:44:44 -0000 Delivered-To: apmail-hadoop-common-issues-archive@hadoop.apache.org Received: (qmail 3056 invoked by uid 500); 2 Jul 2011 18:44:44 -0000 Mailing-List: contact common-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: common-issues@hadoop.apache.org Delivered-To: mailing list common-issues@hadoop.apache.org Received: (qmail 3043 invoked by uid 99); 2 Jul 2011 18:44:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 02 Jul 2011 18:44:44 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 02 Jul 2011 18:44:42 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 71FC0437AFB for ; Sat, 2 Jul 2011 18:44:22 +0000 (UTC) Date: Sat, 2 Jul 2011 18:44:22 +0000 (UTC) From: "Travis Crawford (JIRA)" To: common-issues@hadoop.apache.org Message-ID: <1612832527.147.1309632262463.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <710160053.68701.1307208347759.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (HADOOP-7359) Pluggable interface for cluster membership MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HADOOP-7359?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13059096#comment-13059096 ] Travis Crawford commented on HADOOP-7359: ----------------------------------------- @dhruba - Correct, by default there's no change from today; files are used, and they do not refresh. The version I'll use internally gets data from ZooKeeper, so its not particularly reusable (hierarchy, data format, etc). I could see about posting to github or something as an example. You're right though, a jdbc-based version would likely be reusable by other sites. > Pluggable interface for cluster membership > ------------------------------------------ > > Key: HADOOP-7359 > URL: https://issues.apache.org/jira/browse/HADOOP-7359 > Project: Hadoop Common > Issue Type: Improvement > Reporter: Travis Crawford > Attachments: HADOOP-7359.diff > > > Currently Hadoop uses local files to determine cluster membership. With HDFS for example, dfs.hosts and dfs.hosts.exclude are used. > To enable tighter integrations cluster membership should be an interface, with the current file-based functionality provided as the default implementation. The common case would be no functional change, however, sites could plug an alternative implementation in, such as pulling the machine lists from a machine database. > DETAILS: > Two machine lists, includes and excludes, are used to define cluster membership and state. HostsFileReader currently handles reading these lists from files, who's names are passed in by FSNamesystem for HDFS and JobTracker for MR. > The proposed change is adding a HostsReader interface to common, and changing HostsFileReader to an abstract class that functions the same as today. > Two new classes, DFSHostsFileReader and MRHostsFileReader, extend HostsFileReader and simply pass the appropriate file names in. These new classes are needed because config key names live outside common. > Two new conf keys, defaulting to the file-based readers, would be added to choose a different hosts reader: dfs.namenode.hosts.reader.class mapreduce.jobtracker.hosts.reader.class > Comments/suggestions? I have most of this written already but would love some feedback on the general idea before posting the diff. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira