Support Questions

Find answers, ask questions, and share your expertise
Announcements
Now Live: Explore expert insights and technical deep dives on the new Cloudera Community BlogsRead the Announcement

ZKFC maintains session for namenode in zookeeper

avatar
Explorer

How does the ZKFC running in the namenode server maintain a open session in zookeeper?

1 ACCEPTED SOLUTION

avatar
Master Collaborator

When the local NameNode is healthy, the ZKFC holds a session open in ZooKeeper. If the local NameNode is active, it also holds a special “lock” znode. This lock uses ZooKeeper’s support for “ephemeral” nodes; if the session expires, the lock node will be automatically deleted.

Ephemeral znodes - These znodes exists as long as the session that created the znode is active. When the session ends the znode is deleted. Zookeeper has a concept of Watches which can be set on znodes to track them for any changes.

Check the link how Watches work in zookeeper -

https://zookeeper.apache.org/doc/current/zookeeperProgrammers.html#ch_zkWatches

View solution in original post

1 REPLY 1

avatar
Master Collaborator

When the local NameNode is healthy, the ZKFC holds a session open in ZooKeeper. If the local NameNode is active, it also holds a special “lock” znode. This lock uses ZooKeeper’s support for “ephemeral” nodes; if the session expires, the lock node will be automatically deleted.

Ephemeral znodes - These znodes exists as long as the session that created the znode is active. When the session ends the znode is deleted. Zookeeper has a concept of Watches which can be set on znodes to track them for any changes.

Check the link how Watches work in zookeeper -

https://zookeeper.apache.org/doc/current/zookeeperProgrammers.html#ch_zkWatches