HDFS的NameNode、Yarn的ResourceManager都是依靠ZK实现主备倒换的。核心的类为:ZKFailoverController.java,
选举的核心类为ActiveStandbyElector.java
主备选举的核心类是ActiveStandbyElector。在初始化的时候需要创建zk连接并且尝试在zk上面创建文件。在创建连接或者创建文件的时候都会有回调事件。
回调处理的函数主要包含:
入口函数如下:
public synchronized void processResult(int rc, String path, Object ctx,
String name) {
// .....
}
处理流程图如下:
入口函数如下:
public synchronized void processResult(int rc, String path, Object ctx,
Stat stat) {
// ...
}
处理流程如下:
入口函数如下:
synchronized void processWatchEvent(ZooKeeper zk, WatchedEvent event) {
// ..
}
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。