apache版本的hadoop三种运行环境的介绍
1.standAlone:单机版的hadoop运行环境,所有都跑在一台环境上
2.伪分布式:主节点都在一台机器上,从节点分开到其他机器上,借助3台机器实现
3.完全分布式:主节点全部分散到不通的机器上
namenode active 占用一台机器
namenodestandBy占用一台机器
resourceManager active 占用一台机器
resoureceManagerstandby 占用一台机器
standAlone环境的hadoop环境搭建
下载hadoop安装包:Index of /dist/hadoop/common/hadoop-2.7.5
前提:1.一台联网的linux服务器
1.解压安装包:
tar -zxvf hadoop-2.7.5.tar.gz -C /export/servers/
目录介绍:
bin,sbin 脚本文件
lib/native 这个很重要,里面集成了一些C程序,包括一些压缩文件
2.
#查看此hadoop本地库,是否支持
bin/hadoop checknative
21/10/31 11:52:47 WARN bzip2.Bzip2Factory: Failed to load/initialize native-bzip2 library system-native, will use pure-Java version #加载本地bzip2失败,将使用纯java方式进行压缩
21/10/31 11:52:47 INFO zlib.ZlibFactory: Successfully loaded & initialized native-zlib library
Native library checking: #本地库检测
hadoop: true /export/servers/hadoop-2.7.5/lib/native/libhadoop.so.1.0.0 #支持C语言访问集群
#以下都是压缩方式的支持情况
zlib: true /lib64/libz.so.1
snappy: false
lz4: true revision:99
bzip2: false
openssl: false Cannot load libcrypto.so (libcrypto.so: cannot open shared object file: No such file or directory)!
#apche默认snappy压缩方式不支持,snappy是google提供的一种压缩算法,最厉害的,需要重新编译才能使用
snappy: false
3.配置文件修改6个文件
core-site.xml 核心配置文件,主要定义我们的集群是分布式还是本机运行
hdfs-site.xml 分布式文件系统的核心配置 决定了我们数据存放在哪个路径,数据的副本,数据的block块大小。
hadoop-env.sh 配置jdk的路径
mapred-site.xml 定义了我们mapreduce运行的一些参数
yarn-site.xml 定义yarn-site.xml集群
slaves 定义了我们的从节点是哪些机器 datanode nodemanager 运行在哪些机器上
具体配置在最下面
4.启动集群
创建配置中不存在的文件夹
cd /export/servers/hadoop-2.7.5
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/tempDatas
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/namenodeDatas
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/namenodeDatas2
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas2
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/nn/edits
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/snn/name
mkdir -p /export/servers/hadoop-2.7.5/hadoopDatas/dfs/snn/edits
要启动 Hadoop 集群,需要启动 HDFS 和 YARN 两个模块。注意: 首次启动 HDFS 时,必须对其进行格式化操作。 本质上是一些清理和准备工作,因为此时的 HDFS 在物理上还是不存在的。
hdfs namenode -format 或者 hadoop namenode –format
启动集群
#启动hdfs
sbin/start-dfs.sh
#启动yarn
sbin/start-yarn.sh
#启动历史job查看
sbin/mr-jobhistory-daemon.sh start historyserver
测试:
web访问:
#hdfs集群查看
http://node01:50070
#yarn集群查看
http://node01:8088
#历史job情况查看
http://node01:19888
-----------------------------具体配置--------------------------------------
修改core-site.xml
第一台机器执行以下命令
cd /export/servers/hadoop-2.7.5/etc/hadoop
vim core-site.xml
修改hdfs-site.xml
第一台机器执行以下命令
cd /export/servers/hadoop-2.7.5/etc/hadoop
vim hdfs-site.xml
修改hadoop-env.sh
第一台机器执行以下命令
cd /export/servers/hadoop-2.7.5/etc/hadoop
vim hadoop-env.sh
vim hadoop-env.sh
export JAVA_HOME=/export/servers/jdk1.8.0_141
修改mapred-site.xml
第一台机器执行以下命令
cd /export/servers/hadoop-2.7.5/etc/hadoop
vim mapred-site.xml
修改yarn-site.xml
第一台机器执行以下命令
cd /export/servers/hadoop-2.7.5/etc/hadoop
vim yarn-site.xml



