hbase集群搭建,hbase单个节点重启
1.1 hbase集群結(jié)構(gòu)
REGION:是HBASE中對(duì)表進(jìn)行切割的單元
HMASTER: HBASE的主節(jié)點(diǎn),負(fù)責(zé)整個(gè)集群的狀態(tài)感知,負(fù)載分配、負(fù)責(zé)用戶表的元數(shù)據(jù)管理
(可以配置多個(gè)用來(lái)實(shí)現(xiàn)HA)
為regionserver分配region,負(fù)責(zé)regionserver負(fù)載均衡
用戶對(duì)表的增刪改查
如果當(dāng)前的regionserver宕機(jī),會(huì)把region遷移
REGION-SERVER: HBASE中真正負(fù)責(zé)管理region的服務(wù)器,也就是負(fù)責(zé)為客戶端進(jìn)行表數(shù)據(jù)讀寫(xiě)的服務(wù)器
維護(hù)master給它的region
當(dāng)這個(gè)region過(guò)大的情況下,他還負(fù)責(zé)切分這個(gè)過(guò)大的region
(負(fù)責(zé)客戶端的IO請(qǐng)求,去hdfs上進(jìn)行讀寫(xiě)數(shù)據(jù))
ZOOKEEPER: 整個(gè)HBASE中的主從節(jié)點(diǎn)協(xié)調(diào),主節(jié)點(diǎn)之間的選舉,集群節(jié)點(diǎn)之間的
上下線感知……都是通過(guò)zookeeper來(lái)實(shí)現(xiàn)
Region 存儲(chǔ)尋址入口
監(jiān)控:REGION SERVER 上下線 把這個(gè)狀態(tài)告訴master
存儲(chǔ)hbase的schema(當(dāng)前哪些表,表里有哪些列族)
1.2 hbase集群搭建
(1)上傳hbase安裝包(上傳到hadoop1,hadoop2,hadoop3這三臺(tái)服務(wù)器上),上傳后的位置如下:
[root@hadoop1 software]# cd /home/tuzq/software [root@hadoop1 software]# pwd /home/tuzq/software [root@hadoop1 software]# ls hbase-1.3.1-bin.tar.gz(2)解壓,并配置環(huán)境變量
[root@hadoop1 software]# tar -zxvf hbase-1.3.1-bin.tar.gz [root@hadoop1 software]# cd hbase-1.3.1 [root@hadoop1 hbase-1.3.1]# ll 總用量 348 drwxr-xr-x. 4 root root 4096 4月 5 11:02 bin -rw-r--r--. 1 root root 148959 4月 7 09:45 CHANGES.txt drwxr-xr-x. 2 root root 4096 4月 5 11:02 conf drwxr-xr-x. 12 root root 4096 4月 7 10:35 docs drwxr-xr-x. 7 root root 4096 4月 7 10:26 hbase-webapps -rw-r--r--. 1 root root 261 4月 7 10:37 LEGAL drwxr-xr-x. 3 root root 4096 6月 22 11:25 lib -rw-r--r--. 1 root root 130696 4月 7 10:37 LICENSE.txt -rw-r--r--. 1 root root 43258 4月 7 10:37 NOTICE.txt -rw-r--r--. 1 root root 1477 9月 21 2016 README.txt [root@hadoop1 hbase-1.3.1]# [root@hadoop1 hbase-1.3.1]# vim /etc/profile #set hbase env export HBASE_HOME=/home/tuzq/software/hbase-1.3.1 export PATH=$PATH:$HBASE_HOME/bin[root@hadoop1 hbase-1.3.1]# source /etc/profile(3)配置hbase集群,要修改3個(gè)文件
注意: 要把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下
(3.1)修改hbase-env.sh
export JAVA_HOME=/usr/local/jdk1.8.0_73 #告訴hbase使用外部的zk,HBASE不管理zookeeper集群 export HBASE_MANAGES_ZK=false #配置hadoop的環(huán)境變量 export HADOOP_HOME=/home/tuzq/software/hadoop-2.8.0(3.2)修改 hbase-site.xml
<configuration><!-- 指定hbase在HDFS上存儲(chǔ)的路徑,讓hdfs統(tǒng)一管理HBASE產(chǎn)生的數(shù)據(jù)文件,說(shuō)明不是單機(jī)的hbase,是一個(gè)集群的hbase,注意這里的hdfs://mycluster是hadoop的core-site-xml里的fs.defaultFS的值,hadoopHA配置是沒(méi)有端口的--><property><name>hbase.rootdir</name><value>hdfs://mycluster/hbase</value></property><!--指定hbase是否分布式的--><property><name>hbase.cluster.distributed</name><value>true</value></property><!--指定zk的地址,多個(gè)用","分割,注意,這里只是指定zookeeper的主機(jī)名稱--><property><name>hbase.zookeeper.quorum</name><value>hadoop11,hadoop12,hadoop13</value></property> </configuration>(3.3)修改 regionservers
通過(guò)這個(gè)告訴slave有那些臺(tái)(hadoop1(Master),hadoop2,hadoop3,hadoop4,hadoop5為slave)
(3.3) 修改 backup-masters來(lái)指定備用的主節(jié)點(diǎn)
[root@mini1 conf]# vi backup-masters hadoop2(3.4) 拷貝hbase到其他節(jié)點(diǎn)
[root@hadoop1 software]# pwd /home/tuzq/software [root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop2:$PWD [root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop3:$PWD [root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop4:$PWD [root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop5:$PWD注意:修改這些機(jī)器上的storm的環(huán)境變量
(4) 將配置好的HBase拷貝到每一個(gè)節(jié)點(diǎn)并同步時(shí)間。
(可以用 ntpdate time.nist.gov 進(jìn)行同步)
(5) 啟動(dòng)所有的hbase進(jìn)程
首先要同步集群的時(shí)間
停止hbase的方式是:
[root@hadoop1 bin]# ./stop-hbase.sh stopping hbase..................... [root@hadoop1 bin]# jps 10864 ConsoleConsumer 4624 DataNode 112387 Jps 109748 DFSZKFailoverController 10680 ConsoleConsumer 108618 ResourceManager 3981 JournalNode 108735 NodeManager 4095 NameNode [root@hadoop1 bin]#(6) 通過(guò)瀏覽器訪問(wèn)hbase管理頁(yè)面
192.168.1.201:60010
http://hadoop1:16010/
Ip:16010
進(jìn)入hadoop-ha集群中,查看數(shù)據(jù)發(fā)現(xiàn)已經(jīng)多出了一個(gè)hbase的文件夾
(7) 為保證集群的可靠性,要啟動(dòng)多個(gè)HMaster
[root@hadoop1 software]# cd $HBASE_HOME/bin
[root@hadoop1 software]# ./hbase-daemon.sh start master (這個(gè)可以到hadoop2上啟動(dòng))
HBASE:
很多時(shí)候,節(jié)點(diǎn)失效是因?yàn)閜id文件被刪除引起(默認(rèn)pid文件中/tmp下),所以最好把很多默認(rèn)是/tmp的目錄修改成自己的目錄,比如hbase的pid配置可以在hbase-env.sh中,修改export HBASE_PID_DIR=/var/hadoop/pids就可以。hbase節(jié)點(diǎn)失效常對(duì)應(yīng)60020端口異常。
進(jìn)入hbase shell
1、查看節(jié)點(diǎn)情況:
status
當(dāng)然,也可以通過(guò)web頁(yè)面查看(如果服務(wù)開(kāi)放的話):
http://serviceIp:60010/master.jsp
http://serviceIp:60030/regionserver.jsp
http://serviceIp:60010/zk.jsp
2、重啟
$bin/hbase-daemon.sh stop regionserver $bin/hbase-daemon.sh start regionserver也可以添加新的master(默認(rèn)只有一個(gè)master),$bin/hbase-daemon.sh start master
總結(jié)
以上是生活随笔為你收集整理的hbase集群搭建,hbase单个节点重启的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 技嘉主板时间怎么设置方法 如何设置技嘉主
- 下一篇: HBase建表高级属性,hbase应用案