JAVA HDFS API Client 连接HA

Posted shysky123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA HDFS API Client 连接HA相关的知识,希望对你有一定的参考价值。

如果Hadoop开启HA,那么用Java Client连接Hive的时候,需要指定一些额外的参数

package cn.itacst.hadoop.hdfs;

import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URI;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;

public class HDFS_HA {

    
    public static void main(String[] args) throws Exception {
        Configuration conf = new Configuration();
        conf.set("fs.defaultFS", "hdfs://ns1");
        conf.set("dfs.nameservices", "ns1");
        conf.set("dfs.ha.namenodes.ns1", "nn1,nn2");
        conf.set("dfs.namenode.rpc-address.ns1.nn1", "itcast01:9000");
        conf.set("dfs.namenode.rpc-address.ns1.nn2", "itcast02:9000");
        conf.set("dfs.client.failover.proxy.provider.ns1", "org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider");
        FileSystem fs = FileSystem.get(new URI("hdfs://ns1"), conf, "hadoop");
        FileStatus[] list = fs.listStatus(new Path("/"));
        for (FileStatus fileStatus : list) {
            System.out.println(fileStatus.toString());
        }
     fs.close();
} }

 

以上是关于JAVA HDFS API Client 连接HA的主要内容,如果未能解决你的问题,请参考以下文章

HadoopHA 场景下访问 HDFS JAVA API Client

HDFS连接JAVA,HDFS常用API

三HDFS中的Java和Python API接口连接

java API 操作HDFS服务器

HDFS的Java API( Java API封装类)

使用HDFS客户端java api读取hadoop集群上的信息