贝博恩创新科技网

Linux Hadoop安装教程,新手如何快速上手?

Linux Hadoop安装教程需要根据操作系统版本(如CentOS 7/8或Ubuntu 20.04)选择对应配置,以下以CentOS 7为例,详细说明Hadoop 3.3.6伪分布式安装步骤,涵盖环境准备、软件安装、配置修改及启动验证全流程。

Linux Hadoop安装教程,新手如何快速上手?-图1
(图片来源网络,侵删)

环境准备

基础系统配置

关闭防火墙和SELinux,避免权限干扰:

systemctl stop firewalld && systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

安装JDK

Hadoop依赖Java环境,推荐安装OpenJDK 1.8:

yum install java-1.8.0-openjdk-devel -y
java -version  # 验证安装,显示版本为1.8.x即成功

创建Hadoop用户及目录

useradd hadoop
passwd hadoop  # 设置密码
mkdir -p /opt/hadoop/{data,tmp,name}  # 创建Hadoop工作目录
chown -R hadoop:hadoop /opt/hadoop

配置主机名与hosts解析

hostnamectl set-hostname hadoop-master  # 设置主机名
echo "192.168.1.100 hadoop-master" >> /etc/hosts  # 根据实际IP修改

Hadoop软件安装

下载并解压Hadoop

从Apache官网下载Hadoop 3.3.6二进制包(https://archive.apache.org/dist/hadoop/common/):

su - hadoop
wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -zxvf hadoop-3.3.6.tar.gz -C /opt/hadoop/
ln -s /opt/hadoop/hadoop-3.3.6 /opt/hadoop/current

配置环境变量

编辑~/.bashrc文件,添加Hadoop相关路径:

Linux Hadoop安装教程,新手如何快速上手?-图2
(图片来源网络,侵删)
export HADOOP_HOME=/opt/hadoop/current
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source ~/.bashrc

Hadoop核心配置文件修改

进入$HADOOP_CONF_DIR目录,修改以下关键配置:

hadoop-env.sh

指定JDK路径:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.x.x.x.el7_9.x86_64  # 通过`echo $JAVA_HOME`获取实际路径

core-site.xml

配置HDFS默认名称节点地址和临时目录:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop-master:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:///opt/hadoop/tmp</value>
    </property>
</configuration>

hdfs-site.xml

配置HDFS数据存储目录和副本数(伪分布式配置副本数为1):

Linux Hadoop安装教程,新手如何快速上手?-图3
(图片来源网络,侵删)
<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///opt/hadoop/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///opt/hadoop/data</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

yarn-site.xml

配置YARN资源管理器节点和日志聚合:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop-master</value>
    </property>
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
</configuration>

mapred-site.xml

配置MapReduce运行框架为YARN:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

格式化并启动Hadoop集群

格式化HDFS(首次安装执行)

hdfs namenode -format  # 仅在首次安装或需清空数据时执行,否则会丢失数据

启动HDFS和YARN服务

start-dfs.sh  # 启动HDFS
start-yarn.sh  # 启动YARN

验证服务状态

检查进程是否启动:

jps  # 应看到NameNode、DataNode、ResourceManager、NodeManager等进程

Web界面访问

  • HDFS管理界面:http://hadoop-master:9870
  • YARN资源管理界面:http://hadoop-master:8088

常见问题排查

若服务启动失败,可通过以下方式排查:

  1. 检查日志文件:$HADOOP_HOME/logs/目录下各服务日志,如hadoop-namenode-hadoop-master.log
  2. 确认端口占用:使用netstat -tunlp | grep 9000检查HDFS端口是否被占用。
  3. 权限问题:确保/opt/hadoop目录属主为hadoop用户。

相关问答FAQs

Q1:启动HDFS时提示“Permission denied”错误如何解决?
A:通常是因为Hadoop用户对工作目录无写权限,执行chown -R hadoop:hadoop /opt/hadoop重新授权,并确保hadoop.tmp.dirdfs.namenode.name.dir等目录权限正确。

Q2:Hadoop运行时出现“JAVA_HOME is not set”错误怎么办?
A:检查hadoop-env.sh中的JAVA_HOME路径是否正确,需与系统实际安装路径一致(可通过echo $JAVA_HOME确认),并确保路径中无空格或特殊字符。

分享:
扫描分享到社交APP
上一篇
下一篇