0

我们有一个集群(*ambari 集群有 3 台主机,3 台工作机器)

name-node 设置在master01 和 master03 Linux redhat 机器版本 7.3

我们注意到集群重启后(机器重启),我们无法在两台机器上启动名称节点服务(master01 & master03

所以我们开始调查这个问题......

令人惊讶的是,我们看到 master01 或 master03 机器上没有任何 fsimage 文件!

而文件应该在文件夹下 - /data/var/hadoop/hdfs/namenode/current/文件夹

所以在这个阶段我们被困在没有工作集群的情况下

我的问题是

  1. 我们如何恢复/恢复文件(如果它们不存在于我们的机器上)

  2. 为了恢复集群,我们需要做的其他选择是什么?

  3. 大问题 - 这些文件怎么会被删除?,

  4. 从 HDFS 用户运行的任何已知推荐可以删除这些文件?或冒fsimage文件的风险?

最后一个非常重要的问题 - 我们如何才能第二次避免这种情况???

背景 - 什么是 fsimage 文件?

fsimage – fsimage 文件包含文件系统在某个时间点的完整状态。每个文件系统修改都被分配一个唯一的、单调递增的事务 ID。fsimage 文件表示在对特定事务 ID 进行所有修改之后的文件系统状态。

来自其他工作集群的 fsimage 文件示例

# cd /data/var/hadoop/hdfs/namenode/current/
# du -sh * | grep fsimage
4.0K    fsimage_0000000000000000000
4.0K    fsimage_0000000000000000000.md5
12K     fsimage_0000000000000008921
4.0K    fsimage_0000000000000008921.md5
4

0 回答 0