Hadoop分布式集群搭建

Hadoop是一个开源的分布式系统框架

一.集群准备

    1. 三台虚拟机,操作系统Centos7,三台主机名分别为k1,k2,k3,NAT模式

    2.节点分布

        k1: NameNode DataNode ResourceManager NodeManager
        k2: SecondNameNode DataNode NodeManager
        k3 : DataNode NodeManager

    3.安装包准备

        jdk-8uxx-linux-x64.rpm
        hadoop-2.7.1.tar.gz

二.Linux准备

    1.关闭防火墙

        systemctl status firewalld  //查看防火墙状态
        systemctl stop firewalld    //关闭防火墙
        systemctl disable firewalld   //防火墙开机不启动

    2.修改主机名

        hostnamectl set-hostname 主机名
        注:如果克隆的虚拟机,那么需要修改主机名

    3.IP设置

        编辑:vi /etc/sysconfig/network-scripts/ifcfg-ens33    

文件中修改 :
BOOTPROTO=none
ONBOOT=yes [开机启动网卡]
文件中添加 : 
IPADDR=xxx  [IP地址]
NETMASK=xxx  [子网掩码]
GATEWAY=xxx  [网关] 
DNS1=xxx  

        重启网卡 : systemctl restart network
        注 : 克隆的虚拟机需要修改IP地址,删除UUID

    4.添加hosts文件

        编辑:vi /etc/host

文件中添加:
IP地址 主机名
IP地址 主机名
IP地址 主机名 

    5.安装JDK

        安装包 : jdk-8uxx-linux-x64.rpm
        安装     : rpm -ivh jdk-8uxx-linux-x64.rpm
        配置环境变量 : vi /etc/profile

           文件中添加 : 
                JAVA_HOME=/usr/java/jdk
                PATH=$PATH:$JAVA_HOME/bin:
                CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:


       

 

 

  环境变量生效 : source /etc/profile
        查看:java -version

    6.SSH免密 

        1. ssh-keygen
            之后一直回车就可以 
        2.ssh-copy-id 主机名 
            三台机子都需要进行免密
        3.ssh 主机名
             测试免密是否成功

三.HADOOP环境搭建

    1.解压缩

            安装包 : hadoop-2.7.1.tar.gz
            解压缩 : tar -zxvf hadoop-2.7.1.tar.gz -C /opt/apps    

    2.修改环境变量

            编辑 :vi /etc/profile

文件中添加 : 
  export HADOOP_HOME=/opt/apps/hadoop.2.7.1/
  export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:

    3.环境变量生效

            source/etc/profile

四.HADOOP配置文件

    1.进入hadoop配置文件目录

            cd /opt/apps/hadoop.2.7.1/etc/hadoop

    2.修改配置文件 : hadoop-env.sh

vi hadoop-env.sh     
    修改文件中JAVA_HOME,改为自己JDK的路径

    3.配置文件 :core-site.xml

        vi core-site.xml  添加如下内容:

            
            fs.defaultFS
            hdfs://主机名:8020  //NameNode节点主机名
            

            
            io.file.buffer.size
            4096
            

            
            hadoop.tmp.dir
            /home/hadoopdata/bigdata/tmp
            

    4.配置文件 : hdfs-site.xml

        vi hdfs-site.xml 添加如下内容:

           
            dfs.namenode.name.dir
            file:///home/hadoopdata/dfs/name
           

           
            dfs.datanode.data.dir
            file:///home/hadoopdata/dfs/data<>
           

           
            dfs.http.address
            NameNode节点主机名:50070
           

           
            dfs.secondary.http.address
            SecondNameNode节点主机名:50090
           

           
            dfs.replication
            3
           

           
            dfs.webhdfs.enabled
            true
           

           
            dfs.permissions
            false      
           

    5.配置文件 : salves

        vi salves 添加以下内容(三台机器的主机名) : 

            hostname1
            hostname2
            hostname3

    6.配置文件 : mapred-site.xml

        mv mapred-site.xml.template mapred-site.xml  (进行重命名)
        vi mapred-site.xml  添加以下内容 : 

           
            mapreduce.framework.name
            yarn
            true  
           

             
            mapreduce.jobhistory.address
            历史服务:10020
           

           
            mapreduce.jobhistory.webapp.address
            历史服务节点主机名:19888
           

    7.配置文件 : yarn-site.xml

        vi yarn-site.xml 添加如下内容 : 

            
            yarn.resourcemanager.hostname
            ResourceManager节点主机名
            

            
            yarn.nodemanager.aux-services
            mapreduce_shuffle
            

            
            yarn.resourcemanager.address
            ResourceManager节点主机名:8032
            

            
            yarn.resourcemanager.scheduler.address
            ResourceManager节点主机名:8030
            

            
            yarn.resourcemanager.resource-tracker.address      
            ResourceManager节点主机名:8031
            

            
            yarn.resourcemanager.admin.address
            ResourceManager节点主机名:8033
            

            
            yarn.resourcemanager.webapp.address
            ResourceManager节点主机名:8088
            

            
            yarn.client.failover-proxy-provider   
            org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider             

            
            yarn.web-proxy.address
            ResourceManager节点主机名:9989
            

五.Hadoop启动【Hadoop分发到别的机器,三台机器都要有Hadoop】

    1.格式化NameNode

        hdfs namenode -format
        注 : 如出现 [name has been successfully formated] 则格式化成功

    2.启动进程

        start-dfs.sh     
        start-yarn.sh

    3.查看节点 ------  jps

    4.创建wordcount.txt 验证Yarn

        yarn jar /root/app/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /hello.txt /out/1

六.谢谢

    扫码关注,我们一起学习进步,回复'分享',会有惊喜等着你~

Hadoop分布式集群搭建_第1张图片

你可能感兴趣的:(Hadoop分布式集群搭建)