安装方式:伪分布式,让进程跑在一台机器上,只是他们的端口不一样!
Hadoop框架安装部署
都属于Java进程,其实就是JVM基础,运行服务
HDFS
NameNode和DataNode
Yarn:
ResourceManager和NodeManager
1.将hadoop的压缩包上传到linux中
hadoop压缩包
链接:https://pan.baidu.com/s/1gNVEnV32G7WPBmXfA8wbUw 提取码:iq1j
2.解压hadoop
目录结构
在hadoop目录下运行以下命令删除一些无用文件和目录:
rm -rf bin/*.cmd
rm -rf sbin/*.cmd
rm -rf share/doc/
3.修改环境变量
参考官方文档:http://hadoop.apache.org/docs/r2.7.6/hadoop-project-dist/hadoop-common/SingleCluster.html
可以使用外部工具Notepad++修改比较方便
下载地址:https://notepad-plus-plus.org/ (另一篇博客会详细介绍如何使用notepad++连接linux)
hodoop-env.sh(配置JDK目录的绝对路径 原因:可能存在多个JDK)
4.common模块
core-site.xml文件下修改:
5.HDFS模块
hdfs-site.xml文件下修改:
slaves文件下修改:指定DataNode运行在那些机器上
说明:如果有多个机器,一行一个
6.启动HDFS
(1).对文件系统进行格式化:bin/hdfs namenode -format(注意:只需要格式化一次即可)
(2).格式化成功的标准:
(3).如果失败了,一定是上面配置文件出错了,修改好配置文件进行第二次格式化:
格式化之前,将临时目录中的文件删除
(4)启动服务
主节点:sbin/hadoop-daemon.sh start namenode
从节点:sbin/hadoop-daemon.sh start datanode
(5).验证启动是否成功:
方式一输入命令:jps
方式二通过webui查看:http://bigdata-hpsk01.huadian.com:50070(linux主机地址:外部端口号50070)
8.Yarn模块
对于分布式资源管理和任务调度框架来说
在Yarn上面能够运行很多种应用程序
MapReduce
并行数据处理框架
Spark
基于内存分布式计算框架
Storm/Flink
实时流式计算框架
Tez
分析数据,比MapReduce速度快
主节点:ResouceManager
从节点:Nodemanager
yarn-site.xml文件下修改:
slaves文件不用修改,原因:指定nodemanager运行在那些机器上,在配置HDFS的时候,已经配置了,
9.启动Yarn
主节点:sbin/yarn-daemon.sh start resourcemanager
从节点:sbin/yarn-daemon.sh start nodemanager
验证是否成功:
方式一命令输入:jps
方式二webui查看:http://bigdata-hpsk01.huadian.com:8088(Linux主机地址:ResourceManager外部端口:8088)
10.MapReduce
mapred-site.xml.template文件下修改:
11.测试MapReduce程序:程序运行在Yarn,读取HDFS上的数据进行处理
(1) 准备数据:从Linux中创建一个文件,文件中随便写点内容
上传文件:Linux -》HDFS
bin/hdfs dfs -put /opt/datas/wordcount /datas/tmp/
bin/hdfs dfs -put linu文件路径 上传目标路径
以下是我文件中写的内容:
(2)MapReduce程序
Hadoop框架给我们提供了测试程序
/opt/modules/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar
(3)提交运行
程序提交到Yarn上运行只有一种方式:bin/yarn jar
(4)测试
a 先来运行上面的测试程序看看需要什么:
首先需要选择需要那种效果(会在另一篇博客详细介绍 在这先选择wordcount:统计文件中每个词出现的次数并按顺序排列
b 选择wordcount之后再次运行:
c 补全命令
bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /datas/tmp/wordcount /datas/mapreduce/output1
12.查看结果
http://bigdata-hpsk01.huadian.com:8088
http://bigdata-hpsk01.huadian.com:50070
结果出来了!