我的一台虚机上面装了三台Centos,hostname分别是Master,Slave1,Slave2,已经配置完无密码登陆,详解请看文章配置无密码登陆,接下来配置集群。
这里之配置正常启动所必须的设置项: slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml 。
Slaves
Slave1
Slave2
core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://Master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
hdfs-site.xml,dfs.replication 为2 因为有两个Slave
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>Master:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>Master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>Master:19888</value>
</property>
</configuration>
yarn-site.xml:
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>Master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
在 Master 节点上执行:
cd /usr/local
sudo rm -rf ./hadoop/tmp # 删除 Hadoop 临时文件,我的没有tmp
sudo rm -rf ./hadoop/logs/* # 删除日志文件,
tar -zcf ~/hadoop.master.tar.gz ./hadoop # 先压缩再复制
cd ~
scp ./hadoop.master.tar.gz Slave1:/home/hadoop
Centos7关闭防火墙 ,Master和Slave都要关闭
systemctl stop firewalld.service # 关闭firewall
systemctl disable firewalld.service # 禁止firewall开机启动
然后再Master节点启动Start-all.sh,它就会根据Slave自动打开另外两个节点的服务
Master
Slave1和Slave2
缺少任一进程都表示出错。另外还需要在 Master 节点上通过命令 hdfs dfsadmin -report 查看 DataNode 是否正常启动,如果 Live datanodes 不为 0 ,则说明集群启动成功。
也可以通过 Web 页面看到查看 DataNode 和 NameNode 的状态:http://master:50070/。如果不成功,可以通过启动日志排查原因。
可以通过 Web 界面查看任务进度 http://master:8088/cluster,在 Web 界面点击 “Tracking UI” 这一列的 History 连接,可以看到任务的运行信息。
测试完毕后,集群就算搭建完了。
但是一台虚机的内存至少要4G,然而笔记本本身的内存很少有那么大的,因此这种搭建集群的方式只是用来练手,真正的大数据测试环境还不能够满足要求。建议下载一个sandbox,自带系列工具,也没必要装很多个虚机,这个里面的namenode和datanode在一个机器上。
本文出自“筱Mary”博客,转载请务必保留此处 http://blog.csdn.net/qq_31382921/article/details/52189352