当前位置: 移动技术网 > IT编程>数据库>其他数据库 > Call to localhost/127.0.0.1:9000 failed on connection exception:java.net.ConnectException的解决方案

Call to localhost/127.0.0.1:9000 failed on connection exception:java.net.ConnectException的解决方案

2018年12月21日  | 移动技术网IT编程  | 我要评论

call to localhost/127.0.0.1:9000 failed on connection exception:java.net.connectexception的解决方案

作者:凯鲁嘎吉 - 博客园 

在启动hadoop时,出现了如下错误:

call from java.net.unknownhostexception: ubuntu-larntin: ubuntu-larntin to localhost:9000 failed on connection exception: java.net.connectexception: connection refused;

而且启动datanode、yarn都正常,只有namenode一直挂掉

解决方案如下:

wrr@ubuntu:~$ hadoop namenode -format

之后,重新启动所有的集群,即可

wrr@ubuntu:~$ cd /home/wrr/java/hadoop-2.7.6/sbin
wrr@ubuntu:~/java/hadoop-2.7.6/sbin$ ./hadoop-daemon.sh start namenode
starting namenode, logging to /home/wrr/java/hadoop-2.7.6/logs/hadoop-wrr-namenode-ubuntu.out
wrr@ubuntu:~/java/hadoop-2.7.6/sbin$ jps
8307 datanode
9317 namenode
7431 
9352 jps
8476 resourcemanager

之后,再次在eclipse上运行程序,就没问题了。

新建了一个java文件

import org.apache.hadoop.conf.configuration;
import org.apache.hadoop.fs.filesystem;
import org.apache.hadoop.fs.path;
public class hdfsfileifexist {
    public static void main(string[] args){
        try{
            string filename = "test";
            configuration conf = new configuration();
            conf.set("fs.defaultfs", "hdfs://localhost:9000");
            conf.set("fs.hdfs.impl", "org.apache.hadoop.hdfs.distributedfilesystem");
            filesystem fs = filesystem.get(conf);
            if(fs.exists(new path(filename))){
                system.out.println("文件存在");
            }else{
                system.out.println("文件不存在");
            }
 
        }catch (exception e){
            e.printstacktrace();
        }
    }
}

判断当前hadoop-2.7.6目录下是否存在test文件

如果想看更多关于java api的内容,可以看

 

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网