hadoop集群維護(hù)手冊_第1頁
hadoop集群維護(hù)手冊_第2頁
hadoop集群維護(hù)手冊_第3頁
hadoop集群維護(hù)手冊_第4頁
hadoop集群維護(hù)手冊_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Hadoop部分啟動(dòng)命令:停止命令:Hadoop運(yùn)行增加集群的存儲(chǔ)量/節(jié)點(diǎn)如果只增加集群的存儲(chǔ)量,建議增加Hadoop datanode節(jié)點(diǎn)。步驟:1、停掉集群包括Hadoop和hbase,當(dāng)然也可以不停掉,直接在hadoop namenode的配置文件Slave里添加新節(jié)點(diǎn)的host,別忘了在host文件里 也要添加新添加的host名。2、執(zhí)行bin/啟動(dòng)集群3、以下選擇一種1)如果不手動(dòng)作平衡,插入的數(shù)據(jù)將會(huì)放在新添加的節(jié)點(diǎn)上。以趨于平 衡。2)如果手動(dòng)平衡,則和調(diào)用bin/sHadoop balancer命令相似,也可加 參數(shù)-threshold 5 (threshold是平衡閾值,默認(rèn)

2、是10%,值越低各 節(jié)點(diǎn)越平衡,但消耗時(shí)間也更長)。在使用時(shí),如果在里面沒有配置, 那么集群hdfs內(nèi)部默認(rèn)使用1M/S的速度移動(dòng)數(shù)據(jù)(s。slowly.),我們可以通過在里面配置來加快balance的速度。最開始我們配置的 是20m/S ,然后結(jié)果是導(dǎo)致job運(yùn)行變得不穩(wěn)定,出現(xiàn)一些意外的長 map單元,某些reduce時(shí)間處理變長(整個(gè)集群負(fù)載滿滿的情況下,外 加20m/s的balance),在前天的中國hadoop年會(huì)上聽淘寶調(diào)整的為 10m/s,需要調(diào)整后實(shí)驗(yàn),看看情況如何。另外再修改參數(shù)后,需要 在namenode上運(yùn)行 重啟hdfs生效。我們可以通過停掉平衡任務(wù)。作 完平衡后,啟動(dòng)

3、hbase,正常。果cluster設(shè)置的副本數(shù)不為3 (默 認(rèn)),需要先運(yùn)行命令 hadoop fs - setrep -R <path> ;進(jìn)行設(shè)置一個(gè)文件的副本系數(shù)。如果默認(rèn)為3則不必。如果執(zhí)行完平 衡以后才改變副本數(shù),會(huì)將新加入到新節(jié)點(diǎn)上的所有數(shù)據(jù)刪除。設(shè)置 的副本系數(shù)只在文件系統(tǒng)寫入時(shí)有效,并不影響在新添加節(jié)點(diǎn)時(shí),平 衡時(shí)的副本數(shù);另外:由于還有hbase數(shù)據(jù)庫,因此,在運(yùn)行完平衡以后,將hbase 下的.META.文件刪除(防止出錯(cuò)),啟動(dòng)hbase,執(zhí)行hbase add_table /表名 來進(jìn)行hbase表恢復(fù);Hadoop 1 升級1 .運(yùn)行dfsadmin -u

4、pgradeProgress status檢查是否存在備份 如果是第 一次升級 就不存在備份(在升級Hadoop前,如果已經(jīng)存在備份,需要先 結(jié)束 finalize 它。)2 .備份下文件,同時(shí)要備份下hdfs的文件目錄的元數(shù)據(jù)信息:bin/hadoop fsck / -files -blocks -locations > bin/hadoop dfs -lsr / > bin/hadoop dfsadmin -report > ?3 .停止所有節(jié)點(diǎn)bin.4 .在所有節(jié)點(diǎn)上重新部署hadoop并替換conf文件夾下所有文件(就是將 原有的更名為然后解壓 將中的conf文件替

5、換為中的conf文件夾)并且要對照修改中的路徑指定是否正確5 .使用bin/ -upgrade進(jìn)行升級(DFS從一個(gè)版本升級到另外一個(gè)版本的 時(shí)候,NameNode和DataNode使用的文件格式有可能會(huì)改變。當(dāng)你第一次 使用新版本的時(shí)候,你要告訴Hadoop去改變HDFS版本,否則,新版本不 會(huì)生效)6 .監(jiān)控升級情況和升級問題處理開始升級,你可以通過bin/hadoop dfsadmin -upgradeProgress命令來查看版本升級的情況。當(dāng)然你可以使用bin/hadoop dfsadmin -upgradeProgress details來查看更多的詳細(xì)信息。當(dāng)升級過程被阻塞的時(shí)候

