实现步骤:
1、 利用Vmware10来构建虚拟机,我们需要三台虚拟机,虚拟机配置一个即可,进行克隆操作;
2、 于/etc/hostname处分别修改主机名为master,slave1,slave2;
3、 防火墙设置:虚拟机必须都关闭防火墙才能启动集群
Systemctl status firewalld.service 检查状态
Systemctl stop firewalld.service 关闭
Systemctl disable firewalld.service 防止开机自启
4、 配置/etc/hosts;
5、 下载解压并配置JDK;于/etc/profile处配置路径:/home/renchao/java/jdk1.8.0_171
6、 免密匙登录;操作需在用户renchao下而不是root用户;把三个主机上通过ssh-keygen–t rss生成的公匙合并为authorized_keys,然后分别放置在各主机生成存放密匙/home/renchao/.ssh的目录下.
此处要修改.ssh文件夹的权限chmod600 ~/.ssh/authorized_keys
7、 下载解压并配置hadoop;路径:/home/renchao/hadoop/hadoop-3.1.0
(spark,scala这些是后面的配置)
8、 配置hadoop文件;在/home/renchao/hadoop/hadoop-3.1.0/etc/hadoop下
(1)hadoop-env.sh
(2)yarn-env.sh
(3)core-site.xml
(4)hdfs-site.xml
(5)yarn-site.xml
(6)mapred-site.xml
(7)workers(配置集群时,workers这个配置文件是保证集群在 start-dfs.sh 时候是否帮你启动 slave 的 datanode 的,如果不配置,只启动主节点。)
问题总结:
1、 途中出现No routeto host问题,分析后发现主机master没有关闭防火墙;
2、 启动集群时不要频繁格式化文件系统;
3、 Hadoop3上面配置workers来替代slaves;
4、 当datanode没起来时,可以删掉tmp文件夹和hdfs/name、hdfs/data文件夹,重新格式化后再启动集群;
5、 浏览器辅助显示问题:hadoop3上面端口有改变,192.168.218.131:9870;
6、(待解决)nodemanager did not stop gracefully:
结果演示:
hdfs dfsadmin –report