
常见问题之Datanode故障
小编小本本作为本际云服务器推荐网的小编,今天给大家分享一下HDFS中的Datanode故障问题。
HDFS结构
HDFS结构包括Namenode、DataNode、JournalNode、Zookeeper和ZKFC。Namenode主要用于管理文件系统的命名空间、目录结构、元数据信息以及提供备份机制;DataNode主要用于存储每个文件的“数据块”数据,并且会周期性地向NameNode报告该DataNode的数据存放情况;JournalNode用于同步主备NameNode之间的元数据信息;Zookeeper是一个协调服务,帮助ZKFC执行主NameNode的选举。ZKFC负责监控NameNode的状态,并及时把状态写入Zookeeper。
HDFSHA集群
为了避免单点故障问题,HDFS一般采用HA集群的方式部署,典型的HDFS HA场景为主备两个NameNode方式运行,一个处于Active状态,另一个处于Standby状态,一旦主NameNode出现故障,可以迅速切换至备NameNode,从而不间断对外提供服务。NameNode之间通过一组JournalNode同步元数据信息,实现Active和Standby两个NameNode的元数据信息同步。
HDFS原理
在HDFS内部,一个文件分成一个或多个“数据块”,这些“数据块”存储在DataNode集合里,NameNode负责保存和管理所有的HDFS元数据。客户端连接到NameNode,执行文件系统的“命名空间”操作,例如打开、关闭、重命名文件和目录,同时决定“数据块”到具体DataNode节点的映射。DataNode在NameNode的指挥下进行“数据块”的创建、删除和复制。客户端连接到DataNode,执行读写数据块操作。
HDFS数据节点硬盘故障案例
HDFS高可用集群中单数据节点datanode挂掉,不影响整个集群业务运行,更换硬盘属于高危操作,更换前需要将其他业务迁出。
1.收到hadoop数据节点Datanode进程停掉的告警信息。
2.登录集群管理节点,切换到故障节点,进入hadoop日志目录查看datanode日志详情,根据日志定位故障硬盘位置。
3.更换硬盘涉及风险,更换前应通知业务侧停掉主机业务进程,然后再做更换操作。
4.停止业务进程停止nodemanager(如有)、HRegionserver进程(业务集群使用graceful_stop.sh命令将region迁移到其他节点后停止regionserver)、journalnode进程和datanode进程以及zookeeper进程(如有)。
5.更换数据节点故障硬盘,挂载到原文件夹并修改权限,查询文件夹权限,查询hadoop HDFS配置文件中datanode参数。
6.确认无误后启动进程,首先启动zookeeper进程(如有)、datanode进程、journalnode进程、regionserver进程和nodemanager进程。
7.主机查询进程状态登录HDFSUI查询Datanode,HbaseUI查询regionserver。
以上就是HDFS常见问题之Datanode故障的相关解决方法,希望对大家有所帮助。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/5886.html
