windows下安装hadoop3.1.3(详细)
最近公司有个采集日志到oss的任务,需要用到hdfs的环境做个透传,因为我们的要采集的日志分布在好几十个单独的服务器其中有linux,又有windows,采集最后商量要使用的flume,但是flume不能直接传到oss需要用到hdfs进行“透传”一下,所以也不需要部署分布式了,又因为linux服务器资源紧缺,想让我调研一下能不能在windows服务器上搭建一个单机版的hadoop,所以就有了今天这篇文章。
文章目录
一、解压hadoop-3.1.3.tar.gz
二、配置环境变量
以上图片为配置java的环境变量,hadoop的环境变量和java环境变量配置过程相同,路径换成你上一步解压之后的hadoop路径即可,因为hadoop是需要java环境的所以机器上要提前安装好java(
java的路径最好不要有空格,如果有空格的话,需要在hadoop_env.cmd文件中将java的路径有双引号括起来
)
三、修改配置文件
3.1 core-site.xml
<configuration><property><name>fs.defaultFS</name><value>hdfs://localhost:9000</value></property></configuration>
3.2 hdfs-site.xml
<configuration><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></configuration>
3.3 mapred-site.xml
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property></configuration>
3.4 yarn-site.xml
<configuration><!-- Site specific YARN configuration properties --><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>
3.5 hadoop-env.cmd
修改JAVA_HOME(
路径有空格需双引号括起来
)
set JAVA_HOME="C:\Program Files\Java\jdk1.8.0_131"
四、下载winutils
由于hadoop不能直接直接在windows环境下启动,需要依赖hadoop的winutils
这里给出两个下载路径首先是githttps://github.com/cdarlint/winutils
如果大家在git上下载不下来,或者下载慢,这里提供一个百度网盘的下载路径https://pan.baidu.com/s/1a5et7e6oLir2dgABPJkgqg?pwd=yyds
下载好之后,挑选和你hadoop相同的版本,将bin中的内容直接拷贝到你安装的hadoopbin目录下,有重复的替换即可。
五、启动hadoop
第一次启动需要初始化名字节点,初始化名字节点之前请确保 在上面配置的hdfs-site.xml文件中的namenode目录为空,切换到hadoop的bin目录下,输入一下内容
hadoop namenode -format
看到successfully证明成功初始化。
之后切换到hadoop安装目录下的sbin目录,输入以下内容:
start-all.cmd
会依次弹出四个命令框,分别为namenode、datanode、resourcemanager、nodemanager
这时打开浏览器输入:
localhost:9870
会出现以下内容:
六、上传文件
切换到hadoop下的bin目录,输入
hdfs dfs -mkdir /tset
随意上传一个文件
hdfs dfs -put “你的文件路径” /test
我这里是上传了一个jar包
版权归原作者 潘小磊 所有, 如有侵权,请联系我们删除。