赞
踩
Hadoop官网下载Hadoop:http://hadoop.apache.org/
JDK官网下载:https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-5672538.html
将所下软件拷贝至主虚拟机下
将Hadoop安装包解压至/software下
将Hadoop环境配置配置以及检测Hadoop是否安装成功
配置hosts文件(路径/etc,文件hosts)将三台服务器静态IP写进去,可以给各个服务器起别名
配置HDFS(路径:/software/hadoop-2.7.3/etc/hadoop)
export JAVA_HOME=/software/jdk1.8.0_161
2. 配置core-site.xml
<!-- 指定HDFS中NameNode的地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<!-- 指定Hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/software/hadoop-2.7.2/data/tmp</value>
</property>
3. 配置hdfs-site.xml
<!--指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
配置YARN
export JAVA_HOME=/software/jdk1.8.0_161
<!-- Reducer获取数据的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--指定YARN的ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
3. 配置mapred-env.sh,增加JAVA_HOME
export JAVA_HOME=/software/jdk1.8.0_161
<!--指定MR运行在YARN上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
配置历史服务器
配置mapred-site.xml,增加以下配置
<!-- 历史服务器端地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>localhost:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>localhost:19888</value>
</property>
配置slaves文件,即从服务器结点可让三台服务器同步
配置主服务器免登录访问从服务器
此时,在本服务器上生成公钥和私钥的步骤基本完成,使用ssh 命令登录本机不会再要求输入密码(如果是第一次登录会要求确认是否继续连接),成功之后,也在另外两台服务器上执行相同的操作!!!
按照上面的方法,让master可以ssh免密码访问另外一台从服务器!!!!
将Hadoop复制到各从服务器
将配置好的Hadoop集群复制到从服务器上
参考命令:scp -r /software root@slave1: /software
scp -r /software root@slave2:/software
将/etc/profile文件拷贝至从服务器
格式化namenode,启动服务
命令:bin/hdfs namenode -format
sbin/./start-all.sh
启动Hadoop
hadoop服务如果启动成功了,可以在主服务器上查看到NameNode ,SecondaryNameNode,ResourceManager 三个服务,从服务器上看到NodeManager, DataNode 两个服务。
主服务器:
slave1验证:
slave2验证:
HDFS的Web端
历史服务器启动
YARN的Web端验证
历史服务器Web端
原因:多次格式化NameNode
格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。所以,格式NameNode时,一定要先删除data数据和log日志,然后再格式化NameNode。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。