DataNode启动流程
2022-03-04 22:12:18 0 举报
Hadoop子节点DataNode启动流程;
作者其他创作
大纲/内容
doRefreshNamenodes
register
startInfoServer
secureMain
new DataStorage()
instantiateDataNode
调用服务端的registerDatanode方法bpNamenode.registerDatanode(bpRegistration)
namesystem.registerDatanode(nodeReg)
initDataXceiver
startAll
initIpcServer
addDatanode
run()
SecurityUtil.login
DatanodeRegistration
FSNamesystem
runDatanodeDaemon
NameNodeRpcServer
//TODO 遍历所有的BPOfferService 遍历所有的联邦for (BPOfferService bpos : offerServices) { //TODO 重要 bpos.start();}
检查datanode目录(权限、读写等),并实例化一个datanode对象
connectToNNAndHandshakebpNamenode = dn.connectToNN(nnAddr);NamespaceInfo nsInfo = retrieveNamespaceInfo();bpos.verifyAndSetNamespaceInfo(nsInfo);
bpThread.start()
blockPoolManager.startAll
BPServiceActor
DataNode
checkNNStartup()
createDataNode
start
BPOfferService
registerDatanode(nodeReg)
verifySoftwareVersion(nodeReg)
//TODO 注册DataNodeaddDatanode(nodeDescr);
checkSafeMode()
DatanodeManager
checkStorageLocations
new BlockPoolManager
blockPoolManager.refreshNamenodes(conf)
refreshNamenodes
new DataNode
BlockPoolManager
startDataNode
main()
registerDatanode
//TODO 把注册上来的DataNode加入到HeartbeatManager里面heartbeatManager.addDatanode(nodeDescr);
connectToNNAndHandshake
makeInstance
0 条评论
下一页