你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

HDInsight on AKS 中的 Apache Flink® 配置管理

重要

此功能目前以预览版提供。 Microsoft Azure 预览版的补充使用条款包含适用于 beta 版、预览版或其他尚未正式发布的 Azure 功能的更多法律条款。 有关此特定预览版的信息,请参阅 Azure HDInsight on AKS 预览版信息。 如有疑问或功能建议,请在 AskHDInsight 上提交请求并附上详细信息,并关注我们以获取 Azure HDInsight Community 的更多更新。

AKS 上的 HDInsight 为大多数属性和一些基于常见应用程序配置文件提供 Apache Flink 的默认配置。 但是,如果需要调整 Flink 配置属性以提高具有状态使用、并行度或内存设置的某些应用程序的性能,可以使用 AKS 群集上 HDInsight 的 Flink 作业部分更改 Flink 作业配置。

  1. 转到“设置”>“Flink 作业”> 单击“更新”。

    显示更新页的屏幕截图。

  2. 单击“+ 添加行“以编辑配置

    更新作业的屏幕截图。

    此处的检查点间隔在群集级别的更改。

  3. 单击“确定”,然后保存来更新更改。

  4. 保存后,新配置会更新几分钟(约 5 分钟)。

  5. 可以使用配置管理设置更新的配置。

    processMemory size:

  6. 进程内存大小或作业管理器和任务管理器的默认设置是创建群集期间由用户配置的内存。

  7. 可以使用以下配置属性配置此大小。 若要更改任务管理器进程内存,请使用此配置。

    taskmanager.memory.process.size : <value>

    示例: taskmanager.memory.process.size : 2000mb

  8. 对于作业管理器

    jobmanager.memory.process.size : <value>

    注意

    可配置的最大进程内存等于为 jobmanager/taskmanager 配置的内存。

检查点间隔

检查点间隔确定 Flink 触发检查点的频率。 以毫秒为单位定义,可以使用以下配置属性进行设置

execution.checkpoint.interval: <value>

默认设置为 60,000 毫秒(1 分钟),此值可以根据需要更改。

状态后端

状态后端确定 Flink 如何管理和保留应用程序的状态。 它会影响检查点的存储方式。 可以使用以下属性配置状态后端:

state.backend: <value>

默认情况下,HDInsight on AKS 中的 Apache Flink 群集使用 Rocks DB。

检查点存储路径

我们默认允许持久检查点,方法是将检查点存储在用户配置的 abfs 存储中。 即使作业失败,由于检查点仍然存在,因此可以轻松开始使用最新的检查点。

state.checkpoints.dir: <path><path> 替换为存储检查点的所需路径。

默认情况下,存储在用户配置的存储帐户 (ABFS) 中。 只要 Flink Pod 可以访问该值,此值就可以更改为所需的任何路径。

最大并发检查点数

可以通过设置以下属性来限制并发检查点的最大数目:checkpoint.max-concurrent-checkpoints: <value>

<value> 替换为所需的并发检查点数。 例如,1 一次只允许一个检查点。

最大保留检查点数

可以通过设置以下属性来限制要保留的最大检查点数:state.checkpoints.num-retained: <value><value> 替换为所需的最大数量。 默认情况下,我们保留最多五个检查点。

Savepoint 存储路径

我们默认允许持久保存点,方法是将保存点存储在 abfs 存储(由用户配置)。 如果用户想要停止和以后使用特定保存点启动作业,则可以配置此位置。 state.checkpoints.dir:<path> <path> 替换为存储保存点的所需路径。 默认情况下,存储在用户配置的存储帐户中。 (我们支持 ABFS)。 只要 Flink Pod 可以访问该值,此值就可以更改为所需的任何路径。

作业管理器高可用性

在 AKS 上的 HDInsight 中,Flink 使用 Kubernetes 作为后端。 即使作业管理器因任何已知/未知问题而失败,Pod 也会在几秒钟内重启。 因此,即使作业因此问题而重启,作业也会从最新的检查点恢复。

常见问题解答

作业为何在两者之间失败。 即使作业突然失败,如果检查点持续发生,则默认情况下从最新检查点重启作业。

在两者之间更改作业策略? 在某些情况下,由于某些作业级别 bug,需要在生产环境中修改作业。 在此期间,用户可以停止作业,这会自动获取保存点并将其保存在保存点位置。

  1. 单击 savepoint 并等待 savepoint 完成。

    显示保存点选项的屏幕截图。

  2. 保存点完成后,单击“启动”,将显示“启动作业”选项卡。 从下拉列表中选择保存点名称。 根据需要编辑任何配置。 然后单击“确定”。

    显示如何启动作业的屏幕截图。

由于保存点在作业中提供,因此 Flink 知道从何处开始处理数据。

参考