27hbase搭建

现在开始搭建hbase,和上面几个一样,先搭建单节点模式。搭建时要注意,因为hbase自带zookeeper,会发生冲突,具体是2181端口无法被访问,因为hafs说不定已经启动好了。所以搭建时要找没搭建的服务器,因为在hadoop中我用了3台搭建了zookeeper,所以选择了一台没搭建的。详细情况请看前面用hadoop搭建的文章。在第一张图使用7,8,9搭建的。所以在第6台搭建。这里node4没有zk,所以在node4搭建(在以下的配置中会提及,有外部zk其实也可以,具体要在hbase-env.sh中配置)安装Hbase需要安装zookeeper , 单节点hbase集成了单zk ,故一个机器不需要再安装

上传两个包,hbase包和protobuf包

解压安装包

-z:有gzip属性,即需要用 gzip 压缩  
-x:解开一个压缩文件的参数指令!  
-v :压缩的过程中显示文件(显示所有过程)!这个常用,但不建议用在背景执行过程!
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。 

在这里改名字,就是简单好记。然后删除docs,因为最后肯定要做成全分布式,然后分发,这里docs文档还挺多的,分发比较慢,就把删了,没什么影响。不删也可以。


27hbase搭建_第1张图片

就如修改环境变量(绕不过去啊)


export HBASE_HOME=/root/hbase//路径
export PATH=$PATH:$HBASE_HOME/bin

生效环境变量

source /etc/profile

配置hbase-env.sh


27hbase搭建_第2张图片


改为


export JAVA_HOME=/usr/java/jdk1.7.0_67

在这里,我查了一些资料,发现开头说的,可以在有zk的服务器上配置。设为false

export HBASE_MANAGES_ZK=false//是否用自带的zookeeper

但要在hbase-env.sh里要配置以上属性。我这里没有zk,所以不用配置了
在hbase-env.sh 配置中默认使用的是hbase自带的zk实例,在完全分布式环境中需要改为false

同样的,vi hbase-site.xml
粘贴以下内容,什么都不用改。


hbase.rootdir
file:///home/testuser/hbase


hbase.zookeeper.property.dataDir
/home/testuser/zookeeper

启动


27hbase搭建_第3张图片

hbase也是提供了一个web可视化页面


27hbase搭建_第4张图片

完全分布式的搭建

节点 zk datanode zkfc journalnode Hmaster Hregionserver
node1
node2
node3
node4

全部节点配置,配置不要忘记 source一下
export HBASE_HOME=/root/hbase(注意,这里是因为在上文中修改了名称,没有修改就不应该这样用)
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin:$HIVE_HOME/bin:$HBASE_HOME/bin


(1)准备工作:1.网络2.hosts3.ssh免秘钥

ssh-keygen
ssh-copy-id  -i .ssh/id_rsa.pub node1//另一种免秘钥方式。注意这里如果hadoop要用的话,要修改一下,
//进入hadoop-2.6.5/etc/hadoop进入hdfs-site.xml修改dfs.ha.fencing.ssh.private-key-files的属性值value为/root/.ssh/id_rsa

另一种免秘钥方式。注意这里如果hadoop要用的话,要修改一下,进入hadoop-2.6.5/etc/hadoop进入hdfs-site.xml修改dfs.ha.fencing.ssh.private-key-files的属性值value为/root/.ssh/id_rsa而不是官网所建议的id_dsa
4.时间:各个节点的时间必须一致 date -s '2019-12-20 16:23:33'
或者使用时间服务器 ntpdate





5.jdk版本
(2)解压配置
1.hbase-env.sh(JAVA_HOME和HBASE_MANAGES_ZK=false)

cd hbase/conf
vi hbase-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_67
export HBASE_MANAGES_ZK=false

2.hbase-site.xml



hbase.rootdir
hdfs://mycluster:8020/hbase//改集群名。查看集群名:cd hadoop-2.6.5/etc/hadoop  
//cat hdfs-site.xml,在里面dfs.nameservices中value值


hbase.cluster.distributed
true


hbase.zookeeper.quorum
node2,node3,node4//参照上表


hbase.unsafe.stream.capability.enforce
false


hbase.master.maxclockskew
150000


3.配置regionservers
node2
node3
node4



27hbase搭建_第5张图片

4.配置backup-masters(设置备机,在哪台启动,哪台就是主的master)
注意:这个配置文件默认没有,单独创建编辑
vi backup-masters

[root@node1 conf]# cat backup-masters
node2

5.拷贝hdfs-site.xml
将hdfs-site.xml拷贝到hbase的配置目录
[root@node1 conf]# cp /root/hadoop-2.6.5/etc/hadoop/hdfs-site.xml /root/hbase/conf/
6分发hbase到其他节点
scp -r habse node1:/root/
scp -r habse node2:/root/
scp -r habse node3:/root/

(3)start-hbase.sh(在此之前hdfs一定要先起来)


27hbase搭建_第6张图片

手动kill node01上的Hmaster进程,看是master是否会切换到node02


27hbase搭建_第7张图片

27hbase搭建_第8张图片

你可能感兴趣的:(27hbase搭建)