步骤目录
题前话:Hadoop官方认定Hadoop环境最好还是运行在Ubuntu系统上,由于笔者比较倾向在Win上面做开发,所以就先装在Window10上了。
为Hadoop准备Java环境
由于Hadoop运行需要Java1.8.0以上的环境,请先自行下载Java并添加入系统环境变量JAVA_HOME如果在CMD中输入java、javac出现如下提示则表名java环境已经准备好了。
下载Hadoop
hadoop下载地址 解压到你想解压的地方就完事。图片是旧的,现在已经使用3.x了
添加Hadoop到系统变量
Hadoop配置
进入hadoop的安装目录,修改以下文件
etc/hadoop/core-site.xml
<configuration>
<!-- 在哪台机器启动hdfs文件系统 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://Devil:9000</value> <!--这里Devil务必替换成你的管理员名称-->
</property>
<!--hadoop产生的临时文件放到哪里-->
<property>
<name>hadoop.tmp.dir</name>
<value>file:/D:/bigDatatest/da/hadooptmp</value>
</property>
</configuration>
hdfs-site.xml
这里需要建立存放namenode和datanode的文件夹,可自行选择位置创建,无所谓名称、位置,你喜欢就好,但不能没有。
<configuration>
<!--hdfs的备份因子,1就是只有一个备份。也就是只有一份-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!-- hdfs集群的名称 -->
<property>
<name>dfs.nameservices</name>
<!-- hdfs集群的名称可以随意取 -->
<value>hadoop-cluster</value>
</property>
<!-- 配置nameNode第二节点的位置-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>Devil:50090</value>
</property>
<!-- hdfs集群web访问的地址,
这句不配置访问的路径就是localhost:9870-->
<!--<property>
<name>dfs.http.address</name>
<value>Devil:9870</value>
</property>-->
<!-- hdfs集群上 块的大小 -->
<property>
<name>dfs.blocksize</name>
<value>32m</value>
</property>
<!-- hdfs集群的namenode(主节点) 运行过程中的中间数据存放位置 -->
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/D:/bigDatatest/da/namenode</value>
</property>
<!-- hdfs集群的datanode(从节点) 数据存放位置 -->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/D:/bigDatatest/da/datanode</value>
</property>
<!--绕过权限验证,用于测试和学习过程,实际开发中禁止这样-->
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<!-- yarn集群的 resource manager 地址,主机名 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<!-- 这个Devil是计算机名 cmd中hostname可以查看到 -->
<value>Devil</value>
</property>
<!-- 指定resourceManager的网页地址 -->
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>localhost:8088</value>
</property>
<property>
<name>yarn.nodemanager.local-dirs.hostname</name>
<value>file:/D:/bigDatatest/da/namenode</value>
</property>
<!-- MapReduce运行的模式是什么,混洗 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<!-- mapReduce使用什么运行 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
hadoop-env.cmd
这里边只改这一小段,千万不要用这一段直接替换所有内容!千万不要用这一段直接替换所有内容!千万不要用这一段直接替换所有内容!重要的事情说三遍!!!
箭头指向的java的环境变量只要和第一步那里的JAVA_HOME保持一致即可。
@rem The java implementation to use. Required.
@rem set JAVA_HOME=%JAVA_HOME%
set JAVA_HOME=D:\java1.8.1 《----(我是个箭头)
@rem The jsvc implementation to use. Jsvc is required to run secure datanodes.
@rem set JSVC_HOME=%JSVC_HOME%
测试运行
格式化HDFS
CMD中键入hdfs -namenode format。如果看到successfully,或者return 0这类字眼表示成功,返回1说明有一个错误,依此类推。
启动!
运行start-all.cmd,弹出四个窗口,(自上而下)分别是资源管理器,yarn的节点代理,一个从节点和主节点(namenode)
稍等几秒后通过访问
- http://localhost:8088
- http://localhost:50070
注意安装的是hadoop3.x这里的50070端口改成了9870,50070是Hadoop2.x的端口
如果大家在Window安装hadoop过程中发发现了问题,遇到了困难,可以评论在文章下面,笔者非常希望与大家一起解决问题