Flink Kubernetes HA(高可用)实战原理、前置条件、配置项与数据保留机制
1. Kubernetes HA 的核心思路Kubernetes HA 服务承担 Flink HA 的“协调部分”典型职责包括Leader election选出唯一 Leader JobManagerService discovery让组件找到当前 Leader轻量一致性状态存储用 Kubernetes 资源典型是 ConfigMap保存协调信息与指针同时要注意一点和 ZooKeeper HA 一样Flink 的 JobManager 元数据不会直接都塞进 Kubernetes 里而是写入high-availability.storageDir指向的文件系统目录Kubernetes 中只保存指针与协调信息。这能避免把大量数据压到 apiserver/etcd 上。2. 前置条件Prerequisites要启用 Flink Kubernetes HA需要满足Kubernetes 版本 1.9运行 Flink 的 ServiceAccount 具备对 ConfigMaps 的权限create / edit / delete通常这意味着你需要在目标 namespace 里配置 RBACRole RoleBinding或 ClusterRole/ClusterRoleBinding视你的安全策略而定。2.1 一个最小可用的 RBAC 示例namespace 级下面示例只授予 ConfigMap 的必要权限你可以按实际再收敛资源范围apiVersion:v1kind:ServiceAccountmetadata:name:flink-sanamespace:flink---apiVersion:rbac.authorization.k8s.io/v1kind:Rolemetadata:name:flink-ha-rolenamespace:flinkrules:-apiGroups:[]resources:[configmaps]verbs:[get,list,watch,create,update,patch,delete]---apiVersion:rbac.authorization.k8s.io/v1kind:RoleBindingmetadata:name:flink-ha-rbnamespace:flinksubjects:-kind:ServiceAccountname:flink-sanamespace:flinkroleRef:kind:Rolename:flink-ha-roleapiGroup:rbac.authorization.k8s.io如果你用的是 Flink 原生 K8s 集成或 Helm Chart通常也会有对应的 SA/RBAC 模板可以在此基础上确认是否包含 ConfigMaps 相关权限。3. 必配配置项启动 Kubernetes HA 集群的最小集合在flink-conf.yaml或等效配置注入方式里至少要配置以下三项3.1 high-availability.type必配high-availability.type:kubernetes3.2 high-availability.storageDir必配high-availability.storageDir:s3://flink/recovery这是最关键的持久化目录保存 JobManager 故障恢复所需的元数据。实际生产中你应放在高可靠的远端存储上HDFShdfs:///flink/recovery对象存储S3 / OSS / GCS / ABFS 等注意对应 FileSystem 插件要按 plugins 方式安装并能访问凭证3.3 kubernetes.cluster-id必配kubernetes.cluster-id:cluster1337它用于标识 Flink 集群非常重要。在 K8s HA 模式下Flink 会使用这个 cluster-id 作为关联资源命名/选择器的一部分用来区分不同 Flink 集群的 HA 协调数据。4. 示例配置片段可直接用kubernetes.cluster-id:cluster-idhigh-availability.type:kuberneteshigh-availability.storageDir:hdfs:///flink/recovery你也可以把 storageDir 放对象存储但务必确认已安装对应 FS 插件到plugins/fs-plugin/凭证与 endpoint 配置在正确的位置插件隔离下credential provider 也要放进同插件目录5. HA 数据清理与“删 Deployment 仍可恢复作业”的机制Kubernetes HA 模式最实用的一点是你可以通过删除 Deployment 来重启集群同时保留 HA 数据从而让作业自动恢复。文档描述的行为是执行kubectl delete deployment cluster-id删除 Flink 集群部署Flink 集群相关资源会被删除例如JobManager DeploymentTaskManager PodsServicesFlink conf ConfigMap但 HA 相关的 ConfigMaps 会被保留因为它们不设置 owner reference不被级联删除当你重新启动集群同一个kubernetes.cluster-id同一个high-availability.storageDir时之前运行的作业会被恢复并从最近一次成功的 checkpoint 继续重启这也是生产上常见的“滚动重启/重建集群但不丢作业进度”的基础能力。6. 生产实践建议6.1 storageDir 一定要可靠且可持续访问K8s HA 的协调信息在 ConfigMap但真正的恢复元数据在 storageDir。storageDir 不可用会导致JM 接管后无法恢复作业元数据作业无法从最近 checkpoint 重启6.2 cluster-id 必须稳定且唯一同一集群重启恢复cluster-id 必须保持不变同一 namespace 多个 Flink 集群并存cluster-id 必须不同否则 HA 数据会串6.3 RBAC 权限要“够用但不过大”最低要能操作 ConfigMaps含 create/update/delete。如果权限不足常见症状是HA 初始化失败无法选主或无法更新领导信息JobManager 反复重启6.4 先验证“HA 可恢复”再上生产建议在预发做一次演练开启 checkpoint 并确保有成功 checkpointkubectl delete deployment cluster-id或模拟 JM Pod 异常重新部署同 cluster-id验证作业从最新 checkpoint 恢复而非从头开始

