这是因为ip地址配置出现的问题,
在我们配置core-site.xml
文件时经常使用localhost表示本机
在/etc/hosts 文件映射中 localhost 映射的一般是 127.0.0.1, 表示本地地址,这样配置也会导致只有在本地才能访问到9000 端口(通过netstat -ntlp
查看端口与地址的绑定),所以我们在自己电脑中的java程序虽然能访问到服务器但是不能访问9000端口,最后抛出错误。
我们只需要将core-site.xml
配置文件中的localhost改成此服务器的内网ip(图中node01为我内网ip的映射)
内网ip可以通过ifconfig
查看,也可以在服务器供应商的web页面查到
为什么是内网ip大家可以看看我以前写的关于云服务器搭建Hadoop(1.x)集群