搭建HDFS的HA環境(HBase安裝及配置,啟動)

      網友投稿 1208 2022-05-30

      1、在軟件包所在目錄解壓Hbase壓縮包

      [root@win1 soft]# tar -zxvf hbase-1.3.2-bin.tar.gz

      [root@win1 soft]# ls

      hadoop-2.7.7 ??????hbase-1.3.2??????????jdk1.8.0_161 ???????????zookeeper-3.4.12

      hadoop-2.7.7.tar.gz ?hbase-1.3.2-bin.tar.gz ?jdk-8u161-linux-x64.tar.gz ?zookeeper-3.4.12.tar.gz

      把解壓后的hbase-1.3.2傳到2和3

      [root@win1 conf]# scp -pr /hadoop/soft/hbase-1.3.2?win2:/hadoop/soft

      [root@win1 conf]# scp -pr /hadoop/soft/hbase-1.3.2?win3:/hadoop/soft

      編輯環境變量/root/.bash_profile

      [root@win1 conf]# vi /root/.bash_profile

      # .bash_profile

      # Get the aliases and functions

      if [ -f ~/.bashrc ]; then

      . ~/.bashrc

      fi

      # User specific environment and startup programs

      JAVA_HOME=/hadoop/soft/jdk1.8.0_161

      ZK_HOME=/hadoop/soft/zookeeper-3.4.12

      HADOOP_HOME=/hadoop/soft/hadoop-2.7.7

      HBASE_HOME=/hadoop/soft/hbase-1.3.2

      PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$ZK_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin

      CLASSPATH=$JAVA_HOME/lib:$HADOOP_HOME/lib:$HBASE_HOME/lib

      export PATH CLASSPATH

      編輯完成后記得使用source /root/.bash_profile把環境變量加載到內存!

      命令行輸入start-h能夠TAB出start-hbase.sh 即為編輯成功,如下↓

      [root@win1 conf]# start-hbase.sh

      把配置好的環境變量傳到2和3

      注意:Hbase安裝需要修改hbase-env.sh、hbase-site.xml、regionservers 配置文件,(默認沒有backup_masters,需要自己創建

      具體如下↓

      3、修改hbase-env.sh配置文件

      A、[root@win1 conf]# vi hbase-env.sh 編輯修改hbase-env.sh配置文件

      (修改jdk的位置,由于使用的jdk1.8,需要注釋PerSize,由于Hbase默認使用自帶的zookeeper,在這里我們需要啟用外部zookeeper,需要將HBASE_MANAGES_ZK設置為false)

      export JAVA_HOME=/hadoop/soft/jdk1.8.0_161?如下圖↓

      B、注釋PerSize 如下圖↓

      #?export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=256m"

      #?export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=256m"

      修改export HBASE_PID_DIR路徑,且需要在hbase-1.3.2下創建pids文件夾

      export HBASE_PID_DIR=/hadoop/soft/hbase-1.3.2/pids

      把HBASE_MANAGES_ZK設置為false 具體如下圖↓

      export HBASE_MANAGES_ZK=false

      4、編輯hbase-site.sh配置文件,最少配置以下內容↓

      [root@win1 conf]# vi hbase-site.xml

      hbase.rootdir

      hdfs://hahadoop/hbase

      hbase.cluster.distributed

      true

      hbase.zookeeper.quorum

      win1:2181,win2:2181,win3:2181

      hbase.zookeeper.property.dataDir

      /hadoop/soft/zookeeper-3.4.12

      hbase.zookeeper.property.clientPort

      2181

      編輯regionservers配置文件

      列出你希望運行的全部HRegionServer,一行寫一個主機名(就像Hadoop里的slaves一樣)。列在這里的server會隨著集群的啟動而啟動,集群的停止而停止。

      [root@win1 conf]# vi regionservers

      win1

      win2

      win3

      6、創建并編輯backup-masters,里面指定備份的Hmaster

      [root@win1 conf]# vi backup-masters

      win2

      由于Hbase依賴于hdfs,為保證hbase的副本數和hdfs一致,需要集群運行hdfs-site.xml復制到habse的conf目錄下。結果如下↓

      [root@win1 conf]# cp /hadoop/soft/hadoop-2.7.7/etc/hadoop/hdfs-site.xml (空格)/hadoop/soft/hbase-1.3.2/conf/

      二、Hadoop啟動

      以下配置需保證前面配置無誤,且需要JN、ZK、都已啟動且環境變量正確無誤,使用jps顯示以下信息:↓

      [root@win1 ~]# jps

      1891 JournalNode

      1944 Jps

      1774 QuorumPeerMain

      1、格式化namenode

      [root@win1 ~]# hdfs namenode -format?格式化hdfs文件系統

      (僅在第一次啟動之前需要格式化,后面啟動不需要格式化)

      2、啟動namenode

      [root@win1 ~]# hadoop-daemon.sh start namenode?在節點1啟動namenode

      [root@win1 ~]# jps

      2368 Jps

      1891 JournalNode

      2293 NameNode

      1774 QuorumPeerMain

      3、同步第一個namenode的生成元信息

      [root@win2 ~]# hdfs namenode -bootstrapStandby 用第二個namenode同步第一個namenode的生成元信息,正確輸出如下圖↓。

      (如果不進行這一步備namenode由于缺少元信息無法啟動,在hadoop2的namnode日志中會出現ERROR namenode.NameNode: Failed to start namenode.

      org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /hadoop/nn is in an inconsistent state: storage directory does not exist or is not accessible.)

      4、格式化zkfc

      [root@win1 ~]# hdfs zkfc -formatZK 格式化zkfc無報錯即為成功

      (僅在第一次啟動之前需要格式化,后面啟動不需要格式化)。(如果不進行這一步,會出現namenode無法向zookeeper注冊,會出現兩個namenode都為備的狀態。)

      格式化如下圖↓

      沒有報錯即為成功,如下圖:↓

      5、使用start-all.sh同時啟動hdfs及yarn,如下圖↓

      (若沒有配置ssh互信,啟動時需要輸入每一臺機器的密碼),可能節點二的resourcemanager沒有啟動,必須要手動啟動。

      Win1:↓

      Win2:↓手動啟動resourcemanager

      [root@win2 ~]# yarn-daemon.sh start resourcemanager

      6、啟動JobHistoryServer

      [root@win1 ~]# mr-jobhistory-daemon.sh start historyserver 啟動JobHistoryServer,這樣mapreduce運行歷史任務可以查看。(可選)

      啟動成功可運行jps查看每個節點上運行的進程,正常情況如下。↓

      [root@win1 ~]# jps

      9個進程↑

      [root@win2 ~]# jps

      8個進程↑

      搭建HDFS的HA環境(HBase安裝及配置,啟動)

      7、查看namenode狀態

      使用hdfs haadmin -getServiceState nn1和hdfs haadmin -getServiceState nn2查看準備namenode的狀態,如下圖↓

      [root@win1 ~]# hdfs haadmin -getServiceState nn1

      [root@win1 ~]# hdfs haadmin -getServiceState nn2

      8、訪問hdfs的web界面

      訪問hdfs的web界面,使用瀏覽器打開http://125.221.44.11:50070和http://125.221.44.12結果如下圖↓,能看到datanode的數據和啟動datanode相同,表示啟動成功。

      9、查看ResourceManager狀態

      [root@win1 ~]# yarn rmadmin -getServiceState rm1

      standby

      [root@win1 ~]# yarn rmadmin -getServiceState rm2

      active

      10、訪問yarn的web界面

      訪問yarn的web界面,使用瀏覽器打開http://125.221.44.11:8088,結果如下圖↓,表示yarn正常啟動。(如果resourcemanager是主備部署,登錄備resourcemanager時候會自動跳轉到主。)

      三、HBASE的啟動

      注意:hbase依賴于zookeeper以及hdfs,需要保證hdfs及zookeeper已經正常運行,才可以開始啟動hbase

      1、使用start-hbase.sh啟動hbase的HMaster、RegionServer。

      [root@win1 ~]# start-hbase.sh 如下圖↓

      2、使用jps確保每個節點上對應的進程已成功啟動。

      Win1如下圖↓

      Win2如下圖↓

      Win3如下圖↓

      3、使用Web輸入

      http

      ://192.168.10.30:16010

      ,登錄hbase的web界面。如下圖↓

      四、HDFS HA測試

      本實驗為搭建HDFS的HA環境,現測試HDFS的HA,

      最小化系統需要安裝組件,命令如→: yum -y install psmisc

      下載完成后,必須重啟集群→(關閉集群stop-all.sh 啟動集群start-all.sh)

      查看hadoop1為active,殺掉hadoop1的namenode,hadoop2的namenode自動升級為active,如下圖↓

      [root@win1 ~]# hdfs haadmin -getServiceState nn1

      active

      [root@win1 ~]# hdfs haadmin -getServiceState nn2

      standby

      五、YARN HA測試

      1、查看Win1的ResourceManager為active,殺掉Win1的ResourceManager,Win2的ResourceManager自動升級為active,如下圖↓

      在Win1使用yarn-daemon.sh start resourcemanager啟動resourcemanager,

      并使用yarn rmadmin -getServiceState rm1和yarn rmadmin -getServiceState rm2查看yarn狀態,如下圖↓

      [root@win1 conf]# yarn-daemon.sh start resourcemanager?開啟resourcemanager,關閉用stop

      [root@win1 conf]# yarn rmadmin -getServiceState rm1

      [root@win1 conf]# yarn rmadmin -getServiceState rm2

      六、HBase HA測試

      1、打開hbase的web界面,查看主備的hbase。

      http://125.221.44.11:16010

      2、在win1使用jps查看HMaster的進程id,并使用kill殺掉HMaster。

      [root@win1 ~]# kill 19371?殺掉HMaster

      使用web界面查看備用HMaster的狀態,如下圖,備用Hmaster已經成功提升為主Hmaster

      七、HDFS測試

      1、在hadoop1上使用hdfs 命令上傳文件到hdfs文件系統,執行hdfs dfs -put /etc/passwd??/ 上傳文件到hdfs的跟目錄,使用hdfs dfs –ls / ?查看hdfs跟下面的文件,正確結果如下下圖。

      [root@win1 etc]# hdfs dfs -put /etc/passwd /?用hdfs 命令上傳文件到hdfs文件系統

      [root@win1 etc]# hdfs dfs -ls /?查看hdfs跟下面的文件

      (passwd是etc目錄下已有的,若上傳目錄里沒有的文件則不行,如下圖↓)

      2、下載文件到家目錄

      [root@win2 ~]# hdfs dfs -get /passwd /root/?下載剛剛上傳的文件到家目錄

      八、Hbase測試

      1、使用hbase?shell進入hbase的shell命令行。(上述會有一個jar沖突的警告,如果需要消除,需要移除hbase上那個jar包即可)

      [root@win1 etc]# hbase shell?進入hbase的shell命令行

      2、查看集群狀態和節點數量,使用status

      hbase(main):001:0> status

      3、創建表,create?‘test’,‘c1’(?hbase創建表create命令語法為:表名、列名1、列名2、列名3……)

      hbase(main):005:0> create 'test','c1'

      4、查看表,list

      hbase(main):006:0> list

      5、給表寫入數據

      hbase(main):003:0> put 'test','rowkey','c1','test'

      導入數據的命令put的語法為表名、行值、列名(列名可加冒號,表示這個列簇下面還有子列)、列數據。如圖

      6、全表掃描數據(scan 'test')

      hbase(main):006:0> scan 'test'

      7、查詢表的數據(get?‘test’,’rowkey’),根據條件查詢,查詢test表中row為rowkey的值。

      hbase(main):008:0> ?get 'test','rowkey'

      8、刪除表,在刪除表之前需要先讓表失效才能刪除。使用disable?‘test’,使表失效。drop?‘test’刪除表。

      hbase(main):009:0> disable 'test'

      hbase(main):010:0> drop 'test'

      hbase(main):011:0> list

      九、Yarn2.0測試(wordcount任務)

      1、原文件位于本機,執行如下命令:↓

      [root@hadoop etc]# hadoop jar /hadoop/soft/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount ?file:///etc/passwd hdfs://125.221.44.11:8020/wordcount 任務完成如下圖↓

      2、使用hdfs dfs -cat hdfs://125.221.44.11:8020/wordcount/part-r-00000,查看輸出結果如下

      3、將文件上傳到hdfs,使用hdfs?dfs -put /etc/passwd hdfs://192.168.10.30/?執行命令如下

      [root@hadoop ~]# hadoop jar /hadoop/soft/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount /passwd ?/wordcountpasswd

      4、使用hdfs dfs -cat hdfs://125.221.44.11:8020/wordcountpasswd/part-r-00000,查看輸出結果,如下圖↓

      #——————————————————————————————————

      [root@hadoop ~]# hdfs dfs -cat hdfs://125.221.44.11:8020/wordcountpasswd/part-r-00000

      cat: Operation category READ is not supported in state standby

      原因:NameNode處于standby狀態

      #——————————————————————————————————

      附件: 搭建HDFS的HA環境(HBase安裝及配置,啟動).docx 1.42MB 下載次數:0次

      Hadoop HBase 大數據

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

      上一篇:再拔頭籌,FusionInsight為華為云大數據打造硬實力
      下一篇:關于 Kubernetes中kube-controller-managerr的一些筆記
      相關文章
      97亚洲熟妇自偷自拍另类图片| 春暖花开亚洲性无区一区二区| 亚洲欧美在线x视频| 亚洲国产一区二区a毛片| 亚洲国产香蕉人人爽成AV片久久| 亚洲色丰满少妇高潮18p| 亚洲人成影院77777| 亚洲激情黄色小说| 久久亚洲AV成人无码电影| 亚洲s色大片在线观看| 亚洲成AV人片在线观看| 亚洲精品综合一二三区在线| 少妇中文字幕乱码亚洲影视| 亚洲黄色免费网址| 亚洲无圣光一区二区| 亚洲乱码日产精品BD在线观看| 亚洲欧洲另类春色校园小说| 亚洲日产2021三区在线| 亚洲国产午夜精品理论片| 亚洲一级毛片在线播放| 亚洲色中文字幕在线播放| 亚洲а∨精品天堂在线| 国产精品亚洲精品日韩动图| 亚洲精品国产精品乱码不卞 | 国产成人亚洲综合无码| 亚洲伊人成无码综合网| 亚洲人精品午夜射精日韩 | 亚洲色大成网站www永久男同| 亚洲精品宾馆在线精品酒店| 亚洲AV色无码乱码在线观看| 亚洲国产婷婷香蕉久久久久久| 亚洲综合无码精品一区二区三区 | 亚洲精品无码不卡在线播放HE| 亚洲成AV人片在线播放无码| 亚洲av午夜成人片精品网站| 久久亚洲精品无码aⅴ大香| 亚洲av无码一区二区三区观看| 亚洲人成人网站18禁| 亚洲精品和日本精品| 国产精品国产亚洲精品看不卡| 久久狠狠高潮亚洲精品|