專利名稱:一種hdfs中計算節(jié)點機柜位置感知的實現(xiàn)方法及其實現(xiàn)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及高性能計算及集群領(lǐng)域,具體涉及一種HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法。
背景技術(shù):
HdfsCHadoop Distributed File System,Hadoop 分布式文件系統(tǒng))集群的規(guī)模一般比較大,通常會部署在幾個甚至幾十個機柜中。一般一個機柜使用一個二層匯聚交換機,交換機之間的數(shù)據(jù)交換一般要比交換機內(nèi)部數(shù)據(jù)交換帶寬要小,因此一個集群中的同一個機柜中節(jié)點之間的網(wǎng)絡(luò)流量通常比跨機柜節(jié)點間的網(wǎng)絡(luò)流量更高效。同時,一個管理節(jié)點盡量將一個塊的副本放置到不同的機柜中以提高系統(tǒng)的容錯能力。實現(xiàn)上述兩種技術(shù)的前·提是需要讓Hdfs系統(tǒng)知道一個節(jié)點屬于哪個機柜或者是它的機柜ID,也就是說,它應(yīng)該具有機柜意識。目前針對如何讓Hdfs文件系統(tǒng)具有機柜感知功能沒有一個比較明確的解決方案。如果Hdfs沒有機柜感知功能,就會遇到以下兩個問題I.機柜間交換機的互連成為節(jié)點間數(shù)據(jù)查找和操作時的瓶頸。2.同一數(shù)據(jù)塊的所有副本可能會在同一個機柜里,當一個機柜掉電時系統(tǒng)的數(shù)據(jù)的安全性難以保證。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的不足,本發(fā)明提供一種HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,該方法克服了機柜間交換機的互連成為節(jié)點間數(shù)據(jù)查找和操作時的瓶頸和同一數(shù)據(jù)塊的所有副本可能會在同一個機柜里,當一個機柜掉電時系統(tǒng)的數(shù)據(jù)的安全性難以保證的問題。本發(fā)明的目的是采用下述技術(shù)方案實現(xiàn)的一種HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其改進之處在于,所述方法包括下述步驟A、啟動Hadoop分布式文件系統(tǒng);B、檢查所述Hadoop分布式文件系統(tǒng)標準文件中的配置選項;C、將所述配置選項鏈接到檢測的腳本文件;D、獲取Hadoop計算集群中計算節(jié)點的IP地址;E、判斷所述計算節(jié)點是否屬于該Hadoop計算集群;F、判斷所述IP地址有無對應(yīng)機柜信息;G、返回Hadoop集群系統(tǒng)相應(yīng)機柜信息;H、返回Hadoop集群系統(tǒng)默認機柜信息;
I、Hadoop集群系統(tǒng)異常。其中,所述步驟B中,所述標準文件用hadoop-default. xml表示。其中,所述步驟D中,所述Hadoop計算集群中包括至少一個計算節(jié)點和一個管理節(jié)點,每檢測一個計算節(jié)點鏈接上管理節(jié)點時獲取該計算節(jié)點的IP地址,并將IP地址傳送給檢測的腳本文件。其中,所述步驟E中,驗證所述IP地址的合法性后,將IP地址與配置選項的信息進行對比,判斷所述計算節(jié)點是否屬于該Hadoop計算集群。其中,判斷所述計算節(jié)點屬于該Hadoop計算集群,則進行步驟F ;否則進行步驟I。其中,所述步驟F,若判斷所述IP地址有對應(yīng)機柜信息,則進行步驟G ;否則進行步驟H。
其中,所述計算節(jié)點和機柜之間存在映射關(guān)系。本發(fā)明基于另一目的提供的一種HDFS中計算節(jié)點機柜位置感知的實現(xiàn)系統(tǒng),其改進之處在于,所述系統(tǒng)包括下述模塊啟動t旲塊用于啟動所述Hadoop分布式文件系統(tǒng);檢查模塊用于檢查所述Hadoop分布式文件系統(tǒng)標準文件中的配置選項;獲取IP地址模塊用于獲取Hadoop計算集群中計算節(jié)點的IP地址;判斷計算節(jié)點模塊用于判斷所述計算節(jié)點是否屬于該Hadoop計算集群;判斷IP地址模塊用于判斷所述IP地址有無對應(yīng)機柜信息。與現(xiàn)有技術(shù)比,本發(fā)明達到的有益效果是本發(fā)明提供的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法及其實現(xiàn)方法,使Hdfs文件系統(tǒng)有了機柜感知功能后,具有以下兩個好處I.讓數(shù)據(jù)副本盡量的分布在同一個機柜里,從而保證數(shù)據(jù)查找和操作時的迅速,優(yōu)化系統(tǒng)性能。2.讓同一數(shù)據(jù)塊的副本不會完全分布在同一個機柜里,從而保證當一個機柜掉電時系統(tǒng)的數(shù)據(jù)可用,提高系統(tǒng)的安全性。
圖I是本發(fā)明提供的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法的流程圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明的具體實施方式
作進一步的詳細說明。本發(fā)明提供的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法流程如圖I所示,包括下述步驟A、啟動Hadoop分布式文件系統(tǒng);B、檢查Hadoop分布式文件系統(tǒng)標準文件hadoop-default. xml中的topology,script, file, name 配置選項;C、將配置選項鏈接到檢測的腳本文件;D、獲取Hadoop計算集群中計算節(jié)點的IP地址Hadoop計算集群中包括多個計算節(jié)點和一個管理節(jié)點,每檢測一個計算節(jié)點鏈接上管理節(jié)點時獲取該計算節(jié)點的IP地址,并將IP地址傳送給檢測的腳本文件。E、驗證IP地址的合法性后,將IP地址與配置選項的信息進行對比,判斷所述計算節(jié)點是否屬于該Hadoop計算集群判斷計算節(jié)點屬于該Hadoop計算集群,則進行步驟F ;否則進行步驟I。F、判斷IP地址有無對應(yīng)機柜信息若判斷所述IP地址有對應(yīng)機柜信息,則進行步驟G ;否則進行步驟H。G、返回Hadoop集群系統(tǒng)相應(yīng)機柜信息;H、返回Hadoop集群系統(tǒng)默認機柜信息;I、Hadoop集群系統(tǒng)異常。
實施例下面是計算節(jié)點與機柜信息對應(yīng)關(guān)系的拓撲配置文件的內(nèi)容示例Datanodel /dcl/racklDatanode2 /dcl/racklDatanode3 /dcl/rack2其中,Datanode表示Hadoop系統(tǒng)里的計算節(jié)點;dc (datacenter)是數(shù)據(jù)中心的簡稱;rack表示機柜信息。這個文件一行代表一條信息說明datanode屬于哪個數(shù)據(jù)中心的哪個機柜。本發(fā)明提供的方法通過腳本文件調(diào)用Hadoop分布式系統(tǒng)的java接口將Datanode計算節(jié)點的機柜信息傳遞給Hadoop集群系統(tǒng),從而實現(xiàn)集群對節(jié)點位置的感知,從而優(yōu)化系統(tǒng)系統(tǒng)和提高系統(tǒng)安全性。通常,為了保證數(shù)據(jù)的安全性,我們會對數(shù)據(jù)進行備份。當某機器出現(xiàn)故障時,能避免數(shù)據(jù)的丟失。在Hadoop集群系統(tǒng),最常見的是給數(shù)據(jù)存兩個備份,最好的情況是一個備份放在原始數(shù)據(jù)的同一個機柜里,另一份放在另一個機柜。如果是一臺機器出了問題,我們首選的當然是在同機柜里去找它的備份,因為這樣的數(shù)據(jù)傳輸迅速,也無需通過交換機傳遞數(shù)據(jù)(這就避免了交換機的“瓶頸”問題)。當然,也存在整個機柜被損壞的情況,這時,我們就可以到其它的機柜去尋找備份數(shù)據(jù)。是否在同一個機柜,這就涉及到計算節(jié)點的位置識別問題,本發(fā)明的方法就能很好的應(yīng)對這一情況。最后應(yīng)當說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案而非對其限制,盡管參照上述實施例對本發(fā)明進行了詳細的說明,所屬領(lǐng)域的普通技術(shù)人員應(yīng)當理解依然可以對本發(fā)明的具體實施方式
進行修改或者等同替換,而未脫離本發(fā)明精神和范圍的任何修改或者等同替換,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當中。
權(quán)利要求
1. 一種HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其特征在于,所述方法包括下述步 驟 A、啟動Hadoop分布式文件系統(tǒng); B、檢查所述Hadoop分布式文件系統(tǒng)標準文件中的配置選項; C、將所述配置選項鏈接到檢測的腳本文件; D、獲取Hadoop計算集群中計算節(jié)點的IP地址; E、判斷所述計算節(jié)點是否屬于該Hadoop計算集群; F、判斷所述IP地址有無對應(yīng)機柜信息; G、返回Hadoop集群系統(tǒng)相應(yīng)機柜信息; H、返回Hadoop集群系統(tǒng)默認機柜信息; I、Hadoop集群系統(tǒng)異常。
2.如權(quán)利要求I所述的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其特征在于,所述步驟B中,所述標準文件用hadoop-default. xml表示。
3.如權(quán)利要求I所述的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其特征在于,所述步驟D中,所述Hadoop計算集群中包括至少一個計算節(jié)點和一個管理節(jié)點,每檢測一個計算節(jié)點鏈接上管理節(jié)點時獲取該計算節(jié)點的IP地址,并將IP地址傳送給檢測的腳本文件。
4.如權(quán)利要求I所述的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其特征在于,所述步驟E中,驗證所述IP地址的合法性后,將IP地址與配置選項的信息進行對比,判斷所述計算節(jié)點是否屬于該Hadoop計算集群。
5.如權(quán)利要求4所述的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其特征在于,判斷所述計算節(jié)點屬于該Hadoop計算集群,則進行步驟F ;否則進行步驟I。
6.如權(quán)利要求I所述的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其特征在于,所述步驟F,若判斷所述IP地址有對應(yīng)機柜信息,則進行步驟G ;否則進行步驟H。
7.如權(quán)利要求1-6中任一項所述的HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法,其特征在于,所述計算節(jié)點和機柜之間存在映射關(guān)系。
8.—種HDFS中計算節(jié)點機柜位置感知的實現(xiàn)系統(tǒng),其特征在于,所述系統(tǒng)包括下述模塊 啟動模塊用于啟動所述Hadoop分布式文件系統(tǒng); 檢查模塊用于檢查所述Hadoop分布式文件系統(tǒng)標準文件中的配置選項; 獲取IP地址模塊用于獲取Hadoop計算集群中計算節(jié)點的IP地址; 判斷計算節(jié)點模塊用于判斷所述計算節(jié)點是否屬于該Hadoop計算集群; 判斷IP地址模塊用于判斷所述IP地址有無對應(yīng)機柜信息。
全文摘要
本法明涉及一種HDFS中計算節(jié)點機柜位置感知的實現(xiàn)方法及其實現(xiàn)系統(tǒng),包括下述步驟A、啟動Hadoop分布式文件系統(tǒng);B、檢查Hadoop分布式文件系統(tǒng)標準文件中的配置選項;C、將配置選項鏈接到檢測的腳本文件;D、獲取Hadoop計算集群中計算節(jié)點的IP地址;E、判斷計算節(jié)點是否屬于該Hadoop計算集群;F、判斷IP地址有無對應(yīng)機柜信息;G、返回Hadoop分布式文件系統(tǒng)相應(yīng)機柜信息;H、返回Hadoop分布式文件系統(tǒng)默認機柜信息;I、Hadoop分布式文件系統(tǒng)異常。該方法克服了機柜間交換機的互連成為節(jié)點間數(shù)據(jù)查找和操作時的瓶頸和同一數(shù)據(jù)塊的所有副本可能會在同一個機柜里,當一個機柜掉電時系統(tǒng)的數(shù)據(jù)的安全性難以保證的問題。
文檔編號H04L12/24GK102946323SQ201210411049
公開日2013年2月27日 申請日期2012年10月24日 優(yōu)先權(quán)日2012年10月24日
發(fā)明者馬慶懷 申請人:曙光信息產(chǎn)業(yè)(北京)有限公司