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

请教一下,flink on yarn模式下,怎么对job作业进行指标监控?

请教一下,flink on yarn模式下,怎么对job作业进行指标监控?

展开
收起
真的很搞笑 2024-01-04 12:21:58 294 0
3 条回答
写回答
取消 提交回答
  • 在Flink on Yarn模式下,对job作业进行指标监控的方式有很多。首先,可以使用Flink Metrics来对各项性能指标如全链路吞吐、全链路时延、吞吐时延等进行监控和调优。Flink支持多种汇报监控指标(metrics)的reporter,包括JMX、SLF4J、InfluxDB、Prometheus等。

    特别是,如果使用Prometheus+Grafana进行监控,可以实时查看作业运行状态,这对于保证实时作业7 x 24小时运行至关重要。此外,在Per-Job模式中,每个Flink job任务都会启动一个对应的Flink集群,基于Yarn提交后会在Yarn中同时运行多个实时Flink任务。

    另外,对于Yarn的任务,其有优先级,可以根据优先级运行作业。基于Yarn调度系统,能够自动化地处理各个角色的Failover (容错)。JobManager进程和TaskManager进程都由Yarn NodeManager监控。如果JobManager进程异常退出,则Yarn ResourceManager会重新调度JobManager到其他机器。如果TaskManager进程异常退出,JobManager会收到消息并重新向Yarn ResourceManager申请资源,重新启动TaskManager。通过这种方式也可以更好地监控和优化job作业的性能。

    2024-01-05 16:10:39
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在Flink on Yarn模式下,对job作业进行指标监控可以通过JMX(Java Management Extensions)来实现。首先,需要确保你的Flink应用程序在启动时开启了JMX端口。然后,你可以使用JMX客户端工具(如jconsole或jvisualvm)连接到运行中的Flink应用程序,以获取关于作业延迟、吞吐量等性能指标的详细信息。

    Flink on Yarn有两种运行模式:Session-Cluster和Per-Job-Cluster模式。在这两种模式下,你都可以通过上述方法进行指标监控。具体的操作步骤如下:

    1. 打开你的JMX客户端工具(例如jconsole)。
    2. 在JMX客户端工具中,输入Flink应用程序的JMX端口号以及主类名(即org.apache.flink.runtime.jobmaster.JobMaster)。
    3. 连接成功后,你将能够看到Flink应用程序的各种MBeans,通过这些MBeans你可以查看和监控作业的各项性能指标。

    需要注意的是,如果你的作业日志量非常大,可能需要采取一些特殊措施来查看和定位问题,因为在这种模式下,程序运行的日志会分散存储在不同的DN上。此外,为了确保Flink应用程序在Yarn集群上正常运行,你可能还需要检查和调整一些Yarn的配置参数,例如虚拟内存检查设置。

    2024-01-04 16:36:06
    赞同 展开评论 打赏
  • 这些指标flink 不是自带 吐出来了吗,你配置吐出到promthus pushgateway 就好了 ,此回答整理自钉群“【①群】Apache Flink China社区”

    2024-01-04 13:05:53
    赞同 展开评论 打赏

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

相关产品

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

    更多
    深度学习+大数据 TensorFlow on Yarn 立即下载
    Docker on Yarn 微服务实践 立即下载
    深度学习+大数据-TensorFlow on Yarn 立即下载