Hbase偽分布式模式部署

      網(wǎng)友投稿 1206 2022-05-29

      HBase是一個分布式、面向列的開源數(shù)據(jù)庫,是Apache Hadoop項目的子項目,適用于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫。在Hadoop家族中,很多產(chǎn)品為HBase提供服務(wù):

      Hadoop HDFS為HBase提供了高可靠性的底層存儲支持;

      Hadoop MapReduce為HBase提供了高性能的計算能力;

      Zookeeper為HBase提供了穩(wěn)定服務(wù)和failover機制;

      Pig和Hive為HBase提供了高層語言支持,使得在HBase上進行數(shù)據(jù)統(tǒng)計處理變的非常簡單;

      Sqoop為HBase提供了方便的RDBMS數(shù)據(jù)導(dǎo)入功能,使得傳統(tǒng)數(shù)據(jù)庫數(shù)據(jù)向HBase中遷移變的非常方便。

      1 準備

      在HBase單機模式部署中,已經(jīng)描述了HBase在單獨的一臺電腦上獨立完成其所提供的數(shù)據(jù)庫功能的操作。與Hadoop類似,HBase也可以在偽分布式模式下進行部署。在偽分布式模式中,HBase運行在單個節(jié)點上,每個HBase守護進程(包括HMaster、HRegionServer和HQuorumPeer)運行在單獨的進程中。為了體現(xiàn)分布式,可以使用HDFS替代本地文件系統(tǒng)。所以,需要首先啟動HDFS。

      2 配置

      HBase的配置文件集中在$HBASE_HOOME/conf/hbase-site.xml中(比Hadoop分散的配置文件好多了╮(╯▽╰)╭)。

      2.1 指定運行模式

      首先,指定HBase的運行模式是分布式模式,保證每個JVM來運行一個HBase守護進程。

      hbase.cluster.distributed true

      2.2 指定文件系統(tǒng)

      指定文件系統(tǒng)使用HDFS上的hbase目錄,而且保證這個目錄在HDFS上沒有,HBase會自己創(chuàng)建,否則會報錯。

      hbase.rootdir hdfs://192.168.1.134:9000/hbase

      如果不修改hbase.rootdir,數(shù)據(jù)會寫在/tmp目錄中或HBase單機模式部署中配置的本地文件系統(tǒng)中。

      3 啟動HBase

      依然是用$HBASE_HOME/bin/start-hbase.sh腳本啟動。如果一切正常,通過jps命令,可以查詢到HMaster、HRegionServer和HQuorumPeer:

      3265 HMaster 3841 Jps 2801 SecondaryNameNode 3174 HQuorumPeer 2556 NameNode 2652 DataNode 3389 HRegionServer

      因為這里的Hadoop也是使用的偽分布式模式部署的,所以除了HBase的3個進程外,還有Hadoop的dfs的3個進程。

      4 檢查HDFS中HBase的目錄

      Hbase偽分布式模式部署

      如果工作正常,HBase會在HDFS上成功創(chuàng)建需要的目錄。

      $ hdfs dfs -ls /hbase Found 6 items drwxr-xr-x - lxh supergroup 0 2014-10-15 01:20 /hbase/.tmp drwxr-xr-x - lxh supergroup 0 2014-10-15 01:20 /hbase/WALs drwxr-xr-x - lxh supergroup 0 2014-10-15 01:12 /hbase/data -rw-r--r-- 1 lxh supergroup 42 2014-10-15 01:12 /hbase/hbase.id -rw-r--r-- 1 lxh supergroup 7 2014-10-15 01:12 /hbase/hbase.version drwxr-xr-x - lxh supergroup 0 2014-10-15 01:24 /hbase/oldWALs

      5 通過shell測試

      可以通過使用HBase shell創(chuàng)建表等操作,驗證偽分布式的HBase。具體操作可以查看這里,此處不再贅述。

      6 啟動/停止一個HMaster備份服務(wù)

      HMaster服務(wù)控制整個HBase集群。可以啟動n個HMaster服務(wù)的備份,形成n+1個HMaster服務(wù)。使用$HBASE_HOME/bin/local-master-backup.sh可以啟動HMaster備份服務(wù)。執(zhí)行該腳本時,需要提供一個參數(shù),用于指定HMaster所使用的兩個端口6000、60010。給定的數(shù)字會加到這三個默認端口上,比如給定2,啟動的HMaster備份服務(wù)使用的端口就變成60002和60012。下面的命令啟動3個備份服務(wù),使用的端口分別為:60002/60012、60003/600013、60005/60015。

      注:這里需要注意一下,官方文檔中對于HMaster的端口描述和實際操作不一樣。官方文檔寫的是三個端口默認是16010、16020和16030,其他的根據(jù)數(shù)字相加不變。也就是根據(jù)官方文檔描述,通過下面的命令啟動的3個HMaster使用的端口是16012/16022/16032、16013/16023/16033和16015/16025/16035。

      $ local-master-backup.sh start 2 3 5

      通過jps查看進程:

      5793 HMaster 4053 SecondaryNameNode 6374 Jps 4584 HRegionServer 3864 DataNode 3770 NameNode 6026 HMaster 6123 HMaster 5932 HMaster 4366 HQuorumPeer

      會發(fā)現(xiàn),多了3個HMaster。

      通過命令查看HMaster服務(wù)監(jiān)聽的端口號:

      $ lsof -Pnl +M -i6|grep -E `echo \`ps -ef|grep HMaster|grep -v grep|awk '{print $2}'\`|awk '{for(i=1;i

      得到結(jié)果為:

      java 5793 500 291u IPv6 39951 0t0 TCP 127.0.0.1:60000 (LISTEN) java 5793 500 335u IPv6 39980 0t0 TCP *:60010 (LISTEN) java 5932 500 291u IPv6 40495 0t0 TCP 127.0.0.1:60002 (LISTEN) java 5932 500 335u IPv6 41186 0t0 TCP *:60012 (LISTEN) java 6026 500 291u IPv6 40875 0t0 TCP 127.0.0.1:60003 (LISTEN) java 6026 500 335u IPv6 41249 0t0 TCP *:60013 (LISTEN) java 6123 500 291u IPv6 41194 0t0 TCP 127.0.0.1:60005 (LISTEN) java 6123 500 335u IPv6 41262 0t0 TCP *:60015 (LISTEN)

      使用腳本$HBASE_HOME/bin/local-master-backup.sh可以停止已啟動的備份服務(wù):

      $ local-master-backup.sh stop 2 3 5

      7 啟動/停止更多的RegionServer服務(wù)

      HRegionServer管理HMater指定的文件存儲上的數(shù)據(jù)。通常,集群中每個節(jié)點運行一個HRegionServer。通過$HBASE_HOME/bin/local-regionservers.sh可以啟動多個HRegionServer服務(wù)。每個HRegionServer服務(wù)使用兩個端口60020和60030。

      注:與上面提到的HMaster一樣,這里的HRegionServer默認端口也與官方文檔不一致。官方文檔描述默認端口是16020和16030。

      $ local-regionservers.sh start 2 3 4 5

      通過jps查看:

      5793 HMaster 6881 Jps 6805 HRegionServer 4053 SecondaryNameNode 6709 HRegionServer 4584 HRegionServer 3864 DataNode 3770 NameNode 6620 HRegionServer 4366 HQuorumPeer 6527 HRegionServer

      通過命令查看HMaster服務(wù)監(jiān)聽的端口號:

      $ lsof -Pnl +M -i6|grep -E `echo \`ps -ef|grep HRegionServer|grep -v grep|awk '{print $2}'\`|awk '{for(i=1;i

      得到結(jié)果為:

      java 4584 500 291u IPv6 30969 0t0 TCP 127.0.0.1:60020 (LISTEN) java 4584 500 329u IPv6 30993 0t0 TCP *:60030 (LISTEN) java 6527 500 291u IPv6 43515 0t0 TCP 127.0.0.1:60202 (LISTEN) java 6527 500 329u IPv6 43613 0t0 TCP *:60302 (LISTEN) java 6620 500 291u IPv6 44259 0t0 TCP 127.0.0.1:60203 (LISTEN) java 6620 500 329u IPv6 44602 0t0 TCP *:60303 (LISTEN) java 6709 500 291u IPv6 44578 0t0 TCP 127.0.0.1:60204 (LISTEN) java 6709 500 329u IPv6 44621 0t0 TCP *:60304 (LISTEN) java 6805 500 291u IPv6 44607 0t0 TCP 127.0.0.1:60205 (LISTEN) java 6805 500 329u IPv6 44635 0t0 TCP *:60305 (LISTEN)

      多了4給HRegionServer服務(wù)。

      $ local-regionservers.sh stop 3

      8 停止HBase

      直接使用腳本stop-hbase.sh停止。

      $ ./bin/stop-hbase.sh stopping hbase....................

      Hadoop HBase 分布式

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:Python 前端開發(fā)之HTML
      下一篇:網(wǎng)站開發(fā)進階(三十八)Web前端開發(fā)規(guī)范文檔你需要知道的事
      相關(guān)文章
      亚洲欧美aⅴ在线资源| 亚洲国产精品美女| 亚洲国产成人va在线观看网址| 国产AV无码专区亚洲AVJULIA| 国产亚洲情侣一区二区无| 亚洲国产成人五月综合网| 朝桐光亚洲专区在线中文字幕| 亚洲人成未满十八禁网站| 亚洲小说图区综合在线| 亚洲精品无AMM毛片| 亚洲免费网站观看视频| 亚洲精品无码久久久久秋霞| 亚洲午夜无码久久久久小说| 亚洲依依成人亚洲社区| 亚洲日本va一区二区三区| 亚洲精品无码aⅴ中文字幕蜜桃| 亚洲国产日韩a在线播放| 亚洲a∨无码一区二区| 国产精品亚洲专一区二区三区| 亚洲av再在线观看| 亚洲午夜福利精品久久| 国产亚洲精品福利在线无卡一| 亚洲自偷自偷在线制服| 亚洲AV无码专区电影在线观看| 久久伊人久久亚洲综合| 亚洲综合色一区二区三区小说| 亚洲手机中文字幕| 亚洲国产品综合人成综合网站| 亚洲AV色吊丝无码| 久久人午夜亚洲精品无码区| 亚洲国产成人精品女人久久久 | 韩国亚洲伊人久久综合影院| 美国毛片亚洲社区在线观看| 亚洲国产精品成人AV无码久久综合影院| 偷自拍亚洲视频在线观看99| 亚洲日韩中文字幕日韩在线| 亚洲色婷婷一区二区三区| 亚洲Aⅴ无码专区在线观看q| 亚洲第一永久在线观看| 亚洲色精品VR一区区三区 | 亚洲av无码一区二区三区网站|