在window系统开发程序时,远程linux服务器上的hadoop速度很慢,影响开发效率,能不能在本地搭建hadoop环境的?答案肯定的,且看下文如何在window上部署hadoop;
(源文地址:https://www.cnblogs.com/lfhappy/p/11482195.html)
1、下载hadoop(建议下载稳定版本):http://mirror.bit.edu.cn/apache/hadoop/common/stable/
2、hadoop需要JDK,如果已经安装,跳过此步骤,还没有,需要安装JDK-->配置JAVA_HOME
3、解压下载好的hadoop安装包到指定的位置。
==》没有JKD则会报异常: Caused by: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset.
4、GitHub上下了个3.1的winutils.exe,链接https://github.com/s911415/apache-hadoop-3.1.0-winutils/blob/master/bin/hadoop.dll覆盖原bin目录下面的内容即可
5、配置信息
==>首先配置环境变量HADOOP_HOME:[安装位置],再配置系统变量path中添加%HADOOP_HOME%in
5.1 hadoop-env.sh
修改JDK的路径
@rem The java implementation to use. Required.
set JAVA_HOME=D:JavaJDK1.8
5.2 mapred-site.xml --配置调度框架名称
1 <configuration> 2 <property> 3 <name>mapreduce.framework.name</name> 4 <value>yarn</value> 5 </property> 6 </configuration>
5.3 core-site.xml--配置NameNode访问名字
1 <configuration> 2 <property> 3 <name>fs.default.name</name> 4 <value>hdfs://localhost:9001</value> 5 </property> 6 </configuration>
5.4 hdfs-site.xml--分布式系统高可用配置
1 <configuration> 2 <property> 3 <name>dfs.replication</name> 4 <value>1</value> 5 </property> 6 <property> 7 <name>dfs.namenode.name.dir</name> 8 <value>../dfs/name</value> 9 </property> 10 <property> 11 <name>dfs.datanode.data.dir</name> 12 <value>../dfs/data</value> 13 </property> 14 </configuration> 15 <!--注释不用复制 16 * dfs.namenode.name.dir,dfs.datanode.data.dir 17 必须重新配置,否则搭建成功后,下次重新运行直接报错,因为默认数据文件都是放置在tmp目录下,这个目录中文件会在服务器关闭情况下删除 18 * 路径从bin当前目录下开始算起.写先对路径,或者以“/”开头写绝对路径 19 -->
5.5 yarn-site.xml
1 <configuration> 2 <!-- Site specific YARN configuration properties --> 3 <property> 4 <name>yarn.nodemanager.aux-services</name> 5 <value>mapreduce_shuffle</value> 6 </property> 7 </configuration>
说明window下hadoop部署成功
注:在本地不需要启动hadoop。
7、本地如果需要启动hadoop
1.运行cmd窗口,切换到hadoop的bin目录执行hdfs namenode -format。
2.运行cmd窗口,切换到hadoop的sbin目录,执行start-all.cmd。