网上大部分安装介绍都是基于单个HMaster的,这样会存在一个单点故障问题.这里我介绍下多个HMaster的安装配置,详见下面配置文件:
一、 hbase-env.sh 文件修改点:
# The java implementation to use. Java 1.6 required.
export JAVA_HOME=/usr/java/latest
# Extra Java CLASSPATH elements. Optional.
export HBASE_CLASSPATH=/home/hadoop/hadoop/etc/hadoop
# The maximum amount of heap to use, in MB. Default is 1000.
export HBASE_HEAPSIZE=1000
export HBASE_OPTS="-XX:+UseConcMarkSweepGC"
export HBASE_LOG_DIR=${HBASE_HOME}/logs
export HBASE_MANAGES_ZK=false
二、 hbase-site.xml文件配置:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase</value>
<description>The directory shared by RegionServers.</description>
</property>
<property>
<name>hbase.master</name>
<value>60000</value> <!--这里注意了,只需端口即可,不必再写主机名称了! -->
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoopm,hadoop1,hadoop2</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/data/zookeeper</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/home/hadoop/data/hbase/</value>
</property>
</configuration>
三、regionservers文件配置:(其实这个文件的内容比较简单,主要是几个DataNode的主机名称)
hadoop1
hadoop2
hadoop3
hadoop4
四、这步主要做个说明:
1.以上配置在所有主机的Hbase中都是一样的。
2.Hbase安装在所有节点,包括NameNode,因为NameNode我主要是让其来管理HMaster的。
3.因为我的安装是基于Hadoop的HA,我有两个NameNode,准备让这两个NameNode都运行HMaster。
4.我有六台服务分别为hadoopm,hadoopm1这两个是NameNode,上面regionservers里配置的4个主机名是我的DataNode。
5.现在开始启动:在hadoopm上hbase目录的bin下执行:./start-hbase.sh
在hadoopm1上hbase目录的bin下执行:./hbase-daemon.sh start master
不出意外的情况下,这样就Ok了,可以试着打开浏览器看看Hbase了,然后在hadoopm上hbase目录的bin下执行:./hbase-daemon.sh stop master看看
hadoopm1是否会自动接口HMaster。提示:建议看日志,日志里说的非常清楚!我就不演示了,这是此片日志的第二次写了,现在是用txt在本地写的,写完复制
到网页里,刚才直接写在网页里,结果写了这么多没提交成功,全部没了!
如果说的有不对的地方敬请指正,谢谢!
|
|