centos7 配置 hadoop
时间: 2025-05-10 18:34:37 浏览: 22
### CentOS 7 上配置 Hadoop 的指南
在 CentOS 7 上配置 Hadoop 是一项涉及多个步骤的任务,以下是详细的说明:
#### 1. 安装 Java 开发环境 (JDK)
Hadoop 运行依赖于 Java 环境。因此,在安装 Hadoop 前需先安装 JDK。
通过以下命令安装 OpenJDK 或 Oracle JDK:
```bash
sudo yum install java-1.8.0-openjdk-devel.x86_64 -y
```
验证 Java 是否成功安装并查看版本号:
```bash
java -version
```
此过程确保系统具备运行 Hadoop 所需的基础支持[^1]。
#### 2. 创建专用用户账户
为了安全性和权限管理,建议创建一个专门用于运行 Hadoop 的用户账户。
```bash
sudo adduser hdfs_user
sudo passwd hdfs_user
```
切换到新创建的用户账户下执行后续操作:
```bash
su - hdfs_user
```
#### 3. 下载与解压 Hadoop 软件包
下载适合系统的 Hadoop 版本(例如 Hadoop 2.7.7),并将文件上传至服务器或者直接使用 wget 工具获取远程资源链接。
```bash
wget https://archive.apache.org/dist/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz
tar -xzvf hadoop-2.7.7.tar.gz
mv hadoop-2.7.7 ~/hadoop
echo 'export HADOOP_HOME=~/hadoop' >> ~/.bashrc
echo 'export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin' >> ~/.bashrc
source ~/.bashrc
```
上述脚本完成路径设置以便全局调用 Hadoop 命令工具。
#### 4. 修改核心配置文件
进入 `etc/hadoop` 文件夹编辑必要的 XML 配置文档来定义集群参数。
##### a) core-site.xml
设定 NameNode 地址以及临时目录位置。
```xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/app/hadoop/tmp</value>
</property>
</configuration>
```
##### b) hdfs-site.xml
指定副本数量和其他存储选项。
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
```
##### c) mapred-site.xml
如果存在,则更新框架名称;否则复制模板文件后再修改。
```bash
cp mapred-site.xml.template mapred-site.xml
```
接着添加如下内容:
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
##### d) yarn-site.xml
调整 YARN 设置以优化性能表现。
```xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
```
#### 5. 初始化 HDFS 文件系统
格式化分布式文件系统之前确认当前无其他实例正在运行。
```bash
hdfs namenode -format
```
启动所有服务组件并通过 jps 查看进程状态是否正常工作。
```bash
start-dfs.sh
start-yarn.sh
jps
```
此时应该能看到诸如 NameNode, DataNode, ResourceManager 和 NodeManager 类型的服务已激活。
---
### 注意事项
- **防火墙规则**: 如果启用了 SELinux 或 iptables,请允许端口访问范围内的通信流量。
- **SSH 密钥认证免密码登录**: 对单节点或多节点架构均适用简化交互流程。
---
阅读全文
相关推荐


















