1.在HADOOP扮演的角色
JournalNode是在MR2也就是Yarn中新加的,journalNode的作用是存放EditLog的,
在MR1中editlog是和fsimage存放在一起的然后SecondNamenode做定期合並,Yarn在這上面就不用SecondNamanode了.
Active Namenode與StandBy Namenode之間的就是JournalNode,作用相當於NFS共享文件系統.Active Namenode往里寫editlog數據,StandBy再從里面讀取數據進行同步.
配置文件是;hdfs-site.xml文件負責
最后進程JPS如下圖:
2.作用
兩個NameNode為了數據同步,會通過一組稱作JournalNodes的獨立進程進行相互通信。當active狀態的NameNode的命名空間有任何修改時,會告知大部分的JournalNodes進程。
standby狀態的NameNode有能力讀取JNs中的變更信息,並且一直監控edit log的變化,把變化應用於自己的命名空間。standby可以確保在集群出錯時,命名空間狀態已經完全同步了。
3.資源配置
NameNode服務器:運行NameNode的服務器應該有相同的硬件配置。
* JournalNode服務器:運行的JournalNode進程非常輕量,可以部署在其他的服務器上。注意:必須允許至少3個節點。當然可以運行更多,但是必須是奇數個,如3、5、7、9個等等。
當運行N個節點時,系統可以容忍至少(N-1)/2(N至少為3)個節點失敗而不影響正常運行。
在HA集群中,standby狀態的NameNode可以完成checkpoint操作,因此沒必要配置Secondary NameNode、CheckpointNode、BackupNode。如果真的配置了,還會報錯。