相关新闻

NetExec 全模块使用手册

NetExec 全模块使用手册

NetExec(简称 nxc,前身为 CrackMapExec)是一款功能强大的内网渗透测试与安全审计工具,主要用于针对 Windows 环境(Active Directory 域)进行服务枚举、凭证测试、漏洞利用、后渗透等操作。它支持多种协议&a…

2026/7/3 2:21:29 阅读更多 →
基于BiLSTM双向长短期记忆神经网络的轴承剩余寿命预测MATLAB实现

基于BiLSTM双向长短期记忆神经网络的轴承剩余寿命预测MATLAB实现

一、研究背景 该代码面向工业设备预测性维护领域,特别是旋转机械(如轴承)的剩余使用寿命预测。通过监测轴承振动信号提取特征,利用深度学习模型对轴承退化过程建模,实现早期故障预警与寿命评估。二、主要功能 数据加载…

2026/5/17 3:13:27 阅读更多 →
MindMap部署

MindMap部署

简介 MindMap 是一款在线 Xmind 使用工具(在线试用:https://wanglin2.github.io/mind-map/#/,GitHub 地址:https://github.com/wanglin2/mind-map#),如果你的系统需要,可以在本地部署&#xff…

2026/7/4 12:46:41 阅读更多 →

最新新闻

【无人机动态避障】基于金豺优化算法GJO融合动态窗口法DWA的无人机三维动态避障方法研究MATLAB代码

【无人机动态避障】基于金豺优化算法GJO融合动态窗口法DWA的无人机三维动态避障方法研究MATLAB代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、算法改进、程序设计科研仿真。 🍎完整代码获取 定制创新 论文复现私信 🍊个人信条:做科研,博学之、审问之、慎思之、明辨…

2026/7/5 1:30:17 阅读更多 →
Anthropic Fable 5 Cyber Jailbreak Severity:AI越狱统一评级体系深度解析

Anthropic Fable 5 Cyber Jailbreak Severity:AI越狱统一评级体系深度解析

引言:AI安全的"CVSS时刻" 2026年7月3日,Anthropic正式发布了**Cyber Jailbreak Severity(CJS)**评级体系——这是全球首个针对AI模型"越狱"行为严重程度的标准化评估框架。同一天,Fable 5在经历18天出口管制后重新上线,搭载了一套全新的多层级安全防…

2026/7/5 1:30:17 阅读更多 →
AI 压测数据回放:让模型读报告之前先校准口径

AI 压测数据回放:让模型读报告之前先校准口径

AI 压测数据回放:让模型读报告之前先校准口径 一、压测报告不能直接丢给模型 AI 可以帮助分析压测结果,但前提是输入数据口径清楚。很多压测报告里混着预热阶段、限流阶段、错误重试、下游故障和业务噪声。如果直接让模型总结,很容易得到一段…

2026/7/5 1:22:14 阅读更多 →
AI工具链选型:GitHub Copilot与Cursor、Codeium企业开发场景实测对比

AI工具链选型:GitHub Copilot与Cursor、Codeium企业开发场景实测对比

AI工具链选型:GitHub Copilot与Cursor、Codeium企业开发场景实测对比 一、评测体系设计与方法论 AI编码助手已成为开发效率的关键杠杆。本次评测聚焦三项主流工具的实际表现。从四个维度建立可复现的量化评测框架。 %%{init: {theme: base}}%% radartitle AI编码助手…

2026/7/5 1:20:14 阅读更多 →
PyTorch 数据加载瓶颈:GPU 空等时先看 DataLoader

PyTorch 数据加载瓶颈:GPU 空等时先看 DataLoader

PyTorch 数据加载瓶颈:GPU 空等时先看 DataLoader 一、训练慢不一定是模型慢 PyTorch 训练时,很多人看到速度慢就先改模型、调 batch size、换显卡。但如果 GPU 利用率忽高忽低,可能瓶颈根本不在模型,而在数据加载。图片解码、文本…

2026/7/5 1:20:14 阅读更多 →
群晖DSM 7.2.2视频管理终极解决方案:免费恢复Video Station完整功能

群晖DSM 7.2.2视频管理终极解决方案:免费恢复Video Station完整功能

群晖DSM 7.2.2视频管理终极解决方案:免费恢复Video Station完整功能 【免费下载链接】Video_Station_for_DSM_722 Script to install Video Station in DSM 7.2.2 and DSM 7.3 项目地址: https://gitcode.com/gh_mirrors/vi/Video_Station_for_DSM_722 你是否…

2026/7/5 1:20:14 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