Hadoop在CentOS 7上的安装指南
环境准备
在开始安装Hadoop之前,确保系统满足基本要求,CentOS 7是最小化安装时,需手动安装必要的依赖包,如java-1.8.0-openjdk、wget和vim,通过以下命令更新系统并安装Java:

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目录下,需修改以下关键文件:

core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>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>mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>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集群
按顺序启动HDFS和YARN服务:
start-dfs.sh start-yarn.sh
验证服务状态:
jps
应看到NameNode、DataNode、ResourceManager和NodeManager进程。
测试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/*
常见问题解决
- JVM内存不足:修改
yarn-site.xml中的yarn.nodemanager.resource.memory-mb和mapreduce.map.memory.mb参数。 - 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。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复