Hadoop部署时报Cannot assign requeste

2017-11-14  本文已影响0人  耗子在简书

今天有人给我提了一个问题,说是在部署hadoop的时候无法启动namnode,报错信息是端口被占用。我拿过服务器来上去看了一下,通过查看log,发现确实报了一个:

Port in use: master:50070

这样的一个错误。但是我继续往下翻log的时候,发现导致这个报错的原因是:

Cannot assign requested address

起初我认为一定是他无意中已经启动了namenode,导致了50070端口的占用,于是百度一番,得到的解决方案无非就是ps列出来占用端口的进程,或者

netstat -lntp

查看那些进程占据了哪些端口,然后kill掉。可是两种思路都试过了都不见效,于是我认定了原因就在后面真正的报错信息上。再次百度一番,发现了这篇文章:

namenode启动失败 。 : Cannot assign requested address

于是仔细咨询了提问者,原来他的服务器真的是VPS,然后我用ifconfig查到了inet的地址:

root@master:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 52:54:00:**:**:**  
          inet addr:10.105.***.***  Bcast:10.105.255.255  Mask:255.255.***.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:706244 errors:0 dropped:0 overruns:0 frame:0
          TX packets:365273 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:403794983 (403.7 MB)  TX bytes:44644630 (44.6 MB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:8700 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8700 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:1678851 (1.6 MB)  TX bytes:1678851 (1.6 MB)

修改
/etc/hosts
把本机的hostname解析条目的ip改为inet的ip,slave的ip仍为公网ip

10.105.***.*** master

重新部署配置hadoop,使用公网ip访问namenode,成功。

上一篇下一篇

猜你喜欢

热点阅读