在CentOS上配置Hadoop分布式文件系统(HDFS)涉及多个步骤,包括安装必要的软件、配置环境变量、设置SSH免密登录、格式化NameNode以及启动HDFS集群。以下是一个详细的配置指南:
1. 安装Java环境
首先,确保系统上安装了Java运行时环境(JRE)。
yum install java-1.8.0-openjdk-devel -y
2. 下载并解压Hadoop
下载Hadoop安装包并解压到指定目录。例如,使用Hadoop 3.3.4版本:
wget https://downloads.apache.org/hadoop/core/hadoop-3.3.4/hadoop-3.3.4.tar.gz tar -xzvf hadoop-3.3.4.tar.gz -C /opt/
3. 配置环境变量
编辑/etc/profile
文件,添加Hadoop和Java的环境变量:
vi /etc/profile
添加以下内容:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk export HADOOP_HOME=/opt/hadoop-3.3.4 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
保存并退出,然后使配置生效:
source /etc/profile
4. 配置SSH免密登录
生成SSH密钥对并分发到所有节点:
ssh-keygen -t rsa -P '' cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ssh-copy-id root@node2 ssh-copy-id root@node3
确保所有节点的~/.ssh/authorized_keys
文件内容相同。
5. 配置Hadoop配置文件
core-site.xml
编辑/opt/hadoop-3.3.4/etc/hadoop/core-site.xml
文件,添加以下内容:
fs.defaultFS hdfs://192.168.1.1:9000
hdfs-site.xml
编辑/opt/hadoop-3.3.4/etc/hadoop/hdfs-site.xml
文件,添加以下内容:
dfs.replication 1 dfs.namenode.name.dir /opt/hadoop-3.3.4/data/namenode dfs.datanode.data.dir /opt/hadoop-3.3.4/data/datanode dfs.namenode.http-address 192.168.1.1:50070
yarn-site.xml
编辑/opt/hadoop-3.3.4/etc/hadoop/yarn-site.xml
文件,添加以下内容:
yarn.resourcemanager.hostname 192.168.1.1 yarn.nodemanager.aux-services mapreduce_shuffle
mapred-site.xml
编辑/opt/hadoop-3.3.4/etc/hadoop/mapred-site.xml
文件,添加以下内容:
mapreduce.framework.name yarn
6. 格式化NameNode
在首次启动HDFS之前,需要格式化NameNode:
hdfs namenode -format
7. 启动HDFS集群
启动HDFS集群:
/opt/hadoop-3.3.4/sbin/start-dfs.sh
8. 验证HDFS配置
访问HDFS的Web界面,通常在http://192.168.1.1:50070
,使用NameNode的IP地址和端口号。
9. 停止HDFS集群
停止HDFS集群:
/opt/hadoop-3.3.4/sbin/stop-dfs.sh
以上步骤涵盖了在CentOS上配置HDFS的基本流程。根据具体需求,可能还需要进行更多的配置和优化。