温馨提示×

CentOS HDFS集群配置实战指南

小樊
42
2025-06-26 20:02:45
栏目: 智能运维

在CentOS上配置HDFS(Hadoop Distributed File System)集群是一个涉及多个步骤的过程。以下是一个基本的实战指南,帮助你在CentOS系统上搭建HDFS集群。

1. 环境准备

安装Java环境

在所有节点上安装Java运行环境(JDK)。

sudo yum update -y sudo yum install java-1.8.0-openjdk-devel epel-release -y 

配置Java环境变量:

echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk" >> /etc/profile source /etc/profile java -version 

配置网络

确保所有节点在同一网络中,并且可以互相通信。设置静态IP地址,并修改主机名。

修改主机名

为每个节点设置唯一的主机名,并更新 /etc/hosts 文件。

sudo vi /etc/hostname sudo vi /etc/hosts 

2. 安装Hadoop

下载Hadoop

从Apache Hadoop官网下载对应版本的安装包。例如,使用Hadoop 3.2.1版本:

wget https://downloads.apache.org/hadoop/core/hadoop-3.2.1/hadoop-3.2.1.tar.gz 

解压Hadoop

将下载的文件解压到指定目录。

tar -xzvf hadoop-3.2.1.tar.gz -C /opt/hadoop 

配置环境变量

编辑 /etc/profile 文件,添加Hadoop环境变量:

sudo vi /etc/profile 

添加以下内容:

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

使配置文件生效:

source /etc/profile 

3. 配置Hadoop

配置core-site.xml

编辑 $HADOOP_HOME/etc/hadoop/core-site.xml 文件,添加以下内容:

<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://namenode:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/tmp/hadoop</value> </property> </configuration> 

配置hdfs-site.xml

编辑 $HADOOP_HOME/etc/hadoop/hdfs-site.xml 文件,添加以下内容:

<configuration> <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/data/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/data/datanode</value> </property> </configuration> 

配置yarn-site.xml

编辑 $HADOOP_HOME/etc/hadoop/yarn-site.xml 文件,添加以下内容:

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

配置mapred-site.xml

编辑 $HADOOP_HOME/etc/hadoop/mapred-site.xml 文件,添加以下内容:

<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> 

4. 初始化HDFS集群

在NameNode节点上格式化HDFS:

hdfs namenode -format 

5. 启动HDFS集群

在NameNode节点上启动HDFS:

start-dfs.sh 

在DataNode节点上启动DataNode:

start-dfs.sh datanode 

6. 验证集群状态

使用以下命令检查HDFS和YARN的状态:

hdfs dfsadmin -report yarn node -list 

7. 配置SSH无密码登录

为了方便集群管理,建议配置SSH无密码登录。在所有节点上生成SSH密钥并分发到其他节点:

ssh-keygen -t rsa ssh-copy-id namenode ssh-copy-id datanode1 ssh-copy-id datanode2 ssh-copy-id datanode3 ssh-copy-id datanode4 

8. 配置防火墙

确保防火墙允许Hadoop所需的端口通信。例如:

sudo firewall-cmd --permanent --zone=public --add-port=9000/tcp sudo firewall-cmd --permanent --zone=public --add-port=50010/tcp sudo firewall-cmd --permanent --zone=public --add-port=50020/tcp sudo firewall-cmd --permanent --zone=public --add-port=50070/tcp sudo firewall-cmd --permanent --zone=public --add-port=50075/tcp sudo firewall-cmd --permanent --zone=public --add-port=50090/tcp sudo firewall-cmd --reload 

以上步骤提供了一个基本的HDFS集群部署流程,具体配置可能需要根据实际需求进行调整。

0