您的位置:首页 > 运维架构

Hadoop小兵笔记【二】Hadoop分布式集群扩展实战经验

2015-04-14 13:23 555 查看
一、集群原先配置:

主机名sparkMaster,Ubuntu12.04-32 ,用户名Root , 内存4g
(只用于任务调度和分配,不做计算节点)

从机名sparkSlave1,Ubuntu12.04-32 ,用户名Root , 内存4g (计算节点)

从机名sparkSlave2,Ubuntu12.04-32 ,用户名Root , 内存1.7g (计算节点)

二、扩展原因:计算数据量增大,原先的两个工作节点已不不能满足实时性的需求,由于实验室计算资源有限,故将原先的调度节点也增加为计算节点,即扩展后的sparkMaster既是调度节点也是计算节点。

三、修改配置流程:cd /usr/local/hadoop/hadoop-2.2.0/etc/hadoop

vim slaves 修改slaves文件,将原先只有sparkSlave1、sparkSlave2的内容增添sparkMaster,保存退出(对三个节点上的文件分别执行同样操作);

vim hdfs-site.xml修改hdfs-site.xml文件,将dfs.replication的值由2改写成3(对三个节点上的文件分别执行同样操作);



四、格式化HDFS:cd /usr/local/hadoop/hadoop-2.2.0/bin

hadoop namenode -format

五、错误描述:启动SparkMaster成功,使用jps查看SparkMaster进程时会出现Datanode、Namenode、ResourceManager 、NodeManager、SecondaryNameNode、jps,但是使用jps查看sparkSlave1、sparkSlave2 的进程时只会短暂地出现十秒钟左右Datanode、NodeManager、jps,随后进程便会掉线,而且在访问http://SparkMaster:50070登录web控制台查看HDFS集群状况时Live
Node=0,这说明Hadoop集群没有启动成功(下图为启动成功时配图):



六、错误分析:由于在执行hadoop格式化时namenode format会初始化一些目录和文件,这其中包括/usr/local/hadoop/hadoop-2.2.0/dfs/name/current里面的VERSION文件:



其中clusterID会在格式化时更改,而且会造成SparkMaster的clusterID和sparkSlave1、sparkSlave2的clusterID 不一致,这样就会造成Hadoop集群启动失败。

七、解决方法:在执行格式化之前,需要将所有节点中的/usr/local/hadoop/hadoop-2.2.0/dfs目录里面的内容清空,并使用./stop-all.sh停止集群,这样就能保证SparkMaster、sparkSlave1、sparkSlave2里面的clusterID都是一致的。

ps:作者水平有限,如有不当之处,还望读者不吝赐教!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