文章目录
环境说明
使用Hadoop的前提是linux服务器上必须安装java,这里不赘述怎么安装java。
Hadoop的版本为3.4.0,安装子啊linux服务器上 下载地址,springboot使用的是hadoop-aliyun依赖包。本地调试为Windows电脑
下载安装
hadoop下载解压到linux上,配置环境变量
vim /etc/profile
在/etc/profile文件下添加hadoop相关的环境变量
exportHADOOP_HOME=/usr/local/hadoop
exportPATH=$PATH:$HADOOP_HOME/bin
exportPATH=$PATH:$HADOOP_HOME/sbin
配置好变量后,使用如下命令验证
hadoop version
配置单机伪集群
进入到hadoop配置文件目录
一般在hadoop安装目录ect/hadoop文件夹里
配置hadoop-env.sh
exportHADOOP_HOME=/usr/local/hadoop
exportHDFS_NAMENODE_USER=root
exportHDFS_DATANODE_USER=root
exportHDFS_SECONDARYNAMENODE_USER=root
exportYARN_RESOURCEMANAGER_USER=root
exportYARN_NODEMANAGER_USER=root
配置core-sit.xml
<configuration><property><name>fs.defaultFS</name><!-- hadoop01-sit随便起的,不要使用ip及localhost --><value>hdfs://hadoop01-sit:9000</value></property><!-- 指定 hadoop 数据的存储目录 --><property><name>hadoop.tmp.dir</name><value>/usr/local/hadoop/hdfs/tmp</value></property><property><name>hadoop.proxyuser.root.hosts</name><value>*</value></property><property><name>hadoop.proxyuser.root.groups</name><value>*</value></property><property><name>fs.hdfs.impl</name><value>org.apache.hadoop.hdfs.DistributedFileSystem</value></property></configuration>
配置hdfs-site.xml
<configuration><property><name>dfs.replication</name><value>1</value></property><property><name>dfs.namenode.name.dir</name><value>/usr/local/hadoop/hdfs/name</value><final>true</final></property><property><name>dfs.datanode.data.dir</name><value>/usr/local/hadoop/hdfs/data</value><final>true</final></property><property><!--web界面端口号 --><name>dfs.http.address</name><value>0.0.0.0:50070</value></property><property><name>dfs.permissions</name><value>false</value></property><property><!-- hadoop01-sit要和core-sit配置fs.defaultFS值一致 --><name>dfs.namenode.rpc-address</name><value>hadoop01-sit:9000</value></property></configuration>
配置 yarn-site.xml
<configuration><!-- Site specific YARN configuration properties --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property></configuration>
配置mapred-site.xml
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property></configuration>
启动
#在hadoop安装目录 sbin文件夹下# 启动全部
./start-all
访问web界面
访问到界面标识启动成功,本地Windows电脑修改host文件将hadoop01-sit映射到了linux服务器ip
http://hadoop01-sit:50070/
Windows电脑远程调用
当本地springboot项目作为hadoop客户端的hdfs,会报错
HADOOP_HOME AND HADOOP.HOME.DIR ARE UNSET
问题原因windos电脑作为客户端,操作hdfs还需要下载一个Windows的winutils程序。下载地址
下载后这里使用的是hadoop-3.0.0工具
将hadoop-3.0.0工具配置成Windows环境变量
springBoot 集成
使用的是hadoop-aliyun依赖包,但是操作hadoop的hdfs文件系统还需要引入
hadoopVersion ="3.1.4"
hadoop-hdfs ={ module ="org.apache.hadoop:hadoop-hdfs", version.ref ="hadoopVersion"}
hadoop-hdfs-client ={ module ="org.apache.hadoop:hadoop-client", version.ref ="hadoopVersion"}
本地调试操作hdfs,使用org.apache.hadoop.conf.Configuration进行配置,使用org.apache.hadoop.fs.FileSystem类对文件进行上传下载操作。
具体操作可参考这一篇博客链接: springboot操作hdfs上传下载
版权归原作者 李永杰AAAA 所有, 如有侵权,请联系我们删除。