Datanode heartbeat timeout

來源:互聯網
上載者:User

早晨看到警示發現2個dead Datanode,查看系統日誌發現當時的負載持續高位導致datanode逾時沒有發送心跳被DatanodeManager摘除,進一步發現高負載是因為一個Job的小檔案太多而沒有進行map file合并導致在這2台節點上同時起的MAP太多導致的,解決方案參考:http://boylook.blog.51cto.com/7934327/1298651

這裡主要看看HeartbeatManager 對datanode心跳處理流程:

HeartbeatManager會啟動一個Daemon線程heartbeatthread,每5秒活動一次,其中每heartbeatRecheckInterval預設5分鐘)秒做一次心跳檢測;這個過程會調用datanodemanager去檢查datanode的lastupdate,如果超過heartbeatExpireInterval= 2 * heartbeatRecheckInterval

+ 10 * 1000 *heartbeatIntervalSeconds預設3秒鐘))則認為datanode已經dead,從heartbeatmanager,blockmanager和networktopology中刪除該datanode的資訊;

和高負載的期間也是吻合的,調整了MAP合并後解決.


本文出自 “MIKE老畢的部落格” 部落格,請務必保留此出處http://boylook.blog.51cto.com/7934327/1301896

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.