Linux环境下安装MapReduce(以Hadoop MapReduce为例)的详细步骤

一、前提条件

  1. 操作系统准备
    • 确保你有一个合适的Linux发行版,如Ubuntu、CentOS等。以CentOS为例,系统应该是比较新的版本,并且已经完成了基本的系统更新。
    • 安装好Java运行环境(JDK),因为Hadoop是基于Java开发的。你可以通过以下命令检查Java是否安装:java -version。如果没有安装,在CentOS上可以使用yum install java -y命令来安装OpenJDK。

二、安装Hadoop(包含MapReduce)

  1. 下载Hadoop

    • 访问Hadoop官方网站(https://hadoop.apache.org/),选择合适的稳定版本进行下载。例如,截至 2024年,较新的稳定版本可能是Hadoop 3.x系列。使用wget命令进行下载,假设下载到/opt目录下,命令如下:
    cd /opt
    wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
    
  2. 解压Hadoop

    • 下载完成后,使用以下命令解压:
    tar -zxvf hadoop-3.3.6.tar.gz
    
    • 可以将解压后的目录重命名为更简单的名称,比如hadoop
    mv hadoop-3.3.6 hadoop
    
  3. 配置Hadoop环境变量

    • 打开/etc/profile文件,添加以下内容来设置Hadoop的环境变量:
    export HADOOP_HOME=/opt/hadoop
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    
    • 保存文件后,执行source /etc/profile使环境变量生效。
  4. 配置Hadoop核心文件(core-site.xml)

    • 编辑$HADOOP_HOME/etc/hadoop/core-site.xml文件,添加以下配置:
    <configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
        </property>
    </configuration>
    
    • 这里将Hadoop默认的文件系统设置为本地的HDFS(Hadoop Distributed File System),端口为9000。如果是集群环境,需要根据实际情况修改。
  5. 配置HDFS文件(hdfs-site.xml)

    • 编辑$HADOOP_HOME/etc/hadoop/hdfs-site.xml文件,示例配置如下:
    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    </configuration>
    
    • 这里设置数据块的副本数为1,在单机测试环境下可以这样设置。在生产集群环境中,副本数可以根据存储和容错需求进行调整。
  6. 配置MapReduce文件(mapred-site.xml)

    • 从模板创建mapred-site.xml文件:
    cp $HADOOP_HOME/etc/hadoop/mapred-site.xml.template $HADOOP_HOME/etc/hadoop/mapred-site.xml
    
    • 编辑mapred-site.xml文件,添加以下内容:
    <configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
    </configuration>
    
    • 这里将MapReduce的运行框架设置为YARN(Yet Another Resource Negotiator),这是Hadoop中的资源管理系统。
  7. 配置YARN文件(yarn-site.xml)

    • 编辑$HADOOP_HOME/etc/hadoop/yarn-site.xml文件,示例配置如下:
    <configuration>
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>
    </configuration>
    
    • 这个配置用于启用YARN中的MapReduce shuffle服务。
  8. 格式化HDFS

    • 在首次安装或者需要重新初始化HDFS时,需要执行格式化命令:
    hdfs namenode - format
    
    • 注意,这个操作会清除HDFS中原有的数据,所以在生产环境中要谨慎使用。
  9. 启动Hadoop服务

    • 启动HDFS:start - dfs.sh

    • 启动YARN:start - yarn.sh

    • 可以通过jps命令来检查相关服务是否启动成功。你应该看到类似NameNodeDataNodeResourceManagerNodeManager等进程。

至此,MapReduce(作为Hadoop的一部分)已经安装并初步配置完成,你可以编写简单的MapReduce程序来测试它的功能。例如,编写一个简单的单词计数程序,将文本文件作为输入,统计每个单词出现的次数。

posted @ 2024-12-17 16:30  软件职业规划  阅读(27)  评论(0编辑  收藏  举报