hadoop安装 centos 7

Hadoop在CentOS 7上的安装指南

环境准备

在开始安装Hadoop之前,确保系统满足基本要求,CentOS 7是最小化安装时,需手动安装必要的依赖包,如java-1.8.0-openjdkwgetvim,通过以下命令更新系统并安装Java:

hadoop安装 centos 7

sudo yum update -y  
sudo yum install java-1.8.0-openjdk wget vim -y  

验证Java安装是否成功:

java -version  

确保返回的版本为1.8.x,Hadoop 2.x和3.x版本均兼容此Java版本。

创建Hadoop专用用户

为安全性和管理方便,建议创建一个独立用户用于Hadoop安装,执行以下命令:

sudo useradd -m hadoop  
sudo passwd hadoop  
sudo usermod -aG wheel hadoop  

切换至新用户:

su - hadoop  

下载并解压Hadoop

从Apache官网下载最新稳定版Hadoop(如Hadoop 3.3.6),并解压至/opt目录:

wget https://archive.apache.org/dist/hadoop/core/hadoop-3.3.6/hadoop-3.3.6.tar.gz  
sudo tar -xzf hadoop-3.3.6.tar.gz -C /opt  
sudo ln -s /opt/hadoop-3.3.6 /opt/hadoop  
sudo chown -R hadoop:hadoop /opt/hadoop  

配置环境变量

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

export HADOOP_HOME=/opt/hadoop  
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin  
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop  

保存后执行source ~/.bashrc使配置生效。

修改Hadoop配置文件

Hadoop的核心配置文件位于$HADOOP_CONF_DIR目录下,需修改以下关键文件:

hadoop安装 centos 7

  1. core-site.xml

    <configuration>  
      <property>  
        <name>fs.defaultFS</name>  
        <value>hdfs://localhost:9000</value>  
      </property>  
    </configuration>  
  2. hdfs-site.xml

    <configuration>  
      <property>  
        <name>dfs.replication</name>  
        <value>1</value>  
      </property>  
      <property>  
        <name>dfs.namenode.name.dir</name>  
        <value>file:///opt/hadoop/hdfs/namenode</value>  
      </property>  
      <property>  
        <name>dfs.datanode.data.dir</name>  
        <value>file:///opt/hadoop/hdfs/datanode</value>  
      </property>  
    </configuration>  
  3. mapred-site.xml

    <configuration>  
      <property>  
        <name>mapreduce.framework.name</name>  
        <value>yarn</value>  
      </property>  
    </configuration>  
  4. yarn-site.xml

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

配置SSH免密登录

Hadoop需要通过SSH启动集群服务,生成SSH密钥并设置免密登录:

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa  
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys  
chmod 0600 ~/.ssh/authorized_keys  

测试免密登录:

ssh localhost  

格式化NameNode

首次启动Hadoop前,需格式化HDFS文件系统:

hdfs namenode -format  

注意:此操作会清除所有数据,仅在首次安装时执行。

hadoop安装 centos 7

启动Hadoop集群

按顺序启动HDFS和YARN服务:

start-dfs.sh  
start-yarn.sh  

验证服务状态:

jps  

应看到NameNodeDataNodeResourceManagerNodeManager进程。

测试Hadoop安装

上传并测试文件操作:

hdfs dfs -mkdir -p /user/hadoop/input  
hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml /user/hadoop/input  
hdfs dfs -ls /user/hadoop/input  

运行示例MapReduce程序:

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep /user/hadoop/input/output 'dfs[a-z.]+'  
hdfs dfs -cat output/*  

常见问题解决

  1. JVM内存不足:修改yarn-site.xml中的yarn.nodemanager.resource.memory-mbmapreduce.map.memory.mb参数。
  2. SSH连接失败:检查~/.ssh/authorized_keys权限或重新生成密钥对。

FAQs

Q1: 安装Hadoop时提示“Permission denied”如何解决?
A: 检查文件权限,确保Hadoop用户对$HADOOP_HOME目录有读写权限,执行sudo chown -R hadoop:hadoop /opt/hadoop,确认~/.ssh目录权限为700,authorized_keys为600。

Q2: Hadoop集群启动后无法访问Web界面?
A: 确认防火墙已关闭(sudo systemctl stop firewalld)或开放Hadoop默认端口(HDFS: 50070, YARN: 8088),检查core-site.xml中的fs.defaultFS配置是否正确指向localhost:9000

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-12-27 18:48
下一篇 2025-12-27 19:01

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信