搭建的Hadoop叢集啟動後,HDFS-HA 的其中一個active狀态的NameNode挂了,但是另外一個之前處于standby的namenode一直未升為active
檢視挂掉的NameNode伺服器上的zkfc服務的日志:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL4FEVNdXRE1UNK52YsBnMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL2kTM1UDO0MDM0IjMwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
未找到fuser指令,導緻zkfc通過ssh執行shell指令時無法使用fuser導緻将NameNode升為active時失敗。
解決:
在伺服器上安裝psmisc:yum install psmisc
安裝完成後再檢視namenode的狀态變為active了。
補充:
簡單介紹一下 psmisc :
Psmisc軟體包包含三個幫助管理/proc目錄的程式。
安裝下列程式: fuser, killall,pstree和pstree.x11(到pstree的連結)
fuser 顯示使用指定檔案或者檔案系統的程序的PID。
killall 殺死某個名字的程序,它向運作指定指令的所有程序發出信号。
pstree 樹型顯示目前運作的程序。
pstree.x11 與pstree功能相同,隻是在退出前需要确認。