HBASE的搭建
搭建方式:独立模式、伪分布式、完全分布式
实际上,您需要完全分布式配置才能完全测试 HBase 并在实际场景中使用它。在分布式配置中,群集包含多个节点,每个节点运行一个或多个 HBase 守护程序。其中包括主要和备用 Master,多个 Zookeeper 节点和多个 RegionServer 节点。
1、配置四台主机免密钥
2、将 hbase 解压到 node1 的/opt
3、在/etc/profile 中配置 HBASE_HOME,并将 HBase 的 bin 目录添加到 PATH 中
4、删除/opt/hbase-0.98.12.1-hadoop2 中的 docs 目录
5、进入 conf,编辑 vim regionservers
a) 配置如下:
node2
node3
node4
6、配置 node2 为 backup master
a) 在 conf 中添加一个文件 backup-masters,并配置如下
[root@node1 conf]# echo "node2" >> backup-masters
7、在 conf/hbase-env.sh 中设置 JAVA_HOME 和 pid 目录
export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
export HBASE_PID_DIR=/opt/hbase-0.98/pids
export HBASE_MANAGES_ZK=false
8、配置 zookeeper
a) 设置使用外部的 zookeeper
在 conf/hbase-env.sh 中设置 HBASE_MANAGES_ZK=false
b) 要么将 zoo.cfg 拷贝到 HBASE 的 CLASSPATH,要么在 hbase-site.xml 中配置zookeeper 的信息。hbase 会优先使用 zoo.cfg 的配置。在 hbase-site.xml 中配置如下:
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase_ha</value>
</property>
<property>
<!-- 默认端口号可以不写,也可以添加:node2:2181,node3:2181,node4:2181 -->
<name>hbase.zookeeper.quorum</name>
<value>node2,node3,node4</value>
</property>
<property>
<!-- 可以不配置 -->
<name>hbase.zookeeper.property.dataDir</name>
<value>/var/bjsxt/zookeeper/data</value>
</property>
9、拷贝 hdfs-site.xml 到 HBASE_HOME/conf,当然,最好是做一个符号链接。
[root@node1 conf]# ln /opt/hadoop-2.6.5/etc/hadoop/hdfs-site.xml hdfs-site.xml
10、 将/opt/hadoop-0.98 拷贝到 node2,node3 和 node4。确保没有任意一个节点运行 hbase
11、 在 node2 上配置 hbase 的环境变量,生效后并将之拷贝 node3 和 node4 上。
12、 确保 zookeeper 集群正常运行,如果没有运行,则运行 zookeeper
13、 启动集群
注意:启动之前要让四台机器的时间相同