1、介绍

对于namenode是HA高可用集群时,客户端远程访问hdfs有两种实现方法:
(1)将所有关于namenode的参数写入Configuration对象中
(2)将配置文件core-site.xml和hdfs-site.xml文件复制到项目的src目录下

2、方式一

(1)样例代码

import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;public class HADemo {public static void main(String[] args) {// TODO Auto-generated method stubConfiguration conf = new Configuration();conf.set("fs.defaultFS", "hdfs://my");conf.set("dfs.nameservices", "my");conf.set("dfs.ha.namenodes.my", "nn1,nn2");conf.set("dfs.namenode.rpc-address.my.nn1", "192.168.12.156:8020");conf.set("dfs.namenode.rpc-address.my.nn2", "192.168.157:8020");conf.set("dfs.client.failover.proxy.provider.my","org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider");try {FileSystem fs = FileSystem.get(new URI("hdfs://my"), conf,"root");boolean b=fs.mkdirs(new Path("/a"));System.out.println(b);fs.copyFromLocalFile(new Path("D:\\a.txt"), new Path("/a/a.txt"));fs.close();} catch (Exception e) {System.out.println(e);}}}

(2)运行结果

log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
true

(3)HDFS命令验证

[root@node1 ~]# hdfs dfs -ls /a
Found 2 items
-rw-r--r--   3 root supergroup         13 2018-08-08 09:11 /a/a.txt
[root@node1 ~]# hdfs dfs -cat /a/a.txt
Hello,Hadoop!
[root@node1 ~]# 

Java API访问HA方式的HDFS相关推荐

  1. Java API 访问HA模式下的HDFS集群

    在使用Hadoop Java API访问HDFS集群时,在创建FileSystem对象时,直接指定NameNode的IP以及端口号即可.但是在HA模式下,访问HDFS集群却有一些不同,需要指定Name ...

  2. Java API访问HDFS集群(HA)

    title: Java API访问HDFS集群(HA) date: 2021-06-23 17:06:11 tags: HDFS hadoopV2版本及以后都是HA架构,active namenode ...

  3. 6 HBase java API访问HBase数据库

    HBase java API访问HBase数据库 package com.hunan.hbase_options;import org.apache.hadoop.conf.Configuration ...

  4. ElasticSearch 使用Java Api访问集群

    ElasticSearch 使用Java Api访问集群 1.创建maven工程导入pom依赖 <dependencies><dependency><groupId> ...

  5. java 生成parquet文件格式,使用Java API将Parquet格式写入HDFS,而不使用Avro和MR

    What is the simple way to write Parquet Format to HDFS (using Java API) by directly creating Parquet ...

  6. hbase java api 两种方式

    NoSQL Hbase JAVA API 实例一 导入架包: <dependency><groupId>org.apache.hbase</groupId>< ...

  7. 使用Java API访问HFDS

    目录 1.概述 2.客户端核心类 3.代码实现 3.1.使用IDEA创建一个Maven项目 3.2.配置pom.xml文件 3.3.编写代码 1.概述 HDFS在生产应用中主要是Java客户端的开发, ...

  8. Java API访问ZK的权限控制

    无权限访问结点 /*** 对于ZK的授权访问* Created by liuhuichao on 2017/7/27.*/ public class AutoSample {private stati ...

  9. 《Hadoop MapReduce实战手册》一2.8 使用HDFS的Java API

    本节书摘来异步社区<Hadoop MapReduce实战手册>一书中的第2章,第2.8节,作者: [美]Srinath Perera , Thilina Gunarathne 译者: 杨卓 ...

最新文章

  1. 刚进入大学觉得计算机课很难,高校代码条幅迎新生,00后表示刚开学就感受到秃头压力!程序员太难了...
  2. python php linux-怎么在linux上运行python
  3. 【错误记录】Ubuntu 安装软件报错 ( Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource tempora )
  4. 嵌入式开发基础环境搭建
  5. centos 6.5 安装 redis
  6. java 不能反序列化_java中的序列化与反序列化
  7. leetcode557. 反转字符串中的单词 III
  8. “控本焦虑”的工程企业 用钉钉宜搭找到了低成本数字化的“捷径”
  9. 设计模式之观察者模式(Java)
  10. 给初学者的RxJava2.0教程(三)
  11. js面向对象技术小结
  12. 浙江工业大学计算机类专业是几年,浙江工业大学计算机类专业培养计划
  13. 贝宝php支付接口,php做贝宝(paypal)支付接口
  14. 【北邮计算机考研】2022年北京邮电大学计算机考研考情分析
  15. 记录一个看着比较顺眼的blockquote的css装饰
  16. 斗鱼直播弹幕python_调用斗鱼API爬取直播间弹幕信息(用户昵称及弹幕内容)
  17. VB编程:UCase转大写,LCase转小写-4
  18. 美团小哥用计算机,美团回应大V与美团小哥争议一事:鲁莽不会让世界变好!...
  19. 最新ChatGPT商业运营版网站源码+支持AI绘画+支持用户会员套餐+邀请分佣功能+支持后台一键更新+网站后台管理+永久更新!
  20. 数据库,SQL语句的介绍

热门文章

  1. HDU2955 01背包
  2. 牛客刷题日记(2021-12-8)
  3. 各大银行ATM跨行取款收费一览表
  4. 在台式电脑上完美安装Mac OS X操作系统的解决方案
  5. java-jsp-nutz基础周测
  6. Datawhale组队学习周报(第022周)
  7. yp集之p8简单数论
  8. java程序员22年终总结以及23年展望
  9. pytorch Con2d详解
  10. odoo-email邮箱配置