zoukankan      html  css  js  c++  java
  • 大数据学习之Hadoop环境搭建

    一、Hadoop的优势

    1)高可靠性:因为Hadoop假设计算元素和存储会出现故障,因为它维护多个工作数据副本,在出现故障时可以对失败的节点重新分布处理。

    2)高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。

    3) 高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。

    4)高容错性:自动保存多份副本数据,并且能够自动将失败的任务重新分配。

    二、Hadoop组成

    1)Hadoop HDFS:一个高可靠、高吞吐量的分布式文件系统。

    2)Hadoop MapReduce:一个分布式的离线并行计算框架。

    3)Hadoop YARN:作业调度与集群资源管理的框架。

    4)Hadoop Common:支持其他模块的工具模块。

          2.1  HDFS(Hadoop Distributed File System)架构概述

           1)NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等。

      2)DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和。

      3)Secondary NameNode(2nn):用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。

         2.2 YARN架构概述

      1)ResourceManager(rm):处理客户端请求、启动/监控ApplicationMaster、监控NodeManager、资源分配与调度;

      2)NodeManager(nm):单个节点上的资源管理、处理来自ResourceManager的命令、处理来自ApplicationMaster的命令;

      3)ApplicationMaster:数据切分、为应用程序申请资源,并分配给内部任务、任务监控与容错。

      4)Container:对任务运行环境的抽象,封装了CPU、内存等多维资源以及环境变量、启动命令等任务运行相关的信息。

      2.3 MapReduce架构概述

      MapReduce将计算过程分为两个阶段:Map和Reduce

      1)Map阶段并行处理输入数据

      2)Reduce阶段对Map结果进行汇总  

     三、Hadoop环境搭建

      1 虚拟机网络模式设置为NAT

        

             

      最后,重新启动系统。

      2.修改为静态ip

       1)使用命令   vim /etc/sysconfig/network-scripts/ifcfg-eth0

        2)修改选项有五项:    

        IPADDR=192.168.110.61

        GATEWAY=192.168.110.2

        ONBOOT=yes

        BOOTPROTO=static

        DNS1=192.168.110.2

        

        修改完成后保存退出(:wq )

        3)执行service network restart

        4)如果报错,reboot,重启虚拟机

      3.修改主机名 

        1)修改linux的hosts文件

          (1)进入Linux系统查看本机的主机名。通过hostname命令查看

                  

          (2)如果感觉此主机名不合适,我们可以进行修改。通过编辑/etc/sysconfig/network文件

                   

          (3)修改后保存退出

          (4)编辑

            vim /etc/hosts

                 

          (5)并重启设备,重启后,查看主机名,已经修改成功

        4.关闭防火墙     

          1)查看防火墙开机启动状态

            chkconfig iptables --list

          2)关闭防火墙

            chkconfig iptables off   

         5.安装jdk 

          1)卸载现有jdk

            (1)查询安装jdk的版本:

              java -version

            (2)查询是否安装java软件:

                rpm -qa|grep java

            (3)如果安装的版本低于1.7,卸载该jdk:

              rpm -e 软件包

           2)用filezilla工具将jdk导入到usr目录下面的java文件夹下面

           3)在linux系统下的usr目录中查看软件包是否导入成功(使用.gz包或者.rpm包,本处使用.rpm包)。

            

           4).gz包使用命令  tar -zxf jdk***.gz  解压到当前目录;  .rpm包使用命令  rpm -ivh jdk***.rpm   进行安装.

         5)配置jdk环境变量

            (1) 先获取jdk路径:使用命令pwd

                

            (2)打开/etc/profile文件:

               vi /etc/profile

               在profie文件末尾添加jdk路径:

                         #set java environment
                JAVA_HOME=/usr/java/jdk1.8.0_171-amd64
                JRE_HOME=/usr/java/jdk1.8.0_171-amd64/jre
                CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
                 PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
                 export JAVA_HOME JRE_HOME CLASS_PATH PATH

              

            (3)保存后退出:

              :wq

                 (4)让修改后的文件生效:  

              

         6)重启(如果java –version可以用就不用重启):

         7)  测试jdk安装成功

            

          

    四、安装Hadoop

      1)通过用filezilla工具将Hadoop导入/usr/local/src/中,官方下载地址:http://mirrors.shu.edu.cn/apache/hadoop/common/

        

      2)解压安装文件  tar -zxf hadoop-2.7.6.tar.gz 

      3)配置hadoop中的hadoop-env.sh

        (1)Linux系统中获取jdk的安装路径:

          

          (2)进入 hadoop-2.7.6/etc/hadoop/中 ,修改hadoop-env.sh文件中JAVA_HOME 路径:

                           export JAVA_HOME=/opt/module/jdk1.7.0_79

      4)将hadoop添加到环境变量

        (1)获取hadoop安装路径:  

          

         (2)打开/etc/profile文件:

          在profie文件末尾添加hadoop路径:                  

            #HADOOP_HOME

            export HADOOP_HOME=/usr/local/src/hadoop-2.7.6
            export PATH=$PATH:$HADOOP_HOME/bin
            export PATH=$PATH:$HADOOP_HOME/sbin

         

        (3)保存后退出:

            :wq

        (4)让修改后的文件生效:

           

        (5)使用hadoop查看是否安装成功,如果hadoop命令不能使用则重启再查看。

           

            

  • 相关阅读:
    C# 生成随机数
    C#经典机试题(猫叫)
    C#开发微信公众平台-就这么简单(附Demo)(转)
    对于初学者文档应该怎么编写呢?使用什么模板或格式?
    c#基础系列(转)
    如何写软件设计文档(转)
    C# 使用线程池,设置每个线程的执行时间,过了时间强制结束
    C#多线程编程总结
    最全的sublime插件整理
    Node.js安装及环境配置之Windows篇
  • 原文地址:https://www.cnblogs.com/singlecodeworld/p/9524369.html
Copyright © 2011-2022 走看看