




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Hadoop部分啟動命令:start-all.sh停止命令:stop-all.shHadoop運行增加集群的存儲量/節(jié)點如果只增加集群的存儲量,建議增加Hadoop datanode節(jié)點。 步驟:1、停掉集群包括Hadoop和hbase,當然也可以不停掉,直接在hadoop namenode的配置文件Slave里添加新節(jié)點的host,別忘了在host文件里也要添加新添加的host名。 2、執(zhí)行bin/start-all.sh啟動集群 3、以下選擇一種1) 如果不手動作平衡,插入的數(shù)據(jù)將會放在新添加的節(jié)點上。以趨于平衡。 2) 如果手動平衡,則 start-balancer.sh和調(diào)用bin/s
2、Hadoop balancer命令相似,也可加參數(shù) -threshold 5(threshold 是平衡閾值,默認是10%,值越低各節(jié)點越平衡,但消耗時間也更長)。 在使用start-balancer.sh時,如果在hdfs-site.xml里面沒有配置dfs.balance.bandwidthPerSec,那么集群hdfs內(nèi)部默認使用1M/S的速度移動數(shù)據(jù)(so slowly.),我們可以通過在hdfs-site.xml里面配置dfs.balance.bandwidthPerSec來加快balance的速度。 最開始我們配置的是20m/S ,然后結(jié)果是導(dǎo)致job運行變得不穩(wěn)定,出現(xiàn)一些意外的
3、長map單元,某些reduce時間處理變長(整個集群負載滿滿的情況下,外加20m/s的balance),在前天的中國hadoop年會上聽淘寶調(diào)整的為10m/s,需要調(diào)整后實驗,看看情況如何。 另外再修改dfs.balance.bandwidthPerSec參數(shù)后,需要在namenode上運行stop-dfs.sh start-dfs.sh重啟hdfs生效。我們可以通過stop-balancer.sh停掉平衡任務(wù)。作完平衡后,啟動hbase,正常。 果cluster設(shè)置的副本數(shù)不為3(默認),需要先運行命令hadoop fs setrep -R <path> ;進行設(shè)置一個文件的副本
4、系數(shù)。如果默認為3則不必。如果執(zhí)行完平衡以后才改變副本數(shù),會將新加入到新節(jié)點上的所有數(shù)據(jù)刪除。 dfs.replication設(shè)置的副本系數(shù)只在文件系統(tǒng)寫入時有效,并不影響在新添加節(jié)點時,平衡時的副本數(shù);另外:由于還有hbase數(shù)據(jù)庫,因此,在運行完平衡以后,將hbase下的.META.文件刪除(防止出錯),啟動hbase,執(zhí)行hbase org.jruby.Main add_table /表名 來進行hbase表恢復(fù);Hadoop1升級1.運行dfsadmin -upgradeProgress status 檢查是否存在備份 如果是第一次升級 就不存在備份(在升級Hadoop前,如果已經(jīng)存在
5、備份,需要先結(jié)束 finalize 它。)2.備份node.dir下文件,同時要備份下hdfs的文件目錄的元數(shù)據(jù)信息:1 / 6bin/hadoop fsck / -files -blocks -locations > dfs-v-old-fsck-1.log bin/hadoop dfs -lsr / > dfs-v-old-lsr-1.log bin/hadoop dfsadmin -report > dfs-v-old-report-1.log 3.停止所有節(jié)點 bin/stop-all.sh4.在所有節(jié)點上重新部署hadoop 并替換conf
6、文件夾下所有文件(就是將原有的hadoop-0.19.1更名為hadoop-0.19.1-oldverstion,然后解壓hadoop-0.19.2.tar.gz 將0.19.2中的conf文件替換為0.19.1中的conf文件夾)并且要對照修改hadoop-site.xml中的路徑指定是否正確5.使用 bin/start-dfs.sh -upgrade 進行升級(DFS從一個版本升級到另外一個版本的時候,NameNode和DataNode使用的文件格式有可能會改變。當你第一次使用新版本的時候,你要告訴Hadoop 去改變HDFS版本,否則,新版本不會生效) 6.監(jiān)控升級情況和升級問
7、題處理開始升級,你可以通過bin/hadoop dfsadmin -upgradeProgress命令來查看版本升級的情況。當然你可以使用bin/hadoop dfsadmin -upgradeProgress details來查看更多的詳細信息。當升級過程被阻塞的時候,你可以使用bin/hadoop dfsadmin -upgradeProgress force來強制升級繼續(xù)執(zhí)行(當你使用這個命令的時候,一定要慎重考慮)。 當HDFS升級完畢后,Hadoop依舊保留著舊版本的有關(guān)信息,以便你可以方便的對HDFS進行降級操作??梢允褂胋in/start-dfs.sh -rollbac
8、k來執(zhí)行降級操作。7.對比現(xiàn)有hdfs的文件目錄的元數(shù)據(jù)信息和升級的差異。8.升級完成,Hadoop一次只保存一個版本的備份,當新版本運行幾天以后還是沒有出現(xiàn)什么問題,你就可以使用運行一段時間后 沒有問題再執(zhí)行升級終結(jié)操作bin/hadoop dfsadmin -finalizeUpgrade命令把舊版本的備份從系統(tǒng)中刪掉了。刪除以后rollback 命令就失效了。HdfsMapreduceHbase部分啟動命令:start-hbase.sh如果一個regionserver死掉了,可以執(zhí)行該命令啟動,也可以啟動整個hbase;停止命令:stop-hbase.sh停止hbase運行的命令.日常維
9、護1. 基本命令 建表:create 'testtable','coulmn1','coulmn2' 也可以建表時加coulmn的屬性如:create 'testtable',NAME => 'coulmn1', BLOOMFILTER => 'NONE', REPLICATION_SCOPE => '0', VERSIONS => '10', COMPRESSION => 'LZO', TTL => '30
10、000', IN_MEMORY => 'false', BLOCKCACHE => 'false', NAME => 'coulmn', BLOOMFILTER => 'NONE', REPLICATION_SCOPE => '0', VERSIONS => '30', COMPRESSION => 'LZO', TTL => '30000', IN_MEMORY => 'true' (其中
11、的屬性有versions:設(shè)置歷史版本數(shù),TTL:過期時間,COMPRESSION:壓縮方式,當配置lzo的情況) 刪除表:drop 'testtable' (刪除表之前先要禁用表,命令disable 'testtable') 啟用和禁用表: enable 'testtable' 和disable 'testtable' 其它的基本命令:describe 'testtable'(查看表結(jié)構(gòu)),alert 修改表結(jié)構(gòu),list 列出所有表。2. 維護命令 1,major_compact 'testtable&
12、#39;,通常生產(chǎn)環(huán)境會關(guān)閉自動major_compact(配置文件中hbase.hregion.majorcompaction設(shè) 為0),選擇一個晚上用戶少的時間窗口手工major_compact,如果hbase更新不是太頻繁,可以一個星期對所有表做一次 major_compact,這個可以在做完一次major_compact后,觀看所有的storefile數(shù)量,如果storefile數(shù)量增加到 major_compact后的storefile的近二倍時,可以對所有表做一次major_compact,時間比較長,操作盡量避免高鋒期。 2,flush 'testtable',將
13、所有memstore刷新到hdfs,通常如果發(fā)現(xiàn)regionserver的內(nèi)存使用過大,造成該機的 regionserver很多線程block,可以執(zhí)行一下flush操作,這個操作會造成hbase的storefile數(shù)量劇增,應(yīng)盡量避免這個操 作,還有一種情況,在hbase進行遷移的時候,如果選擇拷貝文件方式,可以先停寫入,然后flush所有表,拷貝文件。 3,balance_switch true或者balance_switch flase,配置master是否執(zhí)行平衡各個regionserver的region數(shù)量,當我們需要維護或者重啟一個regionserver時,會 關(guān)閉balance
14、r,這樣就使得region在regionserver上的分布不均,這個時候需要手工的開啟balance。3. 重啟一個regionserver bin/graceful_stop.sh -restart -reload -debug nodename 這個操作是平滑的重啟regionserver進程,對服務(wù)不會有影響,他會先將需要重啟的regionserver上面的所有 region遷移到其它的服務(wù)器,然后重啟,最后又會將之前的region遷移回來,但我們修改一個配置時,可以用這種方式重啟每一臺機子,這個命令會關(guān) 閉balancer,所以最后我們要在hbase shell里面執(zhí)行一下balan
15、ce_switch true,對于hbase regionserver重啟,不要直接kill進程,這樣會造成在zookeeper.session.timeout這個時間長的中斷,也不要通過 bin/hbase-daemon.sh stop regionserver去重啟,如果運氣不太好,-ROOT-或者.META.表在上面的話,所有的請求會全部失敗。4. 關(guān)閉下線一臺regionserver bin/graceful_stop.sh -stop nodename和上面一樣,系統(tǒng)會在關(guān)閉之前遷移所有region,然后stop進程,同樣最后我們要手工balance_switch true,開啟ma
16、ster的region均衡。5. 檢查region是否正常以及修復(fù) bin/hbase hbck (檢查) bin/hbase hbck -fix (修復(fù)) 會返回所有的region是否正常掛載,如沒有正常掛載可以使用下一條命令修復(fù),如果還是不能修復(fù),那需要看日志為什么失敗,手工處理。6. hbase的遷移u copytable方式 bin/hbase org.apache.hadoop.hbase.mapreduce.CopyTable -peer.adr=zookeeper1,zookeeper2,zookeeper3:/hbase 'testtable' 目前0.92之前
17、的版本的不支持多版本的復(fù)制,0.94已經(jīng)支持多個版本的復(fù)制。當然這個操作需要添加hbase目錄里的conf/mapred-site.xml,可以復(fù)制hadoop的過來。u Export/Import bin/hbase org.apache.hadoop.hbase.mapreduce.Export testtable /user/testtable versions starttime stoptime bin/hbase org.apache.hadoop.hbase.mapreduce.Import testtable /user/testtable 跨版本的遷移,我覺得是一個不錯的選擇
18、,而且copytable不支持多版本,而export支持多版本,比copytable更實用一些。u 直接拷貝hdfs對應(yīng)的文件 首先拷貝hdfs文件,如bin/hadoop distcp hdfs:/srcnamenode:9000/hbase/testtable/ hdfs:/distnamenode:9000/hbase/testtable/ 然后在目的hbase上執(zhí)行bin/hbase org.jruby.Main bin/add_table.rb /hbase/testtable 生成meta信息后,重啟hbase這個操作是簡單的方式,操作之前可以關(guān)閉hbase的寫入,執(zhí)行flush所
19、有表(上面有介紹),再distcp拷貝,如果hadoop版本不一致,可以用hftp接口的方式,我推薦使用這種方式,成本低。HBase升級在hbase-0.96-0版本,提供了升級命令,當然需要預(yù)先將低版本的升級到0.96或者更高版本時,需要使用升級命令;Hbase命令提供了如下的選項; echo "Usage: hbase <options> <command> <args>" echo "Options:" echo " -config DIR Configuration direction to use.
20、 Default: ./conf" echo " -hosts HOSTS Override the list in 'regionservers' file" echo "" echo "Commands:" echo "Some commands take arguments. Pass no args or -h for usage." echo " shell Run the HBase shell" echo " hbck Run the hbase
21、 'fsck' tool" echo " hlog Write-ahead-log analyzer" echo " hfile Store file analyzer" echo " zkcli Run the ZooKeeper shell" echo " upgrade Upgrade hbase" echo " master Run an HBase HMaster node" echo " regionserver Run an HBase HRegionServer node" echo " zookeeper Run a Zookeeper server" echo " rest Run an HBase REST server" echo " thrift Run the HBase Thrift server" echo " thrift2 Run the
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 質(zhì)量異常處理流程培訓(xùn)
- 《奇趣生物》課件
- 邊境承包魚塘合同協(xié)議
- 車位營銷策劃合同協(xié)議
- 輕質(zhì)防爆墻銷售合同協(xié)議
- 車位租賃合同安全協(xié)議
- 協(xié)議書樓盤認籌協(xié)議書
- 速貸超期合同解除協(xié)議
- 產(chǎn)品研發(fā)戰(zhàn)略合作協(xié)議說明與說明
- 專業(yè)藝術(shù)品展覽館銷售合同
- 2025年入團考試一覽無遺試題及答案
- 公司檔案及文件管理制度
- 2025年四川筠連縣國有資本投資運營有限公司招聘筆試參考題庫含答案解析
- 2024年貴州遵義公開招聘社區(qū)工作者考試試題答案解析
- 2025年全國低壓電工證(復(fù)審)考試筆試試題(300題)含答案
- 文言常識測試題及答案
- 入團考試測試題及答案
- 中班早期閱讀《跑跑鎮(zhèn)》課件
- 【語文試卷+答案 】上海市崇明區(qū)2025屆高三第二學(xué)期第二次模擬考試(崇明二模)
- Unit 4 第5課時 B learn學(xué)習(xí)任務(wù)單
- 《中國古典文學(xué)中的詠花詩與審美文化》論文
評論
0/150
提交評論