在CentOS上搭建HDFS(Hadoop Distributed File System)集群涉及多个步骤,包括安装Java、配置Hadoop环境、设置SSH无密码登录以及启动和配置HDFS。以下是一个基本的指南:
Hadoop需要Java运行时环境。你可以使用OpenJDK或Oracle JDK。
sudo yum install java-1.8.0-openjdk-devel
验证安装:
java -version
从Apache Hadoop官方网站下载最新版本的Hadoop,并解压到指定目录。
wget https://archive.apache.org/dist/hadoop/core/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
编辑/etc/profile.d/hadoop.sh文件,添加以下内容:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使配置生效:
source /etc/profile.d/hadoop.sh
编辑$HADOOP_HOME/etc/hadoop/hadoop-env.sh文件,设置Java路径:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
编辑$HADOOP_HOME/etc/hadoop/core-site.xml文件,配置HDFS的默认文件系统:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://namenode:9000</value>
</property>
</configuration>
编辑$HADOOP_HOME/etc/hadoop/hdfs-site.xml文件,配置HDFS的相关参数:
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/data/datanode</value>
</property>
</configuration>
在所有节点上生成SSH密钥:
ssh-keygen -t rsa
将公钥复制到其他节点:
ssh-copy-id namenode
ssh-copy-id datanode1
ssh-copy-id datanode2
在NameNode节点上执行格式化命令:
hdfs namenode -format
在NameNode节点上启动HDFS:
start-dfs.sh
检查HDFS状态:
hdfs dfsadmin -report
在任意节点上访问HDFS Web界面:
http://namenode:50070
你应该能够看到HDFS集群的状态和存储信息。
通过以上步骤,你应该能够在CentOS上成功搭建一个基本的HDFS集群。