0
votes

I have configured HBase-0.98.6.1 in Windows using Cygwin from here and hadoop-2.5.1 is installed. For running HBase in fully distributed mode, I am following this.

I want to run HBase in fully distribute mode with 2 region servers.

Clustering setup

  • master, regionserver1 - local machine
  • regionserver2 - remote machine1

External Zookeepers

  • zookeeper1 - remote machine2
  • zookeeper2 - remote machine3

Before a week I could run HBase without any problem. But today, I am having problem with regionserver2 connecting to HMaster. regionserver1(local machine) can connect with HMaster, but regionserver2 fails.

Exception

2014-11-06 11:46:16,144 INFO [regionserver60020] regionserver.HRegionServer: reportForDuty to master=synclapn3382,60000,1415254568454 with port=60020, startcode=1415254574190 2014-11-06 11:46:16,248 WARN [regionserver60020] regionserver.HRegionServer: error telling master we are up com.google.protobuf.ServiceException: java.net.SocketException: Network is unreachable: no further information at org.apache.hadoop.hbase.ipc.RpcClient.callBlockingMethod(RpcClient.java:1678) at org.apache.hadoop.hbase.ipc.RpcClient$BlockingRpcChannelImplementation.callBlockingMethod(RpcClient.java:1719) at org.apache.hadoop.hbase.protobuf.generated.RegionServerStatusProtos$RegionServerStatusService$BlockingStub.regionServerStartup(RegionServerStatusProtos.java:8277) at org.apache.hadoop.hbase.regionserver.HRegionServer.reportForDuty(HRegionServer.java:2102) at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:857) at java.lang.Thread.run(Thread.java:745) Caused by: java.net.SocketException: Network is unreachable: no further information at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739) at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206) 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.RpcClient$Connection.setupConnection(RpcClient.java:578) at org.apache.hadoop.hbase.ipc.RpcClient$Connection.setupIOstreams(RpcClient.java:868) at org.apache.hadoop.hbase.ipc.RpcClient.getConnection(RpcClient.java:1543) at org.apache.hadoop.hbase.ipc.RpcClient.call(RpcClient.java:1442) at org.apache.hadoop.hbase.ipc.RpcClient.callBlockingMethod(RpcClient.java:1661) ... 5 more 2014-11-06 11:46:16,249 WARN [regionserver60020] regionserver.HRegionServer: reportForDuty failed; sleeping and then retrying.

I have assigned host names in /etc/hosts file correctly. I can ping the master IP from command prompt. I don't understand why this exception occurs.

1

1 Answers

0
votes

Have you enabled rDNS? regionserver2 is trying to connect to "synclapn3382" which is you master name. I would try to ping from rs2 to master using that hostname to check if it can reach it.