在CentOS上搭建HDFS(Hadoop分布式文件系统)集群涉及多个步骤,包括安装Java、配置Hadoop环境、设置SSH无密码登录以及启动和测试HDFS。以下是一个基本的指南:
1. 安装Java
Hadoop需要Java环境,首先确保你的CentOS系统上安装了Java。
sudo yum update -y sudo yum install java-1.8.0-openjdk-devel -y
验证Java安装:
java -version
2. 下载并解压Hadoop
从Apache Hadoop官方网站下载最新版本的Hadoop,并解压到指定目录。
wget https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz tar -xzvf hadoop-3.3.1.tar.gz -C /usr/local/ sudo mv /usr/local/hadoop-3.3.1 /usr/local/hadoop
3. 配置Hadoop环境变量
编辑/etc/profile.d/hadoop.sh
文件,添加以下内容:
export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使配置生效:
source /etc/profile.d/hadoop.sh
验证Hadoop安装:
hadoop version
4. 配置HDFS
编辑Hadoop配置文件,主要涉及core-site.xml
、hdfs-site.xml
和yarn-site.xml
。
core-site.xml
fs.defaultFS hdfs://namenode:9000
hdfs-site.xml
dfs.replication 3 dfs.namenode.name.dir /usr/local/hadoop/data/namenode dfs.datanode.data.dir /usr/local/hadoop/data/datanode
yarn-site.xml
yarn.nodemanager.aux-services mapreduce_shuffle
5. 格式化HDFS
在NameNode节点上执行以下命令格式化HDFS:
hdfs namenode -format
6. 启动HDFS集群
在NameNode节点上启动HDFS:
start-dfs.sh
在DataNode节点上启动DataNode:
start-dfs.sh
7. 验证HDFS集群
访问NameNode的Web界面,默认地址是http://namenode:50070
。
8. 设置SSH无密码登录
为了方便管理,建议设置SSH无密码登录。
在NameNode节点上生成SSH密钥:
ssh-keygen -t rsa
将公钥复制到DataNode节点:
ssh-copy-id datanode_user@datanode_ip
9. 停止HDFS集群
在NameNode节点上停止HDFS:
stop-dfs.sh
注意事项
- 确保所有节点的时间同步。
- 确保防火墙允许必要的端口通信(如9000、50070等)。
- 根据实际需求调整配置文件中的参数。
通过以上步骤,你应该能够在CentOS上成功搭建一个基本的HDFS集群。根据具体需求,可能还需要进行更多的配置和优化。