dncp_block_verification 日志文件在 HDFS 中的大小增加
dncp_block_verification log file increases size in HDFS
我们使用的是cloudera CDH 5.3。我面临一个问题,其中“/dfs/dn/current/Bp-12345-IpAddress-123456789/dncp-block-verification.log.curr”和 "dncp-vlock-verification.log.prev" 的大小在数小时内不断增加到 TB。我读了一些博客,他们提到这是一个 HDFS 错误。此问题的临时解决方案是停止数据节点服务并删除这些文件。但是我们观察到日志文件在两个数据节点上的大小都增加了(即使在删除它后在同一个节点上)。因此,它需要持续监控。
有人有解决这个问题的永久方法吗?
一个解决方案,虽然有点激烈,是完全禁用块扫描器,通过在 HDFS DataNode 配置中设置键 dfs.datanode.scan.period.hours
到 0
(默认为 504
以小时为单位).这样做的负面影响是您的 DN 可能不会自动检测损坏的块文件(并且需要等待未来的块读取客户端来检测它们);如果您的平均复制是 3 次左右,这没什么大不了的,但您可以将此更改视为短期更改,直到您升级到解决该问题的版本。
请注意,如果您升级到最新的 CDH 5.4.x 或更高版本,则不会发生此问题,其中包括 HDFS-7430 重写更改和相关的错误修复。这些更改已取消使用此类本地文件,从而消除了问题。
我们使用的是cloudera CDH 5.3。我面临一个问题,其中“/dfs/dn/current/Bp-12345-IpAddress-123456789/dncp-block-verification.log.curr”和 "dncp-vlock-verification.log.prev" 的大小在数小时内不断增加到 TB。我读了一些博客,他们提到这是一个 HDFS 错误。此问题的临时解决方案是停止数据节点服务并删除这些文件。但是我们观察到日志文件在两个数据节点上的大小都增加了(即使在删除它后在同一个节点上)。因此,它需要持续监控。
有人有解决这个问题的永久方法吗?
一个解决方案,虽然有点激烈,是完全禁用块扫描器,通过在 HDFS DataNode 配置中设置键 dfs.datanode.scan.period.hours
到 0
(默认为 504
以小时为单位).这样做的负面影响是您的 DN 可能不会自动检测损坏的块文件(并且需要等待未来的块读取客户端来检测它们);如果您的平均复制是 3 次左右,这没什么大不了的,但您可以将此更改视为短期更改,直到您升级到解决该问题的版本。
请注意,如果您升级到最新的 CDH 5.4.x 或更高版本,则不会发生此问题,其中包括 HDFS-7430 重写更改和相关的错误修复。这些更改已取消使用此类本地文件,从而消除了问题。