您好,登錄后才能下訂單哦!
這篇文章主要介紹“管理Hadoop的方法”,在日常操作中,相信很多人在管理Hadoop的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”管理Hadoop的方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1.namenode的目錄結構 VERSION 文件詳解:
#Thu Dec 15 10:07:46 CST 2016 namespaceID=1277563549 clusterID=CID-a4ff16ba-4427-4f8a-bbaf-4665b3ce714b cTime=0 storageType=NAME_NODE blockpoolID=BP-1697576408-127.0.0.1-1481767666542 layoutVersion=-63 layoutVersion - HDFS metadata版本號,通常只有HDFS增加新特性時才會更新這個版本號 namespaceID 文件系統命名空間的唯一標識符,是在namenode 首次格式化時創建的 clusterID 是將HDFS集群作為一個整體賦予的唯一標識符 blockpoolID 是數據塊池的唯一標識符,數據塊池中包含了由一個namenode 管理的命名空間中的所有文件。 CTime 標記了namenode 存儲系統的創建時間。對于剛放格式化的存儲系統,這個屬性值為0 storageType 該存儲目錄包含的是namenode 的數據結構
文件系統映像和編輯日志
文件系統客戶端執行寫操作時(例如創建或移動文件),這些事務首先被記錄到編輯日志中。namenode在內存中維護文件系統的元數據;當編輯日志被修改時,相關元數據信息也同步更新。
每個fsimage都是文件系統元數據的一個完整的永久性檢查點。
如何解決namenode 重啟操作慢的問題
運行輔助namenode, 1、secondarynamenode請求namenode停止使用的edits_inprogress文件,新的編輯操作記錄到一個新的edits_inprogress文件中,同時namenode會更新所有存儲目錄中的seen_txid
2、secondarynamenode從namenode中通過HTTP GET獲取最近的fsimage和edits文件
3、secondarynamenode將fsimage文件載入內存,逐一執行edits文件中的事務,創建新的合并后的fsimage文件
4、secondarynamenode將新的fsimage文件通過HTTP PUT發送回主namenode,namenode將其保存為臨時的.ckpt文件
5、namenode重命名臨時的fsimage文件
datanode 的目錄結構
安全模式
namenode啟動時,首先將映像文件載入內存,并執行編輯日志中的各項操作。一旦在內存中成功建立文件系統元數據的映像,則創建一個新的fsimage 文件和一個空的編輯日志。在這個過程中,namenode 運行在安全模式,意味著namenode文件系統對于客戶端來說是只讀的。
日志審計
工具
解決各個datanode 上的塊分布不均衡的問題
dfsadmin
fsck
datanode 塊掃描器,定期檢測本節點上的所有塊
均衡器
主守護進程是最需要監控的,包括主namenode,輔助namenode 和資源管理器
日志
度量和JMX(Java管理擴展)
hadoop守護進程收集事件和度量相關的信息,這些信息統稱為“度量”
元數據備份
數據備份
劃分優先級
distcp 是一個理想的備份工具
文件系統檢查
文件系統均衡器
委任和解除節點
隨便允許一臺機器以datanode身份連接到namenode 是不安全的。
添加新節點的步驟: <br/>1. 將新節點的網絡地址加到include 文件中 <br/>2. 運行以下指令,將審核過的一系列datanode集合更新至namenode 信息 <br/>hdfs dfsadmin -refreshNodes <br/>3.運行以下指令,將審核過的一系列節點管理器信息更新至資源管理器 <br/>yarn rmadmin -refreshNodes <br/>4. 以新節點更新slaves 文件。這樣的話,Hadoop控制腳本會將新節點包括在未來操作之中 <br/>5.啟動新的datanode 和節點管理器 <br/>6.檢查新的datanode和節點管理器是否都出現在網頁界面中
1.將待解除節點的網絡地址添加到exclude 文件中,不更新include 文件
2.執行以下指令,使用一組新的審核過得datanode 來更新namenode 設置
hdfs dfsadmin -refreshNodes
3.使用一組新的審核過的節點管理器來更新資源管理器設置
yarn rmadmin -refreshNodes
4.轉到網頁界面,查看待解除datanode的管理狀態是否已經變為正在解除,因為此時相關 的datanode正在被解除過程之中。這些datanode會把它們的塊復制到其他datanode 中
5.當所有datanode的狀態變為解除完畢時,表明所有快已經復制完畢。關閉已經解除的節點。
6.從include 文件中移除這些節點,并運行以下命令
hdfs dfsadmin -refreshNodes yarn rmadmin -refreshNodes
移除節點
委任
從slaves 文件中移除節點
升級
是否能回滾
到此,關于“管理Hadoop的方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。