【甘道夫】NN HA 对于 Client 透明的实验
之前转载过一篇【伊利丹】写的NN HA实验记录。该博客描写叙述了主备NN透明切换的过程,也就是说,当主NN挂掉后,自己主动将备NN切换为主NN了,Hadoop集群正常执行。
今天我继续做了一个实验。目的是实现NN的切换不会对Client端程序造成影响,即NN切换对Client透明。
首先,非常重要的一点:
要保证core-site.xml中的
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://hadoop-cluster</value>
- </property>
和hdfs-site.xml中的
- <property>
- <name>dfs.nameservices</name>
- <value>hadoop-cluster</value>
- </property>
逻辑名称一定要一致。
其次:
/etc/hosts文件里无需为hadoop-cluster指定IP,hadoop-cluster仅仅是一个逻辑名,当程序或者命令通过hadoop-cluster訪问HDFS集群时,Hadoop会自己主动依据hdfs-site.xml的配置。去找到一个active的Namenode。
当然,hdfs-site.xml中的
- <property>
- <name>dfs.namenode.rpc-address.hadoop-cluster.namenode1</name>
- <value>NODE001:8020</value>
- </property>
- <property>
- <name>dfs.namenode.rpc-address.hadoop-cluster.namenode2</name>
- <value>NODE002:8020</value>
- </property>
和/etc/hosts文件里的NODE001、NODE002是必须配置的,否则Hadoop再聪明也没法得知究竟和哪个节点交互了。
最后就是Client了,
不管Namenode怎样切换,都能够在随意Hadoop节点上正常执行命令 hadoop dfs -ls hdfs://hadoop-cluster/ ,或者在程序中,将HDFS目标地址指定为 hdfs://hadoop-cluster 就可以正常执行程序。
关键在于。不通过IP地址或主备NN的主机名訪问HDFS。而是通过HDFS的逻辑名訪问。
这种话。命令和程序的执行与当前Active的Namenode是哪个节点毫无关系,一切皆透明,感觉真爽!
【甘道夫】NN HA 对于 Client 透明的实验的更多相关文章
- 【甘道夫】Hadoop2.2.0 NN HA具体配置+Client透明性试验【完整版】
引言: 前面转载过一篇团队兄弟[伊利丹]写的NN HA实验记录,我也基于他的环境实验了NN HA对于Client的透明性. 本篇文章记录的是亲自配置NN HA的具体全过程,以及全面測试HA对clien ...
- 【甘道夫】Win7x64环境下编译Apache Hadoop2.2.0的Eclipse小工具
目标: 编译Apache Hadoop2.2.0在win7x64环境下的Eclipse插件 环境: win7x64家庭普通版 eclipse-jee-kepler-SR1-win32-x86_64.z ...
- 【甘道夫】MapReduce实现矩阵乘法--实现代码
之前写了一篇分析MapReduce实现矩阵乘法算法的文章: [甘道夫]Mapreduce实现矩阵乘法的算法思路 为了让大家更直观的了解程序运行,今天编写了实现代码供大家參考. 编程环境: java v ...
- 【甘道夫】HBase(0.96以上版本号)过滤器Filter具体解释及实例代码
说明: 本文參考官方Ref Guide,Developer API和众多博客.并结合实測代码编写.具体总结HBase的Filter功能,并附上每类Filter的对应代码实现. 本文尽量遵从Ref Gu ...
- 【甘道夫】HBase基本数据操作的详细说明【完整版,精绝】
介绍 之前具体写了一篇HBase过滤器的文章.今天把基础的表和数据相关操作补上. 本文档參考最新(截止2014年7月16日)的官方Ref Guide.Developer API编写. 全部代码均基于& ...
- 【甘道夫】HBase连接池 -- HTablePool是Deprecated之后
说明: 近期两天在调研HBase的连接池,有了一些收获,特此记录下来. 本文先将官方文档(http://hbase.apache.org/book.html)9.3.1.1节翻译,方便大家阅读,然后查 ...
- 【甘道夫】HBase基本数据操作详解【完整版,绝对精品】
引言 之前详细写了一篇HBase过滤器的文章,今天把基础的表和数据相关操作补上. 本文档参考最新(截止2014年7月16日)的官方Ref Guide.Developer API编写. 所有代码均基于“ ...
- 【甘道夫】Win7环境下Eclipse连接Hadoop2.2.0
准备: 确保hadoop2.2.0集群正常执行 1.eclipse中建立javaproject,导入hadoop2.2.0相关jar包 2.在src根文件夹下拷入log4j.properties,通过 ...
- 【甘道夫】Eclipse+Maven搭建HBase开发环境及HBaseDAO代码演示样例
环境: Win764bit Eclipse Version: Kepler Service Release 1 java version "1.7.0_40" 第一步:Eclips ...
随机推荐
- (转)linux命令详解之useradd命令使用方法
linux命令详解之useradd命令使用方法 原文:http://blog.csdn.net/u011537073/article/details/51987121 Linux 系统是一个多用户多任 ...
- 编程中经常看到上下文context,这个上下文指得是什么?
举个栗子:小美气呼呼对我说:“你去死吧”,我当时哭了. 场景1:小美刚转学到我们学校,我暗恋了她很久,有一天鼓足勇气,向她表白,小美气呼呼对我说:“你去死吧”,我当时就哭了.场景2我跟小美从小青梅竹马 ...
- Spark on Yarn运行错误:Yarn application has already ended! It might have been killed or unable to launch application master
Spark on Yarn模式运行错误: bin/spark-shell --master yarn --deploy-mode client #报错 查看8088页面上的工作日志 错误原因:在执 ...
- Long 和 Integer
Integer 32位 其范围为 -2^31 到 2^31-1 之间,所以最大值是 2^31-1 Long 64位
- TOJ 2861 Octal Fractions
描述 Fractions in octal (base 8) notation can be expressed exactly in decimal notation. For example, 0 ...
- linus系统下使用hexo搭建个人博客
最近在搭建自己的个人网站,准备在上面内置一个博客模块,把之前或者以后杂七杂八的总结都放里边. 大致查了一下在WordPress和Hexo间选用了Hexo,体量较小一点. 先贴上Hexo的官方文档:He ...
- React.js 小书 Lesson8 - 组件的组合、嵌套和组件树
作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson8 转载请注明出处,保留原文链接和作者信息. 继续拓展前面的例子,现在我们已经有了 Heade ...
- js中的encodeURIComponent()函数
encodeURIComponent() 函数可把字符串作为 URI 组件进行编码. $scope.linktotheme = function () { if ($scope.curthemeid ...
- Cookie的创建、读取、删除
创建Cookie: HttpCookie cookie = new HttpCookie(COOKIE_NAME_FOR_USER);cookie.Expires = DateTime.Now.Ad ...
- [转]MySQL索引方法
此为转载文章,仅做记录使用,方便日后查看,原文链接:https://www.cnblogs.com/luyucheng/p/6289048.html MySQL索引方法 MySQL目前主要有以下几 ...