hbase master服务启动不了

今天是个特殊的日子,早上腾讯的一些服务挂了(腾讯旗下QQ邮箱、QQ群共享、群相册、QQ互联等服务出现大面积登陆故障),结果下午是全国顶级域名根服务器出现了故障,导致许多网站无法访问(全国所有通用顶级域的根出现异常,导致部分国内用户无法访问.com域名网站,对全国互联网链接造成系统性影响)。

腾讯http://tech.163.com/14/0121/11/9J40AHG7000915BF.html

域名新闻http://china.haiwainet.cn/n/2014/0121/c345646-20194770.html

上面的是今天互联网行业的两大新闻了。下面来说一下今天我遇到的问题。

今天更改了一些hbase的部署,结果竟然启动不了了,查看日志原因大概意思是说不能分配请求的地址。

日志异常信息:

DEBUG org.apache.hadoop.hbase.master.HMaster: Set serverside HConnection retries=140
2014-01-21 09:10:55,878 ERROR org.apache.hadoop.hbase.master.HMasterCommandLine: Failed to start master
java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster
        at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2106)
        at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:152)
        at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:104)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
        at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:76)
        at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2120)
Caused by: java.net.BindException: Cannot assign requested address
        at sun.nio.ch.Net.bind(Native Method)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:124)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
        at org.apache.hadoop.hbase.ipc.HBaseServer.bind(HBaseServer.java:256)
        at org.apache.hadoop.hbase.ipc.HBaseServer$Listener.<init>(HBaseServer.java:482)
        at org.apache.hadoop.hbase.ipc.HBaseServer.<init>(HBaseServer.java:1559)
        at org.apache.hadoop.hbase.ipc.WritableRpcEngine$Server.<init>(WritableRpcEngine.java:255)
        at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getServer(WritableRpcEngine.java:204)
        at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getServer(WritableRpcEngine.java:56)
        at org.apache.hadoop.hbase.ipc.HBaseRPC.getServer(HBaseRPC.java:330)
        at org.apache.hadoop.hbase.ipc.HBaseRPC.getServer(HBaseRPC.java:319)
        at org.apache.hadoop.hbase.master.HMaster.<init>(HMaster.java:311)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2101)
        ... 5 more
查了一下原因,原来是我配置中映射的主机名和现在的主机名不否。
具体修改如下:
1、 vi /etc/sysconfig/network
HOSTNAME=master(master就是需要修改的主机名)
2、修改wannetwork文件后,通过命令hostname master是配置生效。(可以通过命令hostname直接查看是否修改)
3、重新启动hbase就好了。
 
 
posted @ 2014-01-21 22:35  fanbells  阅读(5508)  评论(0编辑  收藏  举报