有时候,可能需要通过远程操作hdfs,比如在本地操作云服务器上的hdfs。
step 1:
将云服务上的hadoop环境中的jar下载到本地,一般的路径是:hadoop/share/hadoop.
这里我将hadoop安装在了/usr/local,所以完整路径是/usr/local/hadoop/share/hadoop
step 2:
将jar包加载到idea(这里使用的idea)
具体步骤:右击项目Open Module Settings->Modules-> Dependencies-> + -> JARS or Directories 然后将step中的jar包添加进去,注意,上面的hadoop文件夹下包含不止一个文件夹,每个文件夹下还有一个lib文件,有必要的话,也需要将lib下的jar包添加进去。
step 3:
//连接hdfs的demo
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import java.io.IOException;
import java.net.URISyntaxException;
public class test {
public static void main(String[] args) throws IOException,URISyntaxException,InterruptedException{
boolean status = false;
String dst1 = "hdfs://129.*.*.*:9000/hadoop/output";
Configuration conf = new Configuration();
conf.set("fs.defaultFS","hdfs://129.*.*.*:9000");
Path path = new Path(dst1);
FileSystem fs = FileSystem.get(conf);
// FileSystem fs = FileSystem.get(new URI("hdfs://129.*.*.*:9000"),conf,"hadoop");
if(fs.exists(path)){
System.out.println("file exists");
}else
System.out.println("file not exists");
}
}