Hbase多Master问题
我正在评估 HBase Multiple master 实用程序,因为我需要该功能。我使用了一个简单的 4 台机器 hbase 集群,其中 M1 作为主服务器。现在我也在M4中启动了Hmaster。我可以在 M4 Master 日志中看到日志,该 HMaster 正在等待,因为 M1 已经充当 HMaster。
此后,我停止了 M1 中的主控,几秒钟后,M4 主控接管了。但我没有看到任何区域服务器与这个新的主服务器进行通信。区域服务器日志显示,
2011-10-31 23:21:18,834 WARN org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to connect to master. Retrying. Error was:
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:574)
at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:404)
at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.setupIOstreams(HBaseClient.java:311)
at org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:865)
at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:732)
at org.apache.hadoop.hbase.ipc.HBaseRPC$Invoker.invoke(HBaseRPC.java:257)
at $Proxy3.getProtocolVersion(Unknown Source)
at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:419)
at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:393)
at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:444)
at org.apache.hadoop.hbase.ipc.HBaseRPC.waitForProxy(HBaseRPC.java:349)
at org.apache.hadoop.hbase.regionserver.HRegionServer.getMaster(HRegionServer.java:1443)
at org.apache.hadoop.hbase.regionserver.HRegionServer.tryRegionServerReport(HRegionServer.java:737)
at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:586)
at java.lang.Thread.run(Thread.java:619)
在我看到的 M4 主日志中,
2011-10-31 23:20:47,671 INFO org.apache.hadoop.http.HttpServer: listener.getLocalPort() returned 60010 webServer.getConnectors()[0].getLocalPort() returned 60010
2011-10-31 23:20:47,671 INFO org.apache.hadoop.http.HttpServer: Jetty bound to port 60010
2011-10-31 23:20:47,671 INFO org.mortbay.log: jetty-6.1.26
2011-10-31 23:20:48,691 INFO org.mortbay.log: Started [email protected]:60010
2011-10-31 23:20:48,691 DEBUG org.apache.hadoop.hbase.master.HMaster: Started service threads
2011-10-31 23:20:50,192 INFO org.apache.hadoop.hbase.master.ServerManager: Waiting on regionserver(s) to checkin
2011-10-31 23:20:51,695 INFO org.apache.hadoop.hbase.master.ServerManager: Waiting on regionserver(s) to checkin
2011-10-31 23:20:53,197 INFO org.apache.hadoop.hbase.master.ServerManager: Waiting on regionserver(s) to checkin
区域服务器似乎只与 M1 Hmaster 通信,而不与新的 Hmaster 通信!
我正在使用 Hbase - 0.90.0 版本
非常感谢任何有关此问题的帮助!
I am evaluating HBase Multiple master utility as I require that functionality. I used a simple 4 machine hbase cluster with M1 as master. Now I started the Hmaster in M4 as well. I could see logs in M4 Master log as, This HMaster is waiting as already M1 is acting as HMaster.
After this I stopped the Master in the M1 and after few seconds, the M4 master took over. But I am not seeing any region server communicating to this new master. The region server logs show,
2011-10-31 23:21:18,834 WARN org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to connect to master. Retrying. Error was:
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:574)
at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:404)
at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.setupIOstreams(HBaseClient.java:311)
at org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:865)
at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:732)
at org.apache.hadoop.hbase.ipc.HBaseRPC$Invoker.invoke(HBaseRPC.java:257)
at $Proxy3.getProtocolVersion(Unknown Source)
at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:419)
at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:393)
at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:444)
at org.apache.hadoop.hbase.ipc.HBaseRPC.waitForProxy(HBaseRPC.java:349)
at org.apache.hadoop.hbase.regionserver.HRegionServer.getMaster(HRegionServer.java:1443)
at org.apache.hadoop.hbase.regionserver.HRegionServer.tryRegionServerReport(HRegionServer.java:737)
at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:586)
at java.lang.Thread.run(Thread.java:619)
Also in the M4 Master log I am seeing,
2011-10-31 23:20:47,671 INFO org.apache.hadoop.http.HttpServer: listener.getLocalPort() returned 60010 webServer.getConnectors()[0].getLocalPort() returned 60010
2011-10-31 23:20:47,671 INFO org.apache.hadoop.http.HttpServer: Jetty bound to port 60010
2011-10-31 23:20:47,671 INFO org.mortbay.log: jetty-6.1.26
2011-10-31 23:20:48,691 INFO org.mortbay.log: Started [email protected]:60010
2011-10-31 23:20:48,691 DEBUG org.apache.hadoop.hbase.master.HMaster: Started service threads
2011-10-31 23:20:50,192 INFO org.apache.hadoop.hbase.master.ServerManager: Waiting on regionserver(s) to checkin
2011-10-31 23:20:51,695 INFO org.apache.hadoop.hbase.master.ServerManager: Waiting on regionserver(s) to checkin
2011-10-31 23:20:53,197 INFO org.apache.hadoop.hbase.master.ServerManager: Waiting on regionserver(s) to checkin
Seems the region servers are only communicating to the M1 Hmaster and not to the new one!!
I am using Hbase - 0.90.0 version
Any help regarding this is highly appreciated!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看起来这在 Hbase 0.90.3 上工作得很好。还是需要验证一下!!
http://old.nabble.com/Hbase-Multiple-Master -问题-td32757197.html#a32758542
It seems this works fine with Hbase 0.90.3. Need to verify though!!
http://old.nabble.com/Hbase-Multiple-Master-issue-td32757197.html#a32758542