Hadoop学习笔记——Hadoop完全分布式集群搭建配置文件详解

写在前面:在本教程中,默认虚拟机系统已配置好hadoop和JDK,并且集群之间的免密登录已经完成。这里我的hadoop版本号为hadoop-2.10.0,记得要全部替换为你自己的版本号哦

 

1.采用三台虚拟机搭建一个分布式集群系统,主机名和地址映射分配如下:

集群主机-地址映射
  主机名 IP地址
虚拟机1 hadoop01 192.168.1.101
虚拟机2 hadoop02 192.168.1.102
虚拟机3 hadoop03 192.168.1.103

 

2.Hadoop分布式集群搭建节点功能分配如下:

Hadoop的集群规划
  Hadoop01 Hadoop02 Hadoop03
HDFS DataNode DataNode DataNode
NameNode   SecondaryNameNode
YARN NodeManager NodeManager NodeManager
  ResourceManager  

可以看出,在对Hadoop集群规划时,每个节点上都有dataNode节点(实际存储数据)和NodeManager节点(每个节点的管理者)。剩下的NameNode、ResourceManager、SecondaryNameNode平均分配在各台虚拟机上,考虑到其资源量大,尽量分开。

搭建hdfs集群涉及的配置文件如下
 

搭建hadoop集群涉及的配置文件
文件名 说明
slaves 决定哪些机器是DataNode
hadoop-env.sh 脚本制定jdk配置
core-site.xml HDFS核心配置
hdfs-site.xml HDFS文件系统的相关配置
yarn-site.xml ResourceManger部署在哪台机器等
mapred-site.xml 设置mapred-site

3.根据2的集群节点分配,分别进入hadoop01、hadoop02、hadoop03中修改以下几个配置文件,根据节点上配置的资源节点类型不同,各文件间存在细微的差异。下面逐一对各虚拟机的配置文件进行详解:

1.配置slaves文件

 进入hadoop01/02/03的hadoop-2.10.0/etc/hadoop文件下,vim打开slaves文件在配置文件在空白处新增以下内容:

hadoop01
hadoop02
hadoop03

2.配置hadoop-env.sh文件

 进入hadoop01/02/03的hadoop-2.10.0/etc/hadoop文件下,vim打开hadoop-env.sh文件在配置文件在空白处新增以下内容:

export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/opt/jdk1.8.0_171

添加JAVA环境变量

3.配置core-site.sh文件

进入hadoop01/02/03的hadoop-2.10.0/etc/hadoop文件下,vim打开core-site.xml文件在配置文件(在 )中新增以下内容:



    
         fs.defaultFS
         hdfs://hadoop01:9000
   
 
    
        hadoop.tmp.dir 
        /opt/hadoop-2.10.0/tmp
    

这里 表示某个性能, 表示要添加的性能名称, 表示性能指定的表现形式。其中,fs.defaultFS从字面意思可以看出,它指的是HDFS默认文件系统位置,设置端口号为"hdfs://替换你的虚拟机主机名指定端口号“,这样设置后在web端可以通过浏览器地址栏输入“hadoop01:9000"访问到HDFS文件系统。

hadoop.tmp.dir,指hadoop的 临时文件 目录,这里指定一个文件夹给它,记得在你所指的的位置新建对应的文件夹哦。

 4.配置yarn-site.xml文件

进入hadoop01/02/03的hadoop-2.10.0/etc/hadoop文件下,vim打开yarn-site.xml文件在配置文件(在 )中新增以下内容:




   
        
                yarn.nodemanager.aux-services
                 mapreduce_shuffle
        
    
        
                yarn.resourcemanager.hostname
                hadoop02
        



这里一定要指定哪台虚拟机上配置了ResourceManager

 5.配置mapred-site.xml文件

进入hadoop01/02/03的hadoop-2.10.0/etc/hadoop文件下,vim打开mapred-site.xml文件在配置文件在空白处新增以下内容:


   
        
              mapreduce.framework.name
              yarn
        

6.1配置Hadoop01上的hdfs-site.xml文件

进入hadoop01的hadoop-2.10.0/etc/hadoop文件下,vim打开hdfs-site.xml文件在配置文件(在 )中新增以下内容:


        
        
                dfs.replication
                3
        
        
        
                dfs.namenode.http.address
                hadoop01:50070
        
        
        
                dfs.namenode.secondary.http-address
                hadoop03:50090
        
        
        
                dfs.namenode.name.dir
                file:/opt/hadoop-2.10.0/hdfs/name
        
        
        
                dfs.datanode.data.dir
                file:/opt/hadoop-2.10.0/hdfs/data
        


在hdfs-site.xml中要指定namenode节点打开的端口号,secondaryNamenode打开的端口号,以及给namenode和datanode设置临时存放地址。(切记,为了防止出错,一定在对应位置新建该文件夹)

6.2配置Hadoop02上的hdfs-site.xml文件

 

进入hadoop02的hadoop-2.10.0/etc/hadoop文件下,vim打开hdfs-site.xml文件在配置文件(在 )中新增以下内容:


        
        
                dfs.replication
                3
        
        
        
                dfs.namenode.secondary.http-address
                hadoop03:50090
        
        
        
                dfs.namenode.name.dir
                file:/opt/hadoop-2.10.0/hdfs/name
        
        
        
                dfs.datanode.data.dir
                file:/opt/hadoop-2.10.0/hdfs/hadoop02
        


注意,这里的datanode.data.dir即hadoop02的数据临时存放目录地址要和hadoop01区别开,否则肯会当成一个datanode节点,在运行时报错。

6.3配置Hadoop03上的hdfs-site.xml文件

 

进入hadoop03的hadoop-2.10.0/etc/hadoop文件下,vim打开hdfs-site.xml文件在配置文件(在 )中新增以下内容:


        
        
                dfs.replication
                3
        
        
        
                dfs.namenode.secondary.http-address
                hadoop03:50090
        
        
        
                dfs.namenode.name.dir
                file:/opt/hadoop-2.10.0/hdfs/name
        
        
        
                dfs.datanode.data.dir
                file:/opt/hadoop-2.10.0/hdfs/hadoop03
        


注意,这里的datanode.data.dir改为hadoop03

配置文件详解结束。

你可能感兴趣的:(hadoop)