Important architecture points

  • Each NameNode, active and standby, runs the ZKFC process.
  • The state of the NameNode is monitored and managed by the ZKFC.
  • The ZKFC pings its local NameNode periodically to make sure that that the NameNode is alive. If it doesn't get the ping back, it will mark that NameNode unhealthy.
  • The healthy NameNode holds a special lock. If the NameNode becomes unhealthy, that lock will be automatically deleted.
  • If the local NameNode is healthy, and the ZKFC sees the lock is not currently held by any other NameNode, it will try to acquire the lock. If it is successful in acquiring the lock, then it has won the election. It is now the responsibility of this NameNode to run a failover to make its local NameNode active.

Get Modern Big Data Processing with Hadoop now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.