Flink Web UI 介绍

一、提交flink任务到yarn。

./flink run -m yarn-cluster -yn 1 -p 2 -yjm 1024 -ytm 1024 -ynm FlinkOnYarnSession-MemberLogInfoProducer -d -c com.igg.flink.tool.member.rabbitmq.producer.MqMemberProducer /home/test_gjm/igg-flink-tool/igg-flink-tool-1.0.0-SNAPSHOT.jar

说明:

  • -m yarn-cluster 在yarn上运行独立的flink job
  • -yn 申请的TaskManager数量,目前已废弃,参数不生效
  • -p 并发数,即槽数
  • -yjm 申请的JobManager的内存大小
  • -ytm 申请的每个TaskManager的内存大小
  • -ynm yarn application 显示的名称
  • -d 使用分离模式,后续取消任务,需要使用yarn application
  • -c 类名

二、通过Yarn UI 进入 Flink UI

说明:

TaskManager=1,Task Slots=2,分别与任务参数一一对应。Available Task Slots=0,因在flink-conf.yaml中,设置了

taskmanager.numberOfTaskSlots: 2

所以,可用槽数为0。

三、Task Manager

可以看到,TM运行在230机器以及机器的一些配置信息。登陆230机器,查看TM进程。

四、Job Manager。

可以看到,TM运行在229机器以及flink一些配置信息。登陆230机器,查看JM进程。

其次,还可以切换到logs和stdout,分别查看日志文件数据 和 控制台输出。

说明:

  • 当日志输出很多的时候,打开这里的页面会很慢,甚至卡死。所以线上的时候,一定不要输出一些无关紧要的日志。

如果非要看卡死的日志,可以到yarn配置的临时日志目录去查看。

<property>
    <name>yarn.nodemanager.log-dirs</name>
    <value>/home/hadoop/yarn_dir/log</value>
    <description>
    	Comma-separated list of paths on the local filesystem where logs are written. Multiple paths help spread disk i/o.
    </description>
</property>

tail -f taskmanager.log

五、Submit new Job。

对于独立模式和yarn-session模式,可以通过此ui操作来提交任务。对于独立job的flink只能通过命令。

六、checkpoint 的查看。

通过观察 checkpoint 记录,我们可以观察任务的运行情况。如果 checkpoint status 失败、或者时间较长,等等,说明程序存在

调整的地方,如 checkpoint 的数据过大,则可使用增量的方式,或者代码需要进行调优处理。如 checkpoint 时间较长,可改用

memory/rockdb 等存储。

七、背压情况。

当DAG的某个过程的背压状态为 low 或者 high 时,则说明下游的处理速度不及上游的输出速度。也就是说 下游的处理是整个任务的瓶颈所在,需要进行优化处理。

八、Task Metrics 的使用

可以根据需要,对DAG的某个过程的输入和输出情况进行观察,便于发现和排查问题。

一起学习

### Flink Web UI 功能概述 Flink 提供了一个基于Web的用户界面 (Web UI),用于监控和管理正在运行的任务以及集群的状态。此界面提供了丰富的信息展示,帮助用户更好地理解作业执行情况并进行必要的调试工作[^1]。 - **任务概览**:显示当前所有提交给集群处理的工作列表及其状态。 - **性能指标**:提供关于内存消耗、CPU利用率等资源使用的统计数据。 - **日志查看器**:允许访问各个节点上的标准输出/错误流记录。 - **拓扑视图**:以图形化方式呈现数据流转路径,便于追踪问题所在位置。 - **配置详情**:可以查阅已部署实例的各项设定参数值。 对于具体的功能模块而言: #### 作业仪表板 展示了整个应用程序生命周期内的各项活动统计图表;支持按需筛选特定时间段的数据来分析趋势变化。 #### Checkpoint历史记录 能够跟踪保存点创建过程中的进度条更新频率及时长分布状况,有助于评估恢复机制的有效性和优化存储策略。 ```python # Python示例代码并非直接关联于Flink Web UI操作, 此处仅作为说明用途 import requests def get_flink_job_overview(flink_web_ui_url): response = requests.get(f"{flink_web_ui_url}/jobs/overview") return response.json() ``` #### 配置调整建议 当涉及到YARN环境下的Flink应用时,为了确保NUMA架构的优势得到充分利用,应当考虑如下设置项[^3]: - `yarn.nodemanager.resource.cpu-vcores`:指定每个NodeManager可用的核心数。 - `yarn.nodemanager.resource.memory-mb` :定义每台机器上可分配的最大内存量。 - `yarn.nodemanager.vmem-pmem-ratio`: 控制虚拟内存与物理内存之间的比例关系,默认情况下不启用此项控制逻辑。 这些参数可以在YARN的全局配置文件中找到,并且可以通过修改对应的XML标签完成相应数值的更改。值得注意的是,在某些场景下可能还需要额外关注NUMA感知调度特性(`yarn.nodemanager.numa-awareness.enabled`) 的启停状态,这将影响到容器启动过程中对底层硬件特性的利用效率。 最后,任何针对核心组件配置文档所做的改动都应同步至集群内部其余成员,并适时触发服务重启以便使新规则生效[^4]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

magic_kid_2010

你的支持将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值