环境准备与基础配置
在CentOS 6.5系统上安装Hadoop前,需确保系统满足基本要求,关闭防火墙和SELinux,避免网络访问限制,执行命令service iptables stop和setenforce 0,并编辑/etc/selinux/config文件将SELINUX设置为disabled,配置主机名,通过hostnamectl set-hostname hadoop-master修改,并编辑/etc/hosts文件添加IP与主机名的映射关系,确保集群内节点可通过主机名通信,安装JDK环境,推荐使用OpenJDK 1.7,通过yum install java-1.7.0-openjdk-devel -y安装,并配置JAVA_HOME环境变量,可通过echo $JAVA_HOME验证安装成功。

创建Hadoop专用用户
为提升系统安全性,建议创建独立的Hadoop运行用户,使用useradd -m hadoop创建用户,并通过passwd hadoop设置密码,赋予该用户sudo权限,编辑/etc/sudoers文件,添加hadoop ALL=(ALL) NOPASSWD:ALL,确保后续操作无需切换root用户,需配置SSH免密登录,这是Hadoop集群通信的基础,以hadoop用户执行ssh-keygen -t rsa生成密钥,并通过ssh-copy-id hadoop@localhost将公钥复制到本地,实现无密码登录本机。
下载并解压Hadoop安装包
从Apache官网下载Hadoop稳定版(如hadoop-2.7.3.tar.gz),使用wget http://archive.apache.org/dist/hadoop/core/hadoop-2.7.3/hadoop-2.7.3.tar.gz命令获取,解压安装包至/usr/local目录,执行tar -xzvf hadoop-2.7.3.tar.gz -C /usr/local/,并创建软链接ln -s /usr/local/hadoop-2.7.3 /usr/local/hadoop方便后续管理,修改Hadoop目录所有者为hadoop用户:chown -R hadoop:hadoop /usr/local/hadoop。
配置Hadoop核心文件
Hadoop的配置文件位于/usr/local/hadoop/etc/hadoop/目录下,首先编辑core-site.xml,配置默认文件系统地址:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop-master:9000</value>
</property>
</configuration>
接着修改hdfs-site.xml,设置HDFS数据存储目录和副本数:

<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop/hadoopdata/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoop/hadoopdata/datanode</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
配置mapred-site.xml和yarn-site.xml,指定MapReduce框架为YARN,并配置资源管理器相关参数。
格式化NameNode与启动集群
在首次启动前,需格式化HDFS的NameNode节点,以hadoop用户执行hdfs namenode -format,注意观察日志输出,确保格式化成功,随后启动Hadoop集群,依次运行start-dfs.sh和start-yarn.sh命令,通过jps命令检查进程,NameNode、DataNode、ResourceManager和NodeManager进程均存在表示启动成功,可通过浏览器访问http://hadoop-master:8088查看YARN集群状态,或访问http://hadoop-master:50070查看HDFS信息。
常见问题与验证
安装完成后,可通过运行Hadoop自带示例验证集群功能,执行hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /input /output命令,若成功输出词统结果,则集群配置正确,若启动失败,检查日志文件(位于/usr/local/hadoop/logs/)中的错误信息,常见问题包括防火墙未关闭、SSH免密配置失败或JDK路径不正确等。
FAQs
Q1: 启动Hadoop时提示“Permission denied”错误如何解决?
A: 通常是由于SSH免密登录配置失败导致,检查~/.ssh/authorized_keys文件是否存在且包含公钥,或重新执行ssh-copy-id命令确保公钥正确上传。

Q2: Hadoop集群无法访问Web界面,可能的原因是什么?
A: 首先检查防火墙是否关闭,确保8088(YARN)和50070(HDFS)端口未被阻塞,其次确认主机名配置正确,/etc/hosts文件中的IP与主机名映射需准确无误。