HDFS 故障排除

重要

Microsoft SQL Server 2019 大数据群集附加产品将停用。 对 SQL Server 2019 大数据群集的支持将于 2025 年 2 月 28 日结束。 具有软件保障的 SQL Server 2019 的所有现有用户都将在平台上获得完全支持,在此之前,该软件将继续通过 SQL Server 累积更新进行维护。 有关详细信息,请参阅公告博客文章Microsoft SQL Server 平台上的大数据选项

本文包含 SQL Server 2019 大数据群集中 HDFS 错误的故障排除方案。

排查 HDFS 堆大小问题

症状

在 SQL Server 大数据群集中:[Big Data Cluster] - nmnode pods down with Failed to start namenode.java.lang.OutOfMemoryError: Java heap space and WARN util.JvmPauseMonitor: Detected pause in JVM or host machine (eg GC)

原因

HDFS 堆大小可能未正确配置。 namenode 的 JVM 堆的正确设置取决于许多因素,例如文件和块的数量,以及 HDFS 系统上的负载。 有关计算堆大小的详细信息,请参阅配置 namenode 堆大小

解决方法

在 SQL Server 大数据群集中,HDFS namenode 进程的堆大小由大数据群集配置 hdfs-env.HDFS_NAMENODE_OPTS 控制,默认值为 2 GB,如 HDFS 配置属性中所指定。 此解决方法建议增加堆大小,这是整个大数据群集的全局配置更改。

SQL Server 2019 CU9 之后默认启用 SQL Server 大数据群集运行时配置功能。 若要继续,请将群集升级到 CU9+,最好是升级到可用的最新版本。 有关详细信息,请参阅 SQL Server 大数据群集发行说明

若要增加 HDFS namenode 的堆大小,请遵循部署后配置指南

下面的示例使用 azdata 将 HDFS namenode 堆增加到 4 GB。 请注意,此操作仅在 CU9 或更高版本中可用。

azdata bdc hdfs settings set --settings hdfs-env.HDFS_NAMENODE_OPTS="-Dhadoop.security.logger=INFO,RFAS -Xmx4g"

若要确认更改并监视更新状态:

# (Optional) View the pending change
azdata bdc settings show --filter-option=pending --include-details --recursive
 
# Apply the pending settings
azdata bdc settings apply
 
# Monitor the configuration update status
azdata bdc status show --all

另请参阅

后续步骤