6、,你可以使用bin/hadoop dfsadmin -upgradeProgress force來強(qiáng)制升級繼續(xù)執(zhí)行(當(dāng)你使用這個(gè)命令的時(shí)候,一定要慎重考慮)O 當(dāng)HDFS升級完畢后,Hadoop依舊保留著舊版本的有關(guān)信息,以便你可以方便的對HDFS進(jìn)行降級操作??梢允褂胋in/ -rollback來執(zhí)行降級操作。7 .對比現(xiàn)有hdfs的文件目錄的元數(shù)據(jù)信息和升級的差異。8 .升級完成,Hadoop 一次只保存一個(gè)版本的備份,當(dāng)新版本運(yùn)行幾天以后 還是沒有出現(xiàn)什么問題,你就可以使用運(yùn)行一段時(shí)間后 沒有問題再執(zhí)行 升級終結(jié)操作bin/hadoop dfsadmin -finalizeUpgrade

7、命令把舊版本的備份從系統(tǒng)中刪掉了。刪除以后rollback命令就失效了。HdfsMapreduceHbase部分啟動(dòng)命令:如果一個(gè)regionserver死掉了,可以執(zhí)行該命令啟動(dòng),也可以啟動(dòng)整 個(gè) hbase;停止命令:停止hbase運(yùn)行的命令.日常維護(hù)1 .基本命令建表:create ' testtable' , ' coulmnl, , 5 coulmn2,也可以建表時(shí)加coulmn的屬性如:create ' testtable', NAME => 'coulmnl', BLOOMFILTER => 'NONE&

8、#39;, REPLICATION_SCOPE => 'O', VERSIONS => ' 10', COMPRESSION => ' LZO', TTL => ' 30000', INJfEMORY => 'false* , BLOCKCACHE => ' false*, NAME => 'coulmn', BLOOMFILTER => 'NONE*, REPLICATION_SCOPE => 'O', VERSIONS

9、 => '30', COMPRESSION => 'LZO', TTL => '30000', INJ1EM0RY => 'true'(其中的屬性有 versions:設(shè)置歷史版本數(shù),TTL:過期時(shí)間,COMPRESSION:壓縮方式, 當(dāng)配置Izo的情況)刪除表:drop ' testtable,(刪除表之前先要禁用表,命令disable 'testtable')啟用和禁用表:enable ' testtable'和 disable ' testtable,

10、其它的基本命令:describe 'testtable'(查看表結(jié)構(gòu)),alert修 改表結(jié)構(gòu),list列出所有表。2 .維護(hù)命令1 » major_compact ' testtable) ,通常生產(chǎn)環(huán)境會(huì)關(guān)閉自動(dòng) majojcompact (配置文件中設(shè) 為0),選擇一個(gè)晚上用戶少的時(shí)間窗口手 I. major_compact,如果hbase更新不是太頻繁,可以一個(gè)星期對所有表 做一次major_compact,這個(gè)可以在做完一次major_compact后,觀看所 有的storefile數(shù)量,如果storefile數(shù)量增加到major_compact后的

11、 storefile的近二倍時(shí),可以對所有表做一次major_compact,時(shí)間比較 長,操作盡量避免高鋒期。2, flush ' testtable',將所有memstore刷新到hdfs,通常如果發(fā) 現(xiàn) regionserver的內(nèi)存使用過大,造成該機(jī)的regionserver很多線程 block,可以執(zhí)行一下flush操作,這個(gè)操作會(huì)造成hbase的storefile 數(shù)量劇增,應(yīng)盡量避免這個(gè)操作,還有一種情況,在hbase進(jìn)行遷移的 時(shí)候,如果選擇拷貝文件方式,可以先停寫入,然后flush所有表,拷貝 文件。3, balance_switch true 或者 bala

