hbase单节点部署多regionserver

其实这个东西看透原理了很简单。。。。。。

1.前期准备:

hadoop2.6

jdk1.8

两个解压缩后的hbase官网包:命名为hbase1 和hbase2

2.配置hbase-site.xml

(1)hbase1/conf/hbase-site.xml 

<configuration>
<property>
    <name>hbase.rootdir</name>
                <value>hdfs://beh/hbase</value>
        </property>
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>10.245.2.62,10.245.2.63,10.245.2.64</value>
        </property>

</configuration>

上面的配置把regionserver的本地端口和info端口按照默认来了(60020,60030,这个没仔细区分有啥区别)

(2)hbase1/conf/hbase-env.sh

这个里面修改一下JAVA_HOME就行。

下面是重点:

(3)hbase2/conf/hbase-site.xml

<configuration>
<property>
    <name>hbase.rootdir</name>
                <value>hdfs://beh/hbase</value>
        </property>
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>10.245.2.62,10.245.2.63,10.245.2.64</value>
        </property>

<property>
<name>hbase.regionserver.port</name>
<value>4318</value>
</property>
<property>
<name>hbase.regionserver.info.port</name>
<value>4320</value>
</property>
</configuration>

标红的说明单节点不同的regionservery要占用不同的端口,否则会出错。

(4)hbase2/conf/hbase-env.sh

加上如下:

# export HBASE_PID_DIR=/var/hadoop/pids

export HBASE_PID_DIR=/opt/beh/core/hbase/pids

解释:如果不加,则在启动第二个regionserver的时候就会出现regionserver 已经运行在进程***这样的提示,因为hbase会自动在/var/hadoop/pids(这个说实话我没找到,但是感觉是在哪个pids下找的)寻找有运行hbase regionserver的进程存在,如果有就会出现如上提示。

总结:总感觉有点不完善,页面截图太费劲,大概就是页面上会出现两个region


猜你喜欢

转载自blog.csdn.net/qq_35440040/article/details/79444064