【Mac大数据开发】第五篇-分布式集群和免密登陆

1. 集群配置
【【Mac大数据开发】第五篇-分布式集群和免密登陆】此前使用的是伪分布式的单机模式,本篇使用分布式的集群配置。
配置方案如下:

bigdata1 bigdata2 bigdata3
HDFS NameNode SecondaryNameNode DataNode DataNode DataNode
YARN nodeManager ResourceManger NodeManager nodeManager
修改对应的配置文件即可。
同时更改hadoop的/etc目录下的slaves,添加三个节点的hostname。
(配置很多,配好一个scp同步给另外两台服务器即可)
如果此前使用了单机伪分布式集群的模式,注意此时要删除data目录和logs目录,重新format,否则后续启动会报错。
2. 配置免密登陆
为什么配置免密登陆?
不配置免密登陆,hadoop集群间的很多操作都需要输入密码,十分不方便
设置方式:
  1. 在三台服务器上分别生成公私钥
ssh-keygen -t rsa

生成过程中不需要输入任何二次密码,全部回车确认
  1. 分别复制公钥到指定服务器
ssh-copy-id bigdata1 ssh-copy-id bigdata2 ssh-copy-id bigdata3

以上完成免密登陆配置
3. 启动集群
在分布式集群环境中,hdfs和yarn,都需要在配置中指定的namenode和resourcemanager服务器启动-主节点。其他从节点会自动启动
首先启动hdfs系统,在data1服务器上使用指令
sbin/start-dfs.sh

第二步,启动yarn ResourceManager,在data2上执行
sbin/start-yarn.sh

注意:不能再使用start-all脚本,该脚本会启动当前节点的所有功能。
启动后,通过web控制端访问可以看到如下页面,则集群搭建成功

【Mac大数据开发】第五篇-分布式集群和免密登陆
文章图片
yarn集群效果 测试上传文件,看到3个副本

【Mac大数据开发】第五篇-分布式集群和免密登陆
文章图片
上传文件测试 4. Hadoop的Demo测试
Hadoop的share/hadoop/mapreduce目录下,官方提供了一些例子,使用wordcount进行测试(统计text文件中的单词个数)
使用指令-解析test.txt输出到out目录
hadoop jar hadoop-mapreduce-examples-2.8.4.jar wordcount /test.txt /out

通过web端和命令行都可以看到执行结果

【Mac大数据开发】第五篇-分布式集群和免密登陆
文章图片
生成out目录下的文件 【Mac大数据开发】第五篇-分布式集群和免密登陆
文章图片
统计结果 注意:在使用虚拟机过程中,一定要先关闭hadoop再关闭虚拟机,否则会造成datanode异常

    推荐阅读