《Flink 两种自动扩缩容器之 tale》 笔记

《Flink 两种自动扩缩容器之 tale》

Netflix 目前运行两个 Flink 自动伸缩器,目标是整合为单一开源解决方案。他们最初构建了一个内部自动伸缩器来管理数千个 Flink 作业,该系统行之有效,但在处理复杂的多算子作业时存在局限。该自研系统依赖外部指标,这些指标可能不准确或无法捕捉作业内部的故障。Apache Flink 社区随后开发了一个更为先进的自动伸缩器,能够从作业内部进行推理。该自动伸缩器估算算子的真实处理速率,以确定每个顶点的最佳并行度。Netflix 正趋向于采用这一开源解决方案,因其能够伸缩有状态作业并支持细粒度配置。在 Netflix 部署该开源自动伸缩器需要重大适配工作,包括将其集成到现有的控制平面中。他们还对 Flink 运行时进行了修改,以改进指标收集,并处理特定作业结构,如前向连接子图和 sink 限制。通过采用开源自动伸缩器,Netflix 实现了显著的成本节约和资源利用率提升。经验教训强调,指标质量至关重要,可调节的默认值有益,且在扩展之前先采用现有解决方案是一项明智的策略。他们计划完全迁移至基于开源的自动伸缩器,以简化运营流程。
CdXz5zHNQW_HJCpS7bDND.png