Flink Standalone 方案中解决挂机问题

Standalone中 可以配置 HighAvailability(HA)部署和配置

首先了解

Flink 实际运行时包括两类进程:

JobManager(又称为 JobMaster):协调 Task 的分布式执行,包括调度 Task、协调创 Checkpoint 以及当 Job failover 时协调各个 Task 从 Checkpoint 恢复等。

TaskManager(又称为 Worker):执行 Dataflow 中的 Tasks,包括内存 Buffer 的分配、Data Stream 的传递等。

这是很多公司开发在部署使用中,没有理解透内部导致,一旦挂机,特别是standlone下,出现无法同步,配置全量同步,数据不一致性产生,启动节点不正确倒是需要用备份方式切换清洗。

解决方案

JobManager 是整个系统中最可能导致系统不可用的角色。如果一个 TaskManager 挂了,在资源足够的情况下,只需要把相关 Task 调度到其他空闲 TaskSlot 上,然后 Job 从 Checkpoint 中恢复即可。而如果当前集群中只配置了一个 JobManager,则一旦 JobManager 挂了,就必须等待这个 JobManager 重新恢复,如果恢复时间过长,就可能导致整个 Job 失败。

因此如果在生产业务使用 Standalone 模式,则需要部署配置 HighAvailability,这样同时可以有多个 JobManager 待命,从而使得 JobManager 能够持续服务。

注意:Flink standalone HA 模式,需要确保基于 Flink Release-1.6.1 及以上版本,因为这里社区有个 bug 会导致这个模式下主 JobManager 不能正常工作。

解决方案2:

相关推荐
nbsaas-boot2 小时前
收银系统优惠功能架构:可扩展设计指南(含可扩展性思路与落地细节)
java·大数据·运维
lingling0092 小时前
实验记录安全存储:生物医药科研的数字化基石
大数据·人工智能
优秘智能UMI3 小时前
私有化大模型架构解决方案构建指南
大数据·人工智能·深度学习·信息可视化·aigc
TDengine (老段)13 小时前
TDengine 转化类函数 TO_CHAR 用户手册
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
黄雪超13 小时前
Kafka——多线程开发消费者实例
大数据·分布式·kafka
ManageEngineITSM15 小时前
从混乱到秩序:IT服务管理如何重塑企业运营效率
大数据·人工智能·程序人生·职场和发展·itsm
青云交16 小时前
Java 大视界 -- 基于 Java 的大数据分布式存储在工业互联网数据管理与边缘计算协同中的创新实践(364)
java·大数据·边缘计算·工业互联网·分布式存储·paxos·数据协同
数据爬坡ing16 小时前
软件工程之可行性研究:从理论到实践的全面解析
大数据·流程图·软件工程·可用性测试
晴天彩虹雨17 小时前
统一调度与编排:构建自动化数据驱动平台
大数据·运维·数据仓库·自动化·big data·etl