CentOS搭建hadoop
时间: 2025-01-04 21:26:38 浏览: 4
### 安装和配置Hadoop集群
#### 准备工作
为了在 CentOS 上成功搭建 Hadoop 集群,需先确保所有节点的操作系统已更新至最新版本并安装必要的依赖包[^1]。
```bash
sudo yum update -y
sudo yum install java-1.8.0-openjdk-devel -y
```
#### 下载与解压 Hadoop
前往 Apache 官方网站下载适合的 Hadoop 版本,并将其放置于合适目录下完成解压缩操作。
```bash
wget https://archive.apache.org/dist/hadoop/core/hadoop-3.3.4/hadoop-3.3.4.tar.gz
tar zxvf hadoop-3.3.4.tar.gz -C /usr/local/
ln -s /usr/local/hadoop-3.3.4 /usr/local/hadoop
```
#### 修改环境变量
编辑 `~/.bashrc` 文件,在文件末尾追加如下内容以便设置 Hadoop 的环境变量:
```bash
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export HADOOP_INSTALL=/usr/local/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=${HADOOP_INSTALL}
export HADOOP_COMMON_HOME=${HADOOP_INSTALL}
export HADOOP_HDFS_HOME=${HADOOP_INSTALL}
export YARN_HOME=${HADOOP_INSTALL}
source ~/.bashrc
```
#### 编辑核心配置文件
进入 `/usr/local/hadoop/etc/hadoop/` 目录修改以下四个主要配置文件:core-site.xml, hdfs-site.xml, yarn-site.xml 和 mapred-site.xml。这些文件用于定义整个分布式系统的参数设定以及各组件之间的交互方式。
对于单 Master 多 Slave 架构而言,具体调整如下所示(假设 IP 地址分别为 master: 192.168.1.100; slave1: 192.168.1.101; slave2: 192.168.1.102)
##### core-site.xml
```xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
```
##### hdfs-site.xml
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>master:50070</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/hdfs/datanode</value>
</property>
</configuration>
```
##### yarn-site.xml
```xml
<configuration>
<!-- ResourceManager -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<!-- NodeManager local directories -->
<property>
<name>yarn.nodemanager.local-dirs</name>
<value>/data/yarn/local</value>
</property>
<!-- Log aggregation settings -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
```
##### mapred-site.xml
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
#### 初始化 NameNode 并启动服务
回到 Master 节点执行初始化命令之后再依次开启各个守护进程。
```bash
/usr/local/hadoop/bin/hdfs namenode -format
start-all.sh
jps
```
通过以上步骤即可实现基于 CentOS 操作系统的简易版 Hadoop 集群部署过程。
阅读全文