zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

hbase启动后HMaster进程自动关闭

HBase进程自动 启动 关闭
2023-09-14 09:08:21 时间

1、情况描述如题所示,hbase启动以后,HMaster进程启动了,几秒钟以后自动关闭,但是HRegionServer进程正常运行;

原因是,hdfs的默认端口号是8020,而我core-site.xml中将hdfs的端口修改为了9000。

<property>
    <name>fs.defaultFS</name>
    <value>hdfs://hadoop1:9000/</value>
</property>

但是在我们并没有指定hdfs的端口,所以在hbase启动后它会去找hdfs的默认端口8020,于是就导致了如题所示的错误。

<configuration>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://slaver1/hbase</value>
</property>
<!-- 指定hbase是分布式的 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zk的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>slaver1:2181,slaver2:2181,slaver3:2181</value>
</property>

</configuration>

所以修改的时候加上9000即可:

在配置hbase.rootdir属性时显式指定hdfs的端口为9000,配置文件修改如下:

<configuration>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://slaver1:9000/hbase</value>
</property>
<!-- 指定hbase是分布式的 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zk的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>slaver1:2181,slaver2:2181,slaver3:2181</value>
</property>

</configuration>