一、HBase的解压
解压HBase到指定目录,可自定义:
tar -zxvf hbase-1.3.1-bin.tar.gz -C /opt
二、修改HBase对应的配置文件。
1)HBase-env.sh修改内容:
export JAVA_HOME=/opt/module/jdk1.8.0_144
export HBASE_MANAGES_ZK=false
export HBASE_PID_DIR=/var/Hadoop/pids
2)hbase-site.xml修改内容:
<configuration><!--hbase数据在hdfs中保存的路径,和单点不同的是这里的配置不再直接指向一个定死的namenode,而是一个高可用的通道,hdp1是hadoop的hdfs.site.xml文件中的dfs.nameservices的值--><property><name>hbase.rootdir</name><value>hdfs://hdp1/hbase</value></property><property><name>hbase.cluster.distributed</name><value>true</value></property><!--hbase主节点的端口0.98后的新变动,之前版本没有.port,默认端口为60000--><property><name>hbase.master.port</name><value>16000</value></property><!--zookeeper集群,不写端口默认,默认是2181,你可以在这里一起制定,也可以用下面的配置制定--><property><name>hbase.zookeeper.quorum</name><value>hdp1,hdp2,hdp3</value></property><!--zookeeper 的端口号,可以不配默认2181--><property><name>hbase.zookeeper.property.clientPort</name><value>2181</value></property><!--zookeeper运行数据路径,如果上面的环境文件中 zk manager 你设置的是true,就需要用这个配置--><property><name>hbase.zookeeper.property.dataDir</name><value>/opt/zookeeper-3.4.10/zkData</value></property></configuration>3)regionservers集群成员配置:
hdp1
hdp2
hdp3
4)如果你需要高可用的hmaster服务,只需要新增配置文件 conf/backup-masters 里面写备用主节点列表即可,hbase的ha服务非常简单,当然你也可以不用这个文件,因为它可以用命令来动态启动备用节点 5)软连接hadoop配置文件到hbase,这种方式不推荐,一来麻烦,二来容易出错:
ln -s /opt/hadoop-2.7.2/etc/hadoop/core-site.xml /opt/hbase/conf/core-site.xml
ln -s /opt/hadoop-2.7.2/etc/hadoop/hdfs-site.xml /opt/hbase/conf/hdfs-site.xml
提示:如果集群上配置了hadoop的home环境变量,就不用做软连接的操作了,而且最好是去配置hadoop的home,当然可以直接将hadoop的配置文件放在hbase的配置文件目录下,不过都不如直接配置hadoop的环境变量方便
三、用scp将HBase远程发送到其他集群节点
四、启动的方式上,和单例启动基本一致,对于备用的主节点,你可以动态在其他任意一个hbase节点上运行 hbase-daemon.sh start master命令