hregionserver显示“错误告诉主服务器我们启动了”显示套接字异常:参数无效

vzgqcmou  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(300)

我正在尝试在3 centos计算机中创建hbase群集。hadoop(v-2.8.0)已经启动并在我配置的hbase(v-1.2.5)上运行。hbase启动很好,它启动了hmaster和region服务器,但仍然在region服务器中显示以下错误,在hmaster日志中显示没有签入任何region服务器。

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>

RegionServer文件包含

DataNode1
DataNode2

所有节点中的etc/hosts文件都包含实际IP,而不是环回IP

192.168.00.00 NameNode
192.168.00.00 DataNode1
192.168.00.00 DataNode2

注意:所有节点的配置都是相同的。任何帮助都将不胜感激。

jvidinwx

jvidinwx1#

我也面临同样的问题,但是。。。
更改主机名解决了我的问题 sudo hostnamectl set-hostname new_hostname 我有一个主节点和一个叫做node1的节点
链接到具有配置的wiki

disho6za

disho6za2#

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

相关问题