12、nce_switch flase, 配置 master 是否執(zhí)行平衡各個(gè)regionserver的region數(shù)量,當(dāng)我們需要維護(hù)或者重 啟一個(gè)regionserver時(shí),會(huì)關(guān)閉balancer,這樣就使得region在 regionserver上的分布不均,這個(gè)時(shí)候需要手工的開啟balanceo3 . 重啟一個(gè) regionserverbin/ -restart -reload -debug nodename這個(gè)操作是平滑的重啟regionserver進(jìn)程,對服務(wù)不會(huì)有影響,他 會(huì)先將需要重啟的regionserver上面的所有region遷移到其它的服務(wù) 器,然后重啟,最后又會(huì)將之前的re

13、gion遷移回來,但我們修改一個(gè)配 置時(shí),可以用這種方式重啟每一臺機(jī)子,這個(gè)命令會(huì)關(guān) 閉balancer,所 以最后我們要在hbase shell里面執(zhí)行一下balance_switch true,對于 hbase regionserver重啟,不要直接kill進(jìn)程,這樣會(huì)造成在這個(gè)時(shí)間 長的中斷,也不要通過bin/ stop regionserver去重啟,如果運(yùn)氣不太 好,-ROOT-或者.META.表在上面的話,所有的請求會(huì)全部失敗。4 .關(guān)閉下線一臺regionserverbin/ -stop nodename和上面一樣,系統(tǒng)會(huì)在關(guān)閉之前遷移所有region,然后stop進(jìn)程,同 樣最

14、后我們要手工balance_switch true,開啟master的region均衡。5 .檢查region是否正常以及修復(fù)bin/hbase hbck (檢查)bin/hbase hbck -fix(修復(fù))會(huì)返回所有的region是否正常掛載,如沒有正常掛載可以使用下一 條命令修復(fù),如果還是不能修復(fù),那需要看口志為什么失敗,手工處理。6 . hbase的遷移copy table 方式bin/hbase =zookeeperl, zookeeper2, zookeeper3:/hbase 'testtable'目前之前的版本的不支持多版本的復(fù)制,已經(jīng)支持多個(gè)版本 的復(fù)制。當(dāng)然

15、這個(gè)操作需要添加hbase目錄里的conf/,可以復(fù)制 hadoop的過來。Export/Importbin/hbase testtable/user/testtableversionsstarttime stoptime.bin/hbase testtable /user/testtable跨版本的遷移,我覺得是一個(gè)不錯(cuò)的選擇,而且copytable不 支持多版本,而export支持多版本,比copytable更實(shí)用一些。直接拷貝hdfs對應(yīng)的文件首先拷貝hdfs文件,如bin/hadoop distcp 然后在目的hbase執(zhí)行 bin/hbase bin/ /hbase/testtabl

16、e生成meta信息后,重啟hbase這個(gè)操作是簡單的方式,操作之前可以關(guān)閉hbase的寫入,執(zhí)行 flush所有表(上面有介紹),再distcp拷貝,如果hadoop版本不 一致,可以用hftp接口的方式,我推薦使用這種方式,成本低。HBase升級在版本,提供了升級命令,當(dāng)然需要預(yù)先將低版本的升級到或者更高 版本時(shí),需要使用升級命令;Hbase命令提供了如下的選項(xiàng);echo "Usage: hbase options <command> <args>echo "Options:echo 一config DIRConfiguration directi

17、on to use.Default: . /confz,echo -hosts HOSTSOverride the list in 'regionservers'file"echo echo,'Commands : echo“Some commands takearguments. Pass no args or -h for usage. echo shellRun the HBase shell”echo“hbckRun the hbase 'fsck' tool"echo hlogWrite-ahead-log analyzer

18、”echo“hfileStore file analyzer”echo zkcliRun the ZooKeeper shell”echoupgradeUpgrade hbase”echomasterRun an HBase HMaster node”echoregionserverRun an HBase HRegionServer node”echozookeeperRun a Zookeeper server”echorestRun an HBase REST server”echo thriftRun the HBase Thrift server”echo thrift2Run the HBase Thrift2 server”echocleanRun the HBase clean u

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論