在CentOS上配置HDFS(Hadoop分布式文件系统)涉及多个步骤,包括安装Hadoop、配置Hadoop集群以及启动和验证HDFS。以下是一个基本的指南:
Hadoop需要Java运行环境。你可以使用以下命令安装OpenJDK:
sudo yum install java-1.8.0-openjdk-devel
验证安装:
java -version
从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
编辑/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的配置文件,主要涉及core-site.xml
、hdfs-site.xml
和yarn-site.xml
。
编辑$HADOOP_HOME/etc/hadoop/core-site.xml
文件,添加以下内容:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
编辑$HADOOP_HOME/etc/hadoop/hdfs-site.xml
文件,添加以下内容:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</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>
创建数据目录:
sudo mkdir -p /usr/local/hadoop/data/namenode
sudo mkdir -p /usr/local/hadoop/data/datanode
修改目录权限:
sudo chown -R hadoop:hadoop /usr/local/hadoop/data
编辑$HADOOP_HOME/etc/hadoop/yarn-site.xml
文件,添加以下内容:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
在第一次启动HDFS之前,需要对其进行格式化:
hdfs namenode -format
启动HDFS和YARN:
start-dfs.sh
start-yarn.sh
检查HDFS是否正常运行:
jps
你应该看到以下进程:
访问HDFS Web界面:
打开浏览器,访问http://<your-namenode-ip>:50070
,你应该能看到HDFS的状态页面。
停止HDFS和YARN:
stop-dfs.sh
stop-yarn.sh
以上步骤是在单节点上配置HDFS的基本过程。如果你打算配置一个多节点集群,还需要配置slaves
文件(在$HADOOP_HOME/etc/hadoop/slaves
),并在每个工作节点上重复上述步骤。