在 CentOS 上测试 HDFS(Hadoop Distributed File System),通常分为 基本可用性测试 和 功能测试。下面按常见场景一步步说明。
确保你已经:
NameNode / DataNode)hadoop 命令确认 Hadoop 环境变量:
echo $HADOOP_HOME
which hadoop
$HADOOP_HOME/sbin/start-dfs.sh
检查进程:
jps
应至少看到:
hdfs dfsadmin -report
✅ 正常情况会显示集群容量、DataNode 数量等信息。
hdfs dfs -ls /
✅ 不报错说明 HDFS 可用。
hdfs dfs -mkdir -p /test
echo "hello hdfs" > test.txt
hdfs dfs -put test.txt /test/
hdfs dfs -ls /test
hdfs dfs -cat /test/test.txt
✅ 能正常显示 hello hdfs 说明 写 + 读成功
hdfs dfs -get /test/test.txt ./test_hdfs.txt
cat test_hdfs.txt
hdfs dfs -rm /test/test.txt
hdfs dfs -rmdir /test
hdfs fsck /
常见输出:
Status: HEALTHY浏览器访问(默认端口 9870):
http://<namenode-ip>:9870
✅ 能看到 Live Nodes 说明集群正常
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-*-tests.jar TestDFSIO -write -nrFiles 2 -fileSize 128MB
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-*-tests.jar TestDFSIO -read -nrFiles 2 -fileSize 128MB
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-*-tests.jar TestDFSIO -clean
hdfs namenode -format
⚠️ 注意:会清空 HDFS 数据,仅首次或测试环境使用
hdfs dfs -chmod -R 777 /test
或切换用户:
sudo -u hdfs hdfs dfs -ls /
start-dfs.sh
hdfs dfsadmin -report
hdfs dfs -mkdir /test
echo test > a.txt
hdfs dfs -put a.txt /test
hdfs dfs -cat /test/a.txt
hdfs fsck /
如果你愿意,可以告诉我:
我可以给你更精确的测试命令和排错方案。