Unverified Commit 12f7e2ef authored by 第一片心意's avatar 第一片心意 Committed by GitHub

[Document] [docs] Add flink metrics monitor and optimize deploy document (#1114)

* flink version adapter.

* flink task monitor plan.

* Adjust sidebar_position and id errors
parent 4aed0227
......@@ -240,10 +240,17 @@ dlink-admin.jar --主程序包
#### flink 版本适配
lib 目录下默认的 **dlink-client** 对应的 flink 版本可能和你想要使用的 flink 版本不一致,需要进入到平台的 lib 目录下查看具体的 **dlink-client** 对应的 flink 版本,
如果不一致,则需要删除 lib 目录下的 **dlink-client** 包,然后从 extends 目录下找到合适的包,拷贝到 lib 目录下。
**dlink-catalog-mysql****dlink-client****dlink-app**
比如 lib 目录下的 **dlink-client-1.14-0.6.7.jar** ,表示使用的 flink 版本为 1.14.x ,如果你在 plugins 目录下上传的 flink 用到的 jar 包的版本不是 1.14.x ,就需要更换 **dlink-client** 包。
**lib** 目录下默认的上面三个依赖对应的 flink 版本可能和你想要使用的 flink 版本不一致,需要进入到平台的 **lib** 目录下查看具体的上面三个依赖对应的 flink 版本,
如果不一致,则需要删除 **lib** 目录下的对应的上面三个依赖包,然后从 **extends****jar** 目录下找到合适的包,拷贝到 **lib** 目录下。
比如 **lib** 目录下的 **dlink-client-1.14-0.6.7.jar** ,表示使用的 flink 版本为 1.14.x ,
如果你在 **plugins** 目录下上传的 flink 用到的 jar 包的版本不是 1.14.x ,就需要更换 **dlink-client** 包。
### flink 任务监控(可选)
参考[flink 任务运行监控](../extend/function_expansion/flinktaskmonitor)
### 启动 Dinky
......
---
sidebar_position: 6
id: flinktaskmonitor
title: flink 任务运行监控
---
## 说明
本文章主要说明对运行过程中的 flink 任务的监控,采用 **prometheus+pushgateway+grafana** 方式,为非平台内部监控方案。
## 前提
公司的服务器已经安装了 prometheus 和 pushgateway 网关服务,如果为安装,需要运维人员进行安装,或是自行安装。
## 介绍
Flink 提供的 Metrics 可以在 Flink 内部收集一些指标,通过这些指标让开发人员更好地理解作业或集群的状态。
由于集群运行后很难发现内部的实际状况,跑得慢或快,是否异常等,开发人员无法实时查看所有的 Task 日志。 Metrics 可以很好的帮助开发人员了解作业的当前状况。
Flink 官方支持 Prometheus,并且提供了对接 Prometheus 的 jar 包,很方便就可以集成。
在 FLINK_HEME/plugins/metrics-prometheus 目录下可以找到 **flink-metrics-prometheus** 包。
flink 的 plugin 目录下的 jar 包无需拷贝到 lib 目录下,可在运行时被 flink 加载。
## 配置步骤
### 修改Flink配置
修改 **flink-conf.yaml** 文件,该文件和集群配置有关,如果是 Standalone,Yarn Session 和 Kubernetes Session 模式,则需要修改启动本地集群或 session 集群时的 flink 目录下的 flink-conf.yaml 文件。
如果是 Yarn Per-job、Yarn Application 和 Kubernetes Application 模式,则需要修改创建集群时指定的 flink 配置目录下的 flink-conf.yaml 文件,
同时需要将上面提到的 **flink-metrics-prometheus** 上传到平台的 **plugins** 目录和 **hdfs** 上的 **flink lib** 目录下。
```shell
vim flink-conf.yaml
```
添加如下配置:
```yaml
##### 与 Prometheus 集成配置 #####
metrics.reporter.promgateway.class: org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter
# PushGateway 的主机名与端口号
metrics.reporter.promgateway.host: node01
metrics.reporter.promgateway.port: 9091
# Flink metric 在前端展示的标签(前缀)与随机后缀
metrics.reporter.promgateway.jobName: flink-application
metrics.reporter.promgateway.randomJobNameSuffix: true
metrics.reporter.promgateway.deleteOnShutdown: false
metrics.reporter.promgateway.interval: 30 SECONDS
```
之后启动 flink 任务,然后就可以通过 grafana 来查询 prometheus 中网关的数据了。
### grafana 监控方案
https://grafana.com/search/?term=flink&type=dashboard
通过上面网站搜索 flink ,我们就可以找到其他用户共享的他们使用的 flink 任务监控方案,从结果中找到自己喜欢的监控方案,下载对应的 json 文件后,上传到 grafana 即可实现对任务的监控。
\ No newline at end of file
......@@ -9,6 +9,13 @@ title: 扩展 Flink 版本
## 扩展其他版本的 Flink
Flink 的版本取决于 lib 下的 dlink-client-1.13.jar。当前版本默认为 Flink 1.13.6 API。向其他版本的集群提交任务可能存在问题,已实现 1.11、1.12、1.13、 1.14、1.15,切换版本时只需要将对应依赖在lib下进行替换,然后重启即可。
**dlink-catalog-mysql****dlink-client****dlink-app**
**lib** 目录下默认的上面三个依赖对应的 flink 版本可能和你想要使用的 flink 版本不一致,需要进入到平台的 **lib** 目录下查看具体的上面三个依赖对应的 flink 版本,
如果不一致,则需要删除 **lib** 目录下的对应的上面三个依赖包,然后从 **extends****jar** 目录下找到合适的包,拷贝到 **lib** 目录下。
比如 **lib** 目录下的 **dlink-client-1.14-0.6.7.jar** ,表示使用的 flink 版本为 1.14.x ,
如果你在 **plugins** 目录下上传的 flink 用到的 jar 包的版本不是 1.14.x ,就需要更换 **dlink-client** 包。
切换版本时需要同时更新 plugins 下的 Flink 依赖。
\ No newline at end of file
......@@ -240,10 +240,17 @@ dlink-admin.jar --主程序包
#### flink 版本适配
lib 目录下默认的 **dlink-client** 对应的 flink 版本可能和你想要使用的 flink 版本不一致,需要进入到平台的 lib 目录下查看具体的 **dlink-client** 对应的 flink 版本,
如果不一致,则需要删除 lib 目录下的 **dlink-client** 包,然后从 extends 目录下找到合适的包,拷贝到 lib 目录下。
**dlink-catalog-mysql****dlink-client****dlink-app**
比如 lib 目录下的 **dlink-client-1.14-0.6.7.jar** ,表示使用的 flink 版本为 1.14.x ,如果你在 plugins 目录下上传的 flink 用到的 jar 包的版本不是 1.14.x ,就需要更换 **dlink-client** 包。
**lib** 目录下默认的上面三个依赖对应的 flink 版本可能和你想要使用的 flink 版本不一致,需要进入到平台的 **lib** 目录下查看具体的上面三个依赖对应的 flink 版本,
如果不一致,则需要删除 **lib** 目录下的对应的上面三个依赖包,然后从 **extends****jar** 目录下找到合适的包,拷贝到 **lib** 目录下。
比如 **lib** 目录下的 **dlink-client-1.14-0.6.7.jar** ,表示使用的 flink 版本为 1.14.x ,
如果你在 **plugins** 目录下上传的 flink 用到的 jar 包的版本不是 1.14.x ,就需要更换 **dlink-client** 包。
### flink 任务监控(可选)
参考[flink 任务运行监控](../extend/function_expansion/flinktaskmonitor)
### 启动 Dinky
......
---
sidebar_position: 6
id: flinktaskmonitor
title: flink 任务运行监控
---
## 说明
本文章主要说明对运行过程中的 flink 任务的监控,采用 **prometheus+pushgateway+grafana** 方式,为非平台内部监控方案。
## 前提
公司的服务器已经安装了 prometheus 和 pushgateway 网关服务,如果为安装,需要运维人员进行安装,或是自行安装。
## 介绍
Flink 提供的 Metrics 可以在 Flink 内部收集一些指标,通过这些指标让开发人员更好地理解作业或集群的状态。
由于集群运行后很难发现内部的实际状况,跑得慢或快,是否异常等,开发人员无法实时查看所有的 Task 日志。 Metrics 可以很好的帮助开发人员了解作业的当前状况。
Flink 官方支持 Prometheus,并且提供了对接 Prometheus 的 jar 包,很方便就可以集成。
在 FLINK_HEME/plugins/metrics-prometheus 目录下可以找到 **flink-metrics-prometheus** 包。
## 配置步骤
### 修改Flink配置
修改 **flink-conf.yaml** 文件,该文件和集群配置有关,如果是 Standalone,Yarn Session 和 Kubernetes Session 模式,则需要修改启动本地集群或 session 集群时的 flink 目录下的 flink-conf.yaml 文件。
如果是 Yarn Per-job、Yarn Application 和 Kubernetes Application 模式,则需要修改创建集群时指定的 flink 配置目录下的 flink-conf.yaml 文件,
同时需要将上面提到的 **flink-metrics-prometheus** 上传到平台的 **plugins** 目录和 **hdfs** 上的 **flink lib** 目录下。
```shell
vim flink-conf.yaml
```
添加如下配置:
```yaml
##### 与 Prometheus 集成配置 #####
metrics.reporter.promgateway.class: org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter
# PushGateway 的主机名与端口号
metrics.reporter.promgateway.host: node01
metrics.reporter.promgateway.port: 9091
# Flink metric 在前端展示的标签(前缀)与随机后缀
metrics.reporter.promgateway.jobName: flink-application
metrics.reporter.promgateway.randomJobNameSuffix: true
metrics.reporter.promgateway.deleteOnShutdown: false
metrics.reporter.promgateway.interval: 30 SECONDS
```
之后启动 flink 任务,然后就可以通过 grafana 来查询 prometheus 中网关的数据了。
### grafana 监控方案
https://grafana.com/search/?term=flink&type=dashboard
通过上面网站搜索 flink ,我们就可以找到其他用户共享的他们使用的 flink 任务监控方案,从结果中找到自己喜欢的监控方案,下载对应的 json 文件后,上传到 grafana 即可实现对任务的监控。
\ No newline at end of file
......@@ -9,6 +9,13 @@ title: 扩展 Flink 版本
## 扩展其他版本的 Flink
Flink 的版本取决于 lib 下的 dlink-client-1.13.jar。当前版本默认为 Flink 1.13.3 API。向其他版本的集群提交任务可能存在问题,已实现 1.11、1.12、1.13, 1.14,切换版本时只需要将对应依赖在lib下进行替换,然后重启即可。
**dlink-catalog-mysql****dlink-client****dlink-app**
**lib** 目录下默认的上面三个依赖对应的 flink 版本可能和你想要使用的 flink 版本不一致,需要进入到平台的 **lib** 目录下查看具体的上面三个依赖对应的 flink 版本,
如果不一致,则需要删除 **lib** 目录下的对应的上面三个依赖包,然后从 **extends****jar** 目录下找到合适的包,拷贝到 **lib** 目录下。
比如 **lib** 目录下的 **dlink-client-1.14-0.6.7.jar** ,表示使用的 flink 版本为 1.14.x ,
如果你在 **plugins** 目录下上传的 flink 用到的 jar 包的版本不是 1.14.x ,就需要更换 **dlink-client** 包。
切换版本时需要同时更新 plugins 下的 Flink 依赖。
\ No newline at end of file
---
sidebar_position: 17
sidebar_position: 18
id: cross_join
title: cross join
---
......
---
sidebar_position: 13
sidebar_position: 14
id: dataspherestudio
title: DataSphere Studio
---
......
---
sidebar_position: 12
sidebar_position: 13
id: dolphinscheduler
title: Dolphinscheduler
---
......
---
sidebar_position: 9
sidebar_position: 10
id: hudi
title: Hudi
---
......
---
sidebar_position: 10
sidebar_position: 11
id: iceberg
title: Iceberg
---
......
---
sidebar_position: 14
sidebar_position: 15
id: kafka_to_hive
title: kafka写入hive
---
......
---
sidebar_position: 13
sidebar_position: 19
id: kudu
title: kudu
---
......
---
sidebar_position: 15
sidebar_position: 16
id: lookup_join
title: lookup join
---
......
---
sidebar_position: 8
id: doris
sidebar_position: 9
id: redis
title: Redis
---
......
---
sidebar_position: 16
sidebar_position: 17
id: temporal_join
title: temporal join
---
......
---
sidebar_position: 11
sidebar_position: 12
id: udf
title: UDF
---
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment