Return-Path: X-Original-To: apmail-hadoop-hdfs-issues-archive@minotaur.apache.org Delivered-To: apmail-hadoop-hdfs-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 72C779FCF for ; Wed, 4 Apr 2012 20:07:45 +0000 (UTC) Received: (qmail 44544 invoked by uid 500); 4 Apr 2012 20:07:45 -0000 Delivered-To: apmail-hadoop-hdfs-issues-archive@hadoop.apache.org Received: (qmail 44501 invoked by uid 500); 4 Apr 2012 20:07:45 -0000 Mailing-List: contact hdfs-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hdfs-issues@hadoop.apache.org Delivered-To: mailing list hdfs-issues@hadoop.apache.org Received: (qmail 44493 invoked by uid 99); 4 Apr 2012 20:07:45 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 04 Apr 2012 20:07:45 +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; Wed, 04 Apr 2012 20:07:43 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 6A7353582E3 for ; Wed, 4 Apr 2012 20:07:23 +0000 (UTC) Date: Wed, 4 Apr 2012 20:07:23 +0000 (UTC) From: "Mingjie Lai (Commented) (JIRA)" To: hdfs-issues@hadoop.apache.org Message-ID: <596247872.13773.1333570043437.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <736224907.13961.1311319498067.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (HDFS-2185) HA: HDFS portion of ZK-based FailoverController MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HDFS-2185?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13246676#comment-13246676 ] Mingjie Lai commented on HDFS-2185: ----------------------------------- (still posting comments here since the design doc is attached here) @todd Thanks for adding the manual failover section 2.7 in the design doc. However I have some questions for what you described in 2.7.2: - HAAdmin makes an RPC failoverToYou() to the target ZKFC - target ZKFC sends an RPC concedeLock() to the currently active ZKFC. - the active sends a transitionToStandby() RPC to its local node IMO the chain of RPCs is quite complicated, not easy to debug and troubleshoot in operation. Because you're trying to resolve the 2 problems, auto and manual failover, at one place -- ZKFC. How about seperate the 2 cases: - add commands at haadmin to start/stop autofailover - stop-autofailover requests all ZKFC to exitElection - start-autofailover requests all ZKFC to enterElction - haadmin is responsible for handle manual failover (as current implementation) - admins can only perform manual failover when autofailover is stopped - can be used to specify one particular active NN Pros: - existing manual fo code can be kept mostly - although new RPC is added to ZKFC but we don't need them to talk to each other. the manual failover logic is all handled at client -- haadmin. - easier to extend to the case of multiple standby NNs cons: - administrator needs to explicitly start/stop autofailover, in addition to ZKFC process. > HA: HDFS portion of ZK-based FailoverController > ----------------------------------------------- > > Key: HDFS-2185 > URL: https://issues.apache.org/jira/browse/HDFS-2185 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: auto-failover, ha > Affects Versions: 0.24.0, 0.23.3 > Reporter: Eli Collins > Assignee: Todd Lipcon > Fix For: Auto failover (HDFS-3042) > > Attachments: Failover_Controller.jpg, hdfs-2185.txt, hdfs-2185.txt, hdfs-2185.txt, hdfs-2185.txt, hdfs-2185.txt, zkfc-design.pdf, zkfc-design.pdf, zkfc-design.pdf, zkfc-design.pdf, zkfc-design.tex > > > This jira is for a ZK-based FailoverController daemon. The FailoverController is a separate daemon from the NN that does the following: > * Initiates leader election (via ZK) when necessary > * Performs health monitoring (aka failure detection) > * Performs fail-over (standby to active and active to standby transitions) > * Heartbeats to ensure the liveness > It should have the same/similar interface as the Linux HA RM to aid pluggability. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira