[
https://issues.apache.org/jira/browse/HDFS-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Todd Lipcon updated HDFS-2179:
------------------------------
Attachment: hdfs-2179.txt
Thanks for the review. Here's a new revision:
- Added javadoc to FenceMethod, NodeFencer, etc
- Made FenceMethod a public interface, added audience/stability annotations
- Added a catch clause for all Throwables around each fence method
- Made SshFenceByTcpPort take a second parameter in order to configure the port
of the target process. eg <code>sshfence(nn2.foo.com, 8020)</code> will make it
ssh into that host and kill whatever process is listening on port 8020.
I imagine we'll need to revisit some of this when we're farther along in other
areas -- in particular so we can have the same configuration on the two peers,
but have them properly STONITH each other rather than themselves. But I think
it's best to address that a little down the road.
> HA: namenode fencing mechanism
> ------------------------------
>
> Key: HDFS-2179
> URL: https://issues.apache.org/jira/browse/HDFS-2179
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: name-node
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Attachments: hdfs-2179.txt, hdfs-2179.txt
>
>
> In an HA cluster, when there are two NNs, the invariant that only one NN is
> active at a time has to be preserved in order to prevent "split brain
> syndrome." Thus, when a standby NN is transition to "active" state during a
> failover, it needs to somehow _fence_ the formerly active NN to ensure that
> it can no longer perform edits. This JIRA is to discuss and implement NN
> fencing.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira