在虚拟机上安装 Hadoop 全攻略

在虚拟机上安装 Hadoop 是进入大数据处理和分析领域的重要一步。以下将详细讲解在常见虚拟机软件(如 VMware Workstation、VirtualBox)中,于 Linux 虚拟机系统安装 Hadoop 的流程与要点。

一、前期准备

  1. 虚拟机软件与系统镜像 :确保已正确安装 VMware Workstation 或 VirtualBox 等虚拟机软件,并且拥有目标操作系统的镜像文件(如 Ubuntu Server ISO、CentOS ISO 等),完成虚拟机的创建与基础系统安装。推荐使用 Ubuntu 或 CentOS,因为这两种发行版有广泛的社区支持和丰富的文档资源。分配足够的内存和硬盘空间给虚拟机,建议至少 2GB 内存和 20GB 硬盘空间 。

  2. 更新系统 :启动虚拟机并登录后,首先更新操作系统以确保所有软件包都是最新的。在 Ubuntu 中,你可以使用以下命令:

    • sudo apt update

    • sudo apt upgrade -y

在 CentOS 中,使用以下命令: * sudo yum update -y

  1. 安装 Java :Hadoop 依赖 Java,因此需要先安装 Java 开发工具包 (JDK)。在 Ubuntu 上,你可以使用以下命令安装 OpenJDK 8 或更高版本:

    • sudo apt install openjdk-8-jdk -y (安装 OpenJDK 8)

    • sudo apt install openjdk-11-jdk -y (安装 OpenJDK 11) 。

安装完成后,验证 Java 是否安装成功,通过命令 java -versionjavac -version,若返回正确的版本信息,说明 Java 安装成功。

二、安装 Hadoop

  1. 下载 Hadoop :访问 Apache Hadoop 的官方网站,下载 Hadoop 的最新版本。你可以使用 wget 命令直接下载到你的虚拟机中:

    • wget https://downloads.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz (以 Hadoop 3.3.1 为例) 。
  2. 解压 Hadoop :解压下载的 Hadoop 压缩包:

    • tar -xzvf hadoop-3.3.1.tar.gz

    • 将解压后的目录移动到合适的位置,例如 /usr/local/hadoop

    • sudo mv hadoop-3.3.1 /usr/local/hadoop

三、配置 Hadoop 环境变量

编辑 ~/.bashrc 文件,添加 Hadoop 的环境变量:

  • nano ~/.bashrc

  • 在文件末尾添加以下内容:

    export HADOOP_HOME=/usr/local/hadoop
    
    export HADOOP_INSTALL=$HADOOP_HOME
    
    export HADOOP_MAPRED_HOME=$HADOOP_HOME
    
    export HADOOP_COMMON_HOME=$HADOOP_HOME
    
    export HADOOP_HDFS_HOME=$HADOOP_HOME
    
    export YARN_HOME=$HADOOP_HOME
    
    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
    
    export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin 
    

保存并退出编辑器,然后使配置文件生效:

  • source ~/.bashrc

四、配置 Hadoop

  1. 编辑 core-site.xml 文件 :进入 Hadoop 配置目录 cd /usr/local/hadoop/etc/hadoop ,编辑 core-site.xml 文件,配置 Hadoop 的核心设置:

    • nano core-site.xml

    • 添加以下内容:

    • <configuration>

    • <property>

    • <name>fs.defaultFS</name>

    • <value>hdfs://localhost:9000</value>

    • </property>

    • </configuration>

  2. 编辑 hdfs-site.xml 文件 :编辑 hdfs-site.xml 文件,配置 HDFS 设置:

    • nano hdfs-site.xml

    • 添加以下内容:

    • <configuration>

    • <property>

    • <name>dfs.replication</name>

    • <value>1</value>

    • </property>

    • </configuration>

  3. 编辑 mapred-site.xml 文件 :首先需要复制一个模板文件:

    • cp mapred-site.xml.template mapred-site.xml

    • 然后编辑 mapred-site.xml 文件:

    • nano mapred-site.xml

    • 添加以下内容:

    • <configuration>

    • <property>

    • <name>mapreduce.framework.name</name>

    • <value>yarn</value>

    • </property>

    • </configuration>

  4. 编辑 yarn-site.xml 文件 :编辑 yarn-site.xml 文件,配置 YARN 设置:

    • nano yarn-site.xml

    • 添加以下内容:

      <configuration>
      
      <property>
      
      <name>yarn.nodemanager.aux-services</name>
      
      <value>mapreduce_shuffle</value>
      
      </property>
      
      </configuration> 
      

五、格式化 HDFS 并启动 Hadoop 服务

  1. 格式化 HDFS :在启动 Hadoop 之前,需要对 HDFS 进行格式化。执行以下命令:

    • /usr/local/hadoop/bin/hdfs namenode -format
  2. 启动 Hadoop 服务 :启动 Hadoop 的 NameNode 和 DataNode 服务:

    • /usr/local/hadoop/sbin/start-dfs.sh

    • 可以使用以下命令检查服务是否成功启动:

    • jps

    • 应能看到 NameNodeDataNode 的进程 。

六、验证 Hadoop 安装

我们可以通过 HDFS 命令来测试安装是否成功:

  • /usr/local/hadoop/bin/hdfs dfs -mkdir /test

  • /usr/local/hadoop/bin/hdfs dfs -ls /

如果能看到 /test 目录,则安装成功 。

七、安装后配置优化

  1. 配置 SSH 免密码登录 :Hadoop 需要 SSH 服务,确保可以无密码登录到本机。生成 SSH 密钥对,并将公钥添加到授权密钥中:

    • ssh-keygen -t rsa

    • cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

  2. 创建 Hadoop 用户 :为了更好地管理 Hadoop,建议创建一个专用用户:

    • sudo adduser hadoopuser

    • 创建完成后,将用户添加到 sudo 组:

    • sudo usermod -aG sudo hadoopuser

八、常见问题及解决

  1. 环境变量配置错误

    • 错误示例 :在配置 Hadoop 环境变量时,错误地设置了 HADOOP_HOME 的路径,导致系统无法识别 Hadoop 命令。

    • 解决方法 :仔细检查 ~/.bashrc 文件中的环境变量配置,确保路径正确无误。使用 echo $HADOOP_HOME 命令检查环境变量是否正确设置,若未设置或设置错误,重新编辑 ~/.bashrc 文件并正确配置 。

  2. HDFS 格式化失败

    • 错误示例 :在格式化 HDFS 时,出现 "JAVA_HOME is not set" 的错误。

    • 解决方法 :确保已正确设置 JAVA_HOME 环境变量,并指向有效的 JDK 安装目录。在 ~/.bashrc 文件中添加 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64(根据实际 JDK 安装路径修改),然后重新格式化 HDFS 。

  3. Hadoop 服务无法启动

    • 错误示例 :启动 Hadoop 服务时,出现 "NameNode not started" 的错误。

    • 解决方法 :检查 Hadoop 配置文件中的 fs.defaultFSdfs.replication 等关键参数是否配置正确,确保 HDFS 的相关配置与实际环境一致。同时,检查是否有其他冲突的 Hadoop 进程在运行,如有,先停止这些进程,再重新启动 Hadoop 服务 。

通过以上步骤,你应该能够在虚拟机上成功安装并配置 Hadoop。希望这篇指南能为你带来帮助,祝你顺利进入大数据处理和分析的世界!

相关推荐
小羊在奋斗2 小时前
【Linux网络】NAT技术、DNS系统、五种IO模型
linux·网络·智能路由器
24k小善2 小时前
flink集成tidb cdc
大数据·flink·tidb
TiDB_PingCAP2 小时前
海量数据融合互通丨TiDB 在安徽省住房公积金监管服务平台的应用实践
分布式·tidb·htap
StableAndCalm3 小时前
什么是hive
数据仓库·hive·hadoop
程序员的世界你不懂3 小时前
Kafka 推送消息,移动端自动化测试,数据驱动测试
分布式·kafka·linq
jiarg3 小时前
linux 内网下载 yum 依赖问题
linux·运维·服务器
yi个名字4 小时前
Linux第一课
linux·运维·服务器
Kurbaneli4 小时前
深入理解 C 语言函数的定义
linux·c语言·ubuntu
菜鸟xy..4 小时前
linux 基本命令教程,巡查脚本,kali镜像
linux·运维·服务器·kali镜像·巡查脚本·nmtui