windows下安装hadoop
windows下安装hadoop背景环境搭建安装jdk安装Hadoop安装window下编译必须库文件启动Hadoop集群初始化namenode启动HadoopwebUI验证运行wc来进行测试遇见问题背景原本使用虚拟机搭建集群,后来因为某些原因,不能使用虚拟机。然后想在一台配置还行的云主机上搭建一下。结果遇见了小坑,希望能给小伙伴搭建的时候提供一些想法。环境windows 2019hadoop 2
windows下安装hadoop
背景
原本使用虚拟机搭建集群,后来因为某些原因,不能使用虚拟机。然后想在一台配置还行的云主机上搭建一下。结果遇见了小坑,希望能给小伙伴搭建的时候提供一些想法。
环境
windows 2019
hadoop 2.9.0
jdk 1.8
搭建
安装jdk
必须依赖jdk,如果已经安装好以及配置好环境变量请跳过
-
下载
下载地址:jdk8下载路径
-
安装jdk
注意路径不要有空格,不再赘述 -
配置环境变量
# 添加
JAVA_HOME=安装路径
# 添加
CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
# path中属性追加
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
4. 验证环境变量
确定设置之后,重新打开cmd,输入命令
java -version
javac -version
如果 两个命令都提示jdk版本即为安装配置成功
如果java命令就出现错误说明jdk安装的有问题,如果javac出现错误提示,就说明环境变量配置的不正确或者没有生效。
安装Hadoop
- 下载hadoop安装包:hadoop2.9官方下载地址
然后解压到合适的位置 - 开始配置
2.1 进入安装路径下/etc/hadoop/
因为我之前安装了cygwin所以可以使用ls,原生的可以使用dir命令查看路径下有什么文件
修改下面的文件
2.2 首先修改core-site.xml
添加下面配置,指定默认文件系统
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
2.3 修改mapred-site.xml
将mapred-site.xml.template文件修改名字mapred-site.xml
添加下面内容:指定调用系统为yarn
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
2.4 修改hdfs-site.xml
添加下面配置:
dfs.replication指定文件副本数,单机模式,指定一个就行
dfs.namenode.name.dir 指定namenode工作路径
dfs.datanode.data.dir 指定datanode工作路径
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hadoop/data/dfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hadoop/data/dfs/datanode</value>
</property>
说明:file:/指当前文件系统的根路径,此处即指定C:/,如果在D:/则是代指D:/,文件路径系统会自动创建
2.5 修改yarn-site.xml
<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>
2.6 修改hadoop-env.cmd
此文件需要指定JAVA_HOME,修改为文件系统
2.6 修改slaves文件
指定hdfs子节点的主机,如果只使用本地可以保持默认值localhost,如果需要添加多台,一行一台主机名
安装window下编译必须库文件
- winutils.exe下载
这个文件不管是在windows下使用hadoop以及在windows下远程调用hadoop集群都要使用的。winutils.exe下载
找到对应版本后,将bin下面的文件全部复制到hadoop安装路径下的bin目录,然后将hadoop.dll复制到
如果是32位系统
C:\Windows\System32
如果是64位系统
C:\Windows\SysWOW64
然后验证winutils.exe是否安装成功,双击hadoop2.9.0/bin/winutils.exe如果出现cmd闪退就说明安装成功,如果提示缺少MSVCR100.dll就执行下面的步骤。
2. Visual C++ 2010 Redistributable Package (x64)安装
下载路径:Visual C++ 2010 Redistributable Package
下载之后安装,然后回测winutils.exe
启动Hadoop集群
注意:如果是第一次启动需要初始化namenode
初始化namenode
输入hadoop namenode -format
如果出现下图提示说明namenode初始化成功
启动Hadoop
sbin/start-all.cmd
会出现四个cmd窗口,不要手动关闭
查看是否有异常信息
使用jps查看进程
webUI验证
查看hdfs
浏览器输入
http://localhost:50070
查看集群应用情况
http://localhost:8088
运行wc来进行测试
首先要创建文件夹
hdfs dfs -mkdir -p /wc/input
上传文件到输入路径
hdfs dfs -put aaa.txt /wc/input
进入hadoop2.9.0/share/hadoop/mapreduce路径,运行
hadoop jar hadoop-mapreduce-examples-2.9.0.jar wordcount /wc/input /wc/output
遇见问题
- Java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.$Windows
启动时这个,测试一下winUtil.exe会不会出现错误信息,我就是因为这个找了两天。
2.普通用户启动start-all.cmd出现Exception message: CreateSymbolicLink error (1314): ???
解决办法cmd使用管理员进行
更多推荐
所有评论(0)