【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建

Apache Hadoop的三种运行环境介绍及standAlone环境搭建


三种运行环境

  • standAlone环境

    单机版的hadoop运行环境
  • 伪分布式环境

    主节点都在一台机器上,从节点分开到其他机器上(可以借助三台机器来实现)
  • 完全分布式环境

    主节点全部分散到不同机器上(NameNode Active,NameNode StandBy,ResourceManager 主节点,ResourceManager 备份节点)

standAlone环境搭建

【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建

tar -zxvf hadoop-2.7.5.tar.gz -C /export/servers/

Hadoop的本地库:/export/servers/hadoop-2.7.5/lib/native
(很重要,里面集成了一些C程序,包括了一些压缩的支持) bin/hadoop checknative 检测本地库的支持

【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建

  • 第二步:修改配置文件
cd /export/servers/hadoop-2.7.5/etc/hadoop

修改core-site.xml(核心配置文件,主要定义了我们的集群是分布式,还是本机运行)

vim core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.0.10:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/export/servers/hadoop-2.7.5/hadoopDatas/tempDatas</value>
</property>
<!-- 缓冲区大小,实际工作中根据服务器性能动态调整 -->
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property> <!-- 开启hdfs的垃圾桶机制,删除掉的数据可以从垃圾桶中回收,单位分钟 -->
<property>
<name>fs.trash.interval</name>
<value>10080</value>
</property>
</configuration>

修改hdfs-site.xml(分布式文件系统的核心配置,决定了我们数据存放在哪个路径,数据的副本,数据的block块大小)

vim hdfs-site.xml
<configuration>
<!-- NameNode存储元数据信息的路径,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割 -->
<!-- 集群动态上下线
<property>
<name>dfs.hosts</name>
<value>/export/servers/hadoop-2.7.4/etc/hadoop/accept_host</value>
</property> <property>
<name>dfs.hosts.exclude</name>
<value>/export/servers/hadoop-2.7.4/etc/hadoop/deny_host</value>
</property>
--> <property>
<name>dfs.namenode.secondary.http-address</name>
<value>node01:50090</value>
</property> <property>
<name>dfs.namenode.http-address</name>
<value>node01:50070</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///export/servers/hadoop-2.7.5/hadoopDatas/namenodeDatas,file:///export/servers/hadoop-2.7.5/hadoopDatas/namenodeDatas2</value>
</property>
<!-- 定义dataNode数据存储的节点位置,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割 -->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///export/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas,file:///export/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas2</value>
</property> <property>
<name>dfs.namenode.edits.dir</name>
<value>file:///export/servers/hadoop-2.7.5/hadoopDatas/nn/edits</value>
</property> <property>
<name>dfs.namenode.checkpoint.dir</name>
<value>file:///export/servers/hadoop-2.7.5/hadoopDatas/snn/name</value>
</property>
<property>
<name>dfs.namenode.checkpoint.edits.dir</name>
<value>file:///export/servers/hadoop-2.7.5/hadoopDatas/dfs/snn/edits</value>
</property> <property>
<name>dfs.replication</name>
<value>1</value>
</property> <property>
<name>dfs.permissions</name>
<value>false</value>
</property> <property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property>
</configuration>

修改hadoop-env.sh(配置我们jdk的home路径)

vim hadoop-env.sh
export JAVA_HOME=/export/servers/jdk1.8.0_141

修改mapred-site.xml(定义了我们关于mapreduce运行的一些参数)

vim mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property> <property>
<name>mapreduce.job.ubertask.enable</name>
<value>true</value>
</property> <property>
<name>mapreduce.jobhistory.address</name>
<value>node01:10020</value>
</property> <property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>node01:19888</value>
</property>
</configuration>

修改yarn-site.xml(定义我们的yarn集群)

vim yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node01</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> <property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
</configuration>

修改slaves(定义了我们的从节点是哪些机器,也就是DataNode和NodeManager运行在哪些机器上)

vim slaves
node01
  • 第三步:启动集群

    要启动Hadoop集群,需要启动HDFS和YARN两个模块

    注意:首次启动HDFS时,必须对其进行格式化操作,本质上是一些清理和准备工作,因为此时的HDFS在物理上还是不存在的

    hdfs namenode -format或者hadoop namenode -format

启动命令:

创建数据存放文件夹,在第一台机器执行

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

准备启动:

cd /export/servers/hadoop-2.7.5/

bin/hdfs namenode -format
sbin/start-dfs.sh
sbin/start-yarn.sh
sbin/mr-jobhistory-daemon.sh start historyserver

tips

HDFS集群查看界面:node01:50070【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建

Yarn集群查看界面:node01:8088

【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建

历史任务完成界面:node01:19888

【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建

上一篇:【python接口自动化】- ConfigParser配置文件的使用


下一篇:js点击按钮为元素随机字体颜色和背景色