学习基于阿里云 ECS 云服务器搭建大数据集群的笔记。笔记将搭建步骤和遇到的问题一一记录,用于自己查阅复习,也为小伙伴们提供一定参考帮助。
本篇是笔记的第二部分。上篇笔记完成了从服务器准备到 HDFS 伪分布式集群搭建的工作。本篇将继续完成 HDFS 全分布集群的搭建。已经有了伪分布式搭建的经验,全分布的搭建变得非常简单。
HDFS 全分布搭建
集群架构
集群使用 4 台云服务器搭建,各节点角色如下:
NN | SNN | DN | |
---|---|---|---|
Node00 | * | ||
Node01 | * | * | |
Node02 | * | ||
Node03 | * |
准备工作
关闭 selinux
查看/etc/sysconfig/selinux
文件下 SELINUX 是否为 disabled。如果不是,设定为 disabled。
我使用的服务器默认为 disabled
同步时间
通过date
命令检查四台服务器时间是否同步。我使用的服务器时间默认与北京时间同步。
安装 JDK
仿照上篇笔记,为各个节点安装 JDK 并配置环境变量。
配置 node00
如果之前启动的集群没有关闭要记得先使用命令
stop-dfs.sh
关闭
来到/opt/hadoop/hadoop-2.6.5/etc/
目录,使用cp -r hadoop/ hadoop_pseudo
命令备份配置文件。备份完成后进入 hadoop 目录,修改 core-site.xml。将hadoop.tmp.dir
临时文件目录从pseudo
修改为full
。接着打开 hdfs-site.xml,将dfs.replication
修改为 2。同时将 SNN 由 node00 修改为 node01。接着打开 slaves,将 node01 到 node03 加入 DN 列表。
记得删除 node00,因为它不再是从节点
配置 node01 到 node03
分发 hadoop
来到/opt
目录,使用命令:
1 | scp -r hadoop/ node01:`pwd` |
将 hadoop 目录分发到 node01。对 node02 和 node03 也类似进行分发操作。
配置环境变量
仿照 node00 的/etc/profile
,为其它节点配置环境变量。也可以使用scp /etc/profile node01:/etc/
将配置文件分发到各个从节点。
启动集群
格式化集群
使用命令hdfs namenode -format
格式化集群。
启动集群
使用命令start-dfs.sh
启动集群。使用jps
命令检查各个节点进程情况。也可以通过上一篇最后介绍的方法,通过浏览器进入可视化界面,查看存活节点的数量。