码迷,mamicode.com
首页 > 编程语言 > 详细

【Hadoop】HA 场景下访问 HDFS JAVA API Client

时间:2017-07-19 19:30:42      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:filesyste   exception   stat   provider   href   需要   namenode   []   bar   

客户端需要指定ns名称,节点配置,ConfiguredFailoverProxyProvider等信息。

代码示例:

技术分享
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.setBoolean(name, value);
        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");
        InputStream in =new FileInputStream("c://eclipse.rar");
        OutputStream out = fs.create(new Path("/eclipse"));
        IOUtils.copyBytes(in, out, 4096, true);
    }
}
技术分享
 

【Hadoop】HA 场景下访问 HDFS JAVA API Client

标签:filesyste   exception   stat   provider   href   需要   namenode   []   bar   

原文地址:http://www.cnblogs.com/rocky-AGE-24/p/7207340.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!