Hadoop学习11--Ha集群配置启动

理论知识:

http://www.tuicool.com/articles/jameeqm

这篇文章讲的非常详细了:

http://www.tuicool.com/articles/jameeqm

以下是进阶,讲QJM工作原理:

http://www.tuicool.com/articles/eIBB3a

 首次启动ha集群过程:

hdfs zkfc -formatZK(这个之前落下了,很重要,如果不注册到zookeeper,那么等于hdfs和zookeeper没产生任何关系)

1、启动journalnode

sbin/hadoop-daemon.sh start journalnode  是每一台journode机器

2、启动namenode 

1)格式化bin/hdfs namenode -format

2)启动这个namenode : sbin/hadoop-daemon.sh start namenode

3)格式化另一台namonode  bin/hdfs namenode -bootstrapStandby :注意2-3步骤的顺序,使用时,我犯了个错误,把顺序颠倒了,结果,第二台namenode的tem.dir目录一直没有任何文件。

4)启动第二台namenode:sbin/hadoop-daemon.sh start namenode

 3、到了这一步对于新手来说有个陷阱。我们在学习的时候,都知道两台namenode一台是active,一台是standby。可是此刻,两台都是standby。

还以为是出了问题,后来终于发现,这里是需要【手动转换】的!

bin/hdfs haadmin -transitionToActive nn1

此时,可以通过之前配置的http地址访问集群了。

http://master:50070

tip:关闭防火墙:sudo ufw disable

4、启动datanode

逐台 sbin/hadoop-daemon start datanode

---------结束

把非Ha集群,转换为Ha集群:(和上面的首次相比,只是步骤二由格式化变成了初始化)

1、启动所有journalnode

sbin/hadoop-daemon start journalnode

2、在其中一台namenode上对journalnode的共享数据进行初始化

bin/hdfs namenode  -initializeShareEdits

3、启动这台namenode

sbin/hadoop-daemon start namenode

4、在第二台namenode上同步:

bin/hdfs namenode -bootstrapStandby

5、启动第二台namenode

6、启动所有的datanode

------------结束

一些常用的管理集群的命令:

bin/hdfs haadmin -getServiceStae nn1

bin/hdfs haadmin -failover nn1 nn2

bin/hdfs haadmin transitionActive nn1(不常使用,因为不会运行fence,无法关闭前一个namenode造成脑裂)

bin/hdfs haadmin transitionStandby nn2(不常使用,因为不会运行fence,无法关闭前一个namenode造成脑裂)

bin/hdfs haadmin checkHealth nn2

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java思维导图

开源项目renren-fast解读,让java不再难懂(二)

1、百度百科的解释: XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览...

29840
来自专栏程序员互动联盟

【专业技术】Android如何保证安全?

存在问题: 那么多小伙伴想root,root后好处多多你懂的,那么开发的小伙伴最想关心的是安全机制问题。 解决方案: 我们就以此来了解一下Android 安全...

40160
来自专栏小白安全

分享几个绕过URL跳转限制的思路

大家对URL任意跳转都肯定了解,也知道他的危害,这里我就不细说了,过~ 大家遇到的肯定都是很多基于这样的跳转格式 http://www.xxx.x...

86460
来自专栏Java帮帮-微信公众号-技术文章全总结

Java开发必会框架Struts2第二天

一、封装请求正文到对象中(非常重要) 1、静态参数封装 在struts.xml配置文件中,给动作类注入值。调用的是setter方法。 ? 原因:是由一个stat...

39680
来自专栏二次元

中国电信登录RSA算法+分析图文

一、用到的工具 1.ie浏览器(9以上的版本) 2.httpwatch (中英文都可以) 3.js调试工具 目标网站:http://x...

10800
来自专栏程序员互动联盟

【专业技术】Android安全嘛?

安卓有一套自己的安全权限机制,大部分来自linux的权限机制,某些地方也做了延伸,比如linux中的用户概念,在安卓上来说就相当于app。对于一些刚学习安卓的同...

41990
来自专栏散尽浮华

Python-Socket

socket通常也称作套接字,用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过“套接字”向网络发出请求或者应答网络请求 socket既是一种特殊文件...

28370
来自专栏决胜机器学习

设计模式专题(十)——观察者模式

设计模式专题(十)——观察者模式 (原创内容,转载请注明来源,谢谢) 一、概述 观察者模式(Observer),又称做发布-订阅模式(Publish/Subs...

36890
来自专栏拂晓风起

Flex Actionscript 3 flash游戏 键盘 连招 连按 combo 同时按 事件处理

13450
来自专栏后台及大数据开发

API接口设计:防参数篡改+防二次请求

API接口由于需要供第三方服务调用,所以必须暴露到外网,并提供了具体请求地址和请求参数

96620

扫码关注云+社区

领取腾讯云代金券