开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

请教个问题,flink1.18跑在k8s,任务提交上去,几十秒自动cancel了,了解吗?

请教个问题,flink1.18跑在k8s,任务提交上去,几十秒自动cancel了,flink1.13版本没啥问题,有大佬了解吗?

展开
收起
真的很搞笑 2023-11-21 08:04:49 90 0
2 条回答
写回答
取消 提交回答
  • 对于Flink 1.18在K8S上运行自动取消任务的问题,可能的原因有很多。这可能与Flink版本更新后的新特性、Kubernetes集群配置、资源分配等因素有关。原生模式在Flink 1.9以上版本内置了K8S的客户端,可以向K8S申请计算资源,集群资源得到了更高效的利用。在K8S集群上使用Session模式提交Flink作业的过程会分为三个阶段:首先在K8S上启动Flink Session集群;其次通过Flink Client提交作业;最后进行作业调整。因此,你可能需要检查这些环节是否存在配置问题或者网络问题。

    此外,关于Prometheus在Flink作业级别上的性能问题,可能是因为作业metrics变化非常频繁,导致Prometheus承受较大压力。虽然这个问题与你的问题不直接相关,但是解决它可能有助于找出Flink任务自动取消的根本原因。

    建议你首先查看Flink和K8S的日志,分析是否有异常信息。然后,检查Flink的任务提交流程是否正确,以及K8S集群的资源是否充足。如果问题仍然存在,可以尝试升级或降级Flink版本,以确定问题是否与新版本的特性有关。

    2023-11-21 15:34:41
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    任务提交到 K8s 并且几十秒后自动 cancel,可能的原因有很多,包括但不限于:

    1. 资源不足:任务可能由于缺乏足够的资源而被取消。请检查 Kubernetes 集群上的资源限制和使用情况,尤其是内存和 CPU。可以监控 Kubernetes 控制面板来确定资源是否足够。

    2. 超时设置不当:Kubernetes 组件默认有一个启动容器超时时间(例如 container-start-limit-duration),如果超过了这段时间则任务会被自动取消。您可能需要适当调整 Kubernetes 集群中的相应参数。

    3. Job Manager 长期空闲:Kubernetes 可能会认为长期空闲的 Job Manager 不需要再使用资源而终止它。请检查 Kubernetes 的 pod 删除策略设置是否合理。

    4. 作业冲突:如果多个任务同时尝试运行同一个名称的任务,可能导致现有任务被强行取消。请确保任务名称唯一性。

    5. Kubernetes 资源使用权限不够:请确保部署 Flink 集群的账号具有足够的 Kubernetes 资源使用权限。

    6. Kubernetes 集群不稳定:请检查 Kubernetes 集群是否正常运行。

    2023-11-21 14:19:22
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    ACK 云原生弹性方案—云原生时代的加速器 立即下载
    ACK集群类型选择最佳实践 立即下载
    企业运维之云原生和Kubernetes 实战 立即下载

    相关镜像