HRegionServer显示“错误通知主机我们已经启动".显示套接字异常:无效的参数 [英] HRegionServer shows "error telling master we are up". Showing socket exception: Invalid argument

查看:545
本文介绍了HRegionServer显示“错误通知主机我们已经启动".显示套接字异常:无效的参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在3个centos机器中创建一个hbase集群. Hadoop(v-2.8.0)已启动并在顶部运行我配置了HBase(v-1.2.5).Hbase启动很好,它启动了HMaster和Region服务器,但仍然显示区域服务器和HMaster日志中的以下错误它显示没有签入任何区域服务器.

Iam trying to create a hbase cluster in 3 centos machines. Hadoop(v - 2.8.0) is up and running on top I configured HBase(v - 1.2.5).Hbase start up is fine it started HMaster and Region servers but still it shows the follwing error in region servers and in HMaster log it shows no region servers are checked in.

2017-04-20 19:30:33,950 WARN  [regionserver/localhost/127.0.0.1:16020] regionserver.HRegionServer: error telling master we are up
com.google.protobuf.ServiceException: java.net.SocketException: Invalid argument
        at org.apache.hadoop.hbase.ipc.AbstractRpcClient.callBlockingMethod(AbstractRpcClient.java:240)
        at org.apache.hadoop.hbase.ipc.AbstractRpcClient$BlockingRpcChannelImplementation.callBlockingMethod(AbstractRpcClient.java:336)
        at org.apache.hadoop.hbase.protobuf.generated.RegionServerStatusProtos$RegionServerStatusService$BlockingStub.regionServerStartup(RegionServerStatusProtos.java:8982)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.reportForDuty(HRegionServer.java:2316)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:907)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.SocketException: Invalid argument
        at sun.nio.ch.Net.connect0(Native Method)
        at sun.nio.ch.Net.connect(Net.java:454)
        at sun.nio.ch.Net.connect(Net.java:446)
        at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:648)
        at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:192)
        at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:529)
        at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:493)
        at org.apache.hadoop.hbase.ipc.RpcClientImpl$Connection.setupConnection(RpcClientImpl.java:416)
        at org.apache.hadoop.hbase.ipc.RpcClientImpl$Connection.setupIOstreams(RpcClientImpl.java:722)
        at org.apache.hadoop.hbase.ipc.RpcClientImpl$Connection.writeRequest(RpcClientImpl.java:906)
        at org.apache.hadoop.hbase.ipc.RpcClientImpl$Connection.tracedWriteRequest(RpcClientImpl.java:873)
        at org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1241)
        at org.apache.hadoop.hbase.ipc.AbstractRpcClient.callBlockingMethod(AbstractRpcClient.java:227)

我的主节点的JPS

[hadoop@localhost bin]$ jps
20624 SecondaryNameNode
20800 ResourceManager
20401 NameNode
18061 Jps
17839 HMaster

myregion节点的JPS是

[hadoop@localhost bin]$ jps    
11168 Jps
482 DataNode
10840 HQuorumPeer
10974 HRegionServer

所有节点的hbase-site.xml

<configuration>
<property>
        <name>hbase.master.hostname</name>
        <value>NameNode</value>
</property>
<property>
        <name>hbase.rootdir</name>
        <value>hdfs://NameNode:8020/hbase</value>
</property>
<property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
</property>
<property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>hdfs://NameNode:8020/zookeeper</value>
</property>
<property>
        <name>hbase.zookeeper.quorum</name>
        <value>DataNode1,DataNode2</value>
</property>
<property>
        <name>hbase.zookeeper.property.clientPort</name>
        <value>2181</value>
</property>
</configuration>

区域服务器文件包含

DataNode1
DataNode2

所有节点中的

etc/hosts文件包含实际ip,而不是回送ip

192.168.00.00 NameNode
192.168.00.00 DataNode1
192.168.00.00 DataNode2

所有节点的注释配置均相同.任何帮助将不胜感激.

Note configuration is same in all nodes. Any help will be appreciated.

推荐答案

我在所有区域服务器中都添加了以下属性hbase-site.xml解决了我的问题.<property> <name>hbase.regionserver.hostname</name> <value>DataNode1</value> </property> <property> <name>hbase.regionserver.port</name> <value>16020</value> </property>

I put the following property in all region servers hbase-site.xml solved my problem.<property> <name>hbase.regionserver.hostname</name> <value>DataNode1</value> </property> <property> <name>hbase.regionserver.port</name> <value>16020</value> </property>

这篇关于HRegionServer显示“错误通知主机我们已经启动".显示套接字异常:无效的参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