阅读量:70
1. 检查Hadoop环境变量配置
确保HADOOP_HOME和PATH环境变量已正确设置,这是Hadoop命令执行的基础。
- 执行
echo $HADOOP_HOME,应输出Hadoop安装目录(如/usr/local/hadoop-3.3.4); - 执行
echo $PATH,应包含$HADOOP_HOME/bin和$HADOOP_HOME/sbin路径; - 若未设置,编辑
~/.bashrc文件,添加以下内容并执行source ~/.bashrc使其生效:export HADOOP_HOME=/usr/local/hadoop-3.3.4 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
2. 验证HDFS核心配置文件参数
HDFS的关键配置文件位于$HADOOP_HOME/etc/hadoop目录下,需检查以下文件的核心参数:
- core-site.xml:确保
fs.defaultFS参数设置为NameNode的URI(本地测试用localhost,集群用主机名/IP),例如:<property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> - hdfs-site.xml:检查以下参数是否符合需求:
dfs.replication:数据块副本数(本地测试设为1,集群设为节点数的2/3以上);dfs.namenode.name.dir:NameNode元数据存储路径(如/usr/local/hadoop-3.3.4/data/namenode);dfs.datanode.data.dir:DataNode数据存储路径(如/usr/local/hadoop-3.3.4/data/datanode)。
3. 确认NameNode格式化状态
NameNode首次启动前必须格式化(清空元数据),格式化后需重启服务:
- 执行
hdfs namenode -format命令,若输出“Format successful”则表示成功; - 格式化后,启动HDFS服务(
start-dfs.sh),避免重复格式化(否则会丢失元数据)。
4. 检查HDFS服务进程状态
启动HDFS服务后,通过jps命令查看关键进程是否运行:
- 执行
jps,应看到以下进程:- NameNode:HDFS主节点,负责元数据管理;
- DataNode:HDFS从节点,负责数据存储;
- SecondaryNameNode:辅助NameNode,合并元数据快照(可选)。
- 若缺少某个进程,需检查对应节点的日志文件(位于
$HADOOP_HOME/logs目录),定位启动失败原因。
5. 访问HDFS Web管理界面
通过浏览器查看HDFS集群状态,确认服务是否正常运行:
- 打开浏览器,输入
http://localhost:9870(Hadoop 3.x版本)或http://localhost:50070(Hadoop 2.x版本); - 若页面能正常加载,显示“Hadoop NameNode”或“Cluster Summary”信息,则说明HDFS配置正确。
6. 测试HDFS基本操作功能
通过命令行工具执行HDFS操作,验证配置是否可用:
- 创建HDFS目录:
hdfs dfs -mkdir -p /user/test; - 上传本地文件到HDFS:
hdfs dfs -put /path/to/localfile /user/test(将/path/to/localfile替换为本地文件路径); - 查看HDFS目录下的文件:
hdfs dfs -ls /user/test; - 下载HDFS文件到本地:
hdfs dfs -get /user/test/remotefile /path/to/localdir(将remotefile替换为HDFS文件名,/path/to/localdir替换为本地目录路径); - 删除HDFS文件:
hdfs dfs -rm /user/test/remotefile。 - 若以上操作均无报错且结果符合预期,则说明HDFS配置正确。
7. 查看HDFS集群详细报告
通过hdfs dfsadmin命令获取集群健康状态和详细信息:
- 执行
hdfs dfsadmin -report,输出内容包括:- 集群ID、名称节点信息;
- DataNode列表(数量、IP地址、存储容量、已用空间);
- 副本放置情况、块总数、缺失块数量等。
- 若报告中无“Dead Nodes”(死亡节点)或“Decommissioning Nodes”(退役节点),且块副本数符合配置要求,则说明集群状态正常。