【Hadoop】- Hadoop1.x 伪分布式环境搭建

Hadoop体系的主要组件:HDFS/MapReducejava


HDFS: Hadoop Distribution File System

NameNode、SecondNameNode:名称节点

做用:维护Hadoop中存储数据块的相关信息,例如记录hadoop集群中某个数据块所在的服务器位置,SecondNameNode主要是起到冗余做用,当NameNode宕机时,可以使用SecondNameNode做为NameNode的替代工具,防止整个Hadoop集群的崩溃node

DataNode: 数据节点

做用: 主要是存储HDFS数据块的服务器,负责HDFS数据库的存储(读写)linux


MapReduce: 分布式计算框架

  • JobTracker: 做业跟踪器,相似司令的角色,主要用于处理做业,将做业进行分割成任务task,统一调度数据库

  • TaskTracker:任务跟踪器:主要管理节点上task,相似士兵的角色,向JobTracker报告服务器

  • master:JobTracker NameNode节点所在的服务器框架

  • slave: DataNode TaskTracker节点所在的服务器ssh

注意:1个Hadoop集群只有1个JobTracker做业跟踪器,JobTracker和NameNdoe可在同1个服务器,TaskTracker和DataNode通常在同一个服务器,一个TaskTracker管理所在服务器的任务分布式


Hadoop伪分布式:全部节点都在同1个服务器(开发用)ide

①:配置hadoop环境(hadoop-env.sh): export JAVA_HOME=/usr/local/java/jdk1.8.0_112 (hadoop基于Java开发,须要配置jdk)工具

②:Hadoop的核心配置:core-site.xml(例如:名称节点、I/O配置等)

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>

因是伪分布式,这里配置的名称节点的ip为localhost,实际彻底分布式状况须要设置实际的服务主机的ip

③:配置hdfs文件系统 hdfs-site.xml:配置dataNode的存储位置及数据块的备份次数

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop-0.20.2/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

④:配置MapReduce mapred-site.xml:JobTracker节点服务器配置

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>

⑤:格式化HDFS文件系统:bin目录自带的hadoop命令(名称节点服务器格式化): ./hadoop namenode –format

⑥:启动hadoop集群:/bin/start-all.sh :hadoop启动脚本 查看Hadoop是否成功启动:使用jdk自带的jps命令,能够查询linux中和Java相关的进程信息:

[root@localhost bin]# jps 19344 SecondaryNameNode 19152 NameNode 19249 DataNode 19511 TaskTracker 19417 JobTracker 19551 Jps

**结果:**显示Hadoop关键的守护进程的信息代表hadoop伪集群成功启动

注意:这里是使用伪分布式的hadoop,彻底分布式须要配置各个节点的ssh的公钥共享,无需ssh密码登录就可实现hadoop集群中各个节点之间的数据传输,伪分布式经过单点模拟hadoop集群,只需将本身的公钥加入authorized_keys便可。

相关文章
相关标签/搜索