Hadoop是一个由Apache基金会所开发的分布式系统基础架构。它实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。其框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算。

单机模式安装

  1. 解压安装包到指定位置并重命名。

    tar -zxvf hadoop-2.7.2.tar.gz -C /opt/module/
    mv hadoop-2.7.2 hadoop
  2. 将hadoop写入环境变量以便启动。

    # Hadoop
    export HADOOP_HOME=/opt/module/hadoop
    export PATH=$PATH:$HADOOP_HOME/bin
    export PATH=$PATH:$HADOOP_HOME/sbin

    写入后记得“source /etc/profile”文件使其立即生效。

  3. 输入“hadoop version”查看安装的hadoop版本。

完全分布式安装

  1. 在单机模式的基础上,进入hadoop安装目录下的“etc/hadoop”目录,修改其中的配置文件。

  2. 修改“hadoop-env.sh”、“mapred-env.sh”、“yarn-env.sh”文件中的“JAVA_HOME”。

  3. 修改“core-site.xml”文件。

    <!-- 指定HDFS中NameNode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop151:9000</value>
    </property>
    
    <!-- 指定Hadoop运行时产生文件的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop/data/tmp</value>
    </property>
  4. 修改“hdfs-site.xml”文件

    <!-- 指定HDFS副本的数量,该项可以不设置,默认为3 -->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    
    <!-- 指定Hadoop辅助名称节点主机配置 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop153:50090</value>
    </property>
  5. 修改“mapred-site.xml”文件。

    <!-- 指定MR运行在Yarn上 -->
    <property>    
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    
    <!-- 历史服务器端地址 -->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>hadoop151:10020</value>
    </property>
    
    <!-- 历史服务器web端地址 -->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hadoop151:19888</value>
    </property>
  6. 修改“slaves”文件。

    hadoop151
    hadoop152
    hadoop153
  7. 修改“yarn-site.xml”文件

    <!-- Reducer获取数据的方式 -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    
    <!-- 指定YARN的ResourceManager的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop152</value>
    </property>
    
    <!-- 日志聚集功能使能 -->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    
    <!-- 日志保留时间设置7天 -->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>
  8. 将上述所有步骤在其他两台虚拟机上执行。
  9. 在hadoop151上,进入hadoop目录。在其子目录bin目录下使用命令“bin/hdfs namenode -format”命令对整个集群初始化。出现“successful”成功。image.png
  10. 在hadoop151上启动hdfs,在hadoop152上启动yarn。

    [hadoop@hadoop151 ~] start-dfs.sh
    [hadoop@hadoop152 ~] start-yarn.sh
  11. 在三台虚拟上分别键入命令“jps”,查看启动进程。
    image.png

    image.png

    image.png
  12. 最后在物理机上打开浏览器,输入“hadoop151:50070”。在Web端查看hadoop。image.png

配置hadoop支持lzo压缩

lzo是致力于解压速度的一种数据压缩算法,LZO 是 Lempel-Ziv-Oberhumer 的缩写。启用lzo的压缩方式对于小规模集群是很有用处,压缩比率大概能降到原始日志大小的1/3。同时解压缩的速度也比较快。
  1. 虚拟机安装lzo服务。lzo并不是linux系统原生支持,所以需要下载安装软件包。

    [hadoop@hadoop151 ~] sudo yum install -y lzo lzo-devel
    [hadoop@hadoop152 ~] sudo yum install -y lzo lzo-devel
    [hadoop@hadoop153 ~] sudo yum install -y lzo lzo-devel
  2. 将“hadoop-lzo-0.4.20.jar”放入“hadoop/share/hadoop/common”目录下。
  3. 修改“core-site.xml”文件,将lzo写入。

    <property>
       <name>io.compression.codecs</name>
       <value>
           org.apache.hadoop.io.compress.GzipCodec,
           org.apache.hadoop.io.compress.DefaultCodec,
           org.apache.hadoop.io.compress.BZip2Codec,
           org.apache.hadoop.io.compress.SnappyCodec,
           com.hadoop.compression.lzo.LzoCodec,
           com.hadoop.compression.lzo.LzopCodec
       </value>
    </property>
    
    <property>
       <name>io.compression.codec.lzo.class</name>
       <value>com.hadoop.compression.lzo.LzoCodec</value>
    </property>
  4. 在其他两台虚拟机上重复上述步骤。重启集群。

独揽月下萤火
16 声望6 粉丝

做人不要太攀比,踏踏实实做自己。如果非要比一比,那就比比激光雨。


« 上一篇
4. 安装JDK