Commit a4a8eb83 authored by walkhan's avatar walkhan

add cluster_manager metadata jar_manage document and modify

parent c03d16bd
......@@ -13,32 +13,37 @@
- 参考手册
- FlinkSQL Studio
- [Studio介绍](/zh-CN/administrator-guide/Studio/studio_introduce.md)
- 作业和目录创建
- 作业管理
- 作业开发
- 作业配置
- 作业管理
- 会话管理
- 作业提交
- 注册中心
- 集群实例
- 集群配置
- [集群管理](/zh-CN/administrator-guide/registerCenter/cluster_manage.md)
- [数据源管理](/zh-CN/administrator-guide/registerCenter/datasource_manage.md)
- [告警管理](/zh-CN/administrator-guide/registerCenter/warning.md)
- jar管理
- [jar管理](/zh-CN/administrator-guide/registerCenter/jar_manager.md)
- 文档管理
- 元数据管理
- [元数据管理](/zh-CN/administrator-guide/metadata.md)
- [快速使用快捷键](/zh-CN/administrator-guide/Hotkey.md)
- 系统设置
- 用户管理
- Flink设置
- [用户管理](/zh-CN/administrator-guide/system_setting/user_management.md)
- [Flink设置](/zh-CN/administrator-guide/system_setting/Flink_Setting.md)
- 运维中心
- 生命周期管理
- 作业监控
- openapi
- 扩展
- 集成
- 其他
- [扩展Flink版本](/zh-CN/extend/flinkversion.md)
- [扩展连接器](/zh-CN/extend/connector.md)
- [扩展数据源](/zh-CN/extend/datasource.md)
- [FlinkSQL 编辑器自动补全函数](/zh-CN/extend/completion.md)
- 最佳实践
- [Yarn提交实践指南](/zh-CN/practice/yarnsubmit.md)
- [Dlink 核心概念及实现原理详解](/zh-CN/practice/principle.md)
- [AGGTABLE 表值聚合的实践](/zh-CN/practice/aggtable.md)
- 扩展
- 集成
- 集成指南
- [Flink-CDC集成](/zh-CN/extend/flinkcdc.md)
- [Flink-CDC-Kafka多源合并](/zh-CN/extend/Flink_CDC_kafka_Multi_source_merger.md)
- [hive集成](/zh-CN/extend/hive.md)
......@@ -49,12 +54,10 @@
- [Flink UDF集成](/zh-CN/extend/udf.md)
- [DolphinScheduler集成](/zh-CN/extend/dolphinscheduler.md)
- [DataSphereStudio集成](/zh-CN/extend/dataspherestudio.md)
- 其他
- [扩展Flink版本](/zh-CN/extend/flinkversion.md)
- [扩展连接器](/zh-CN/extend/connector.md)
- [扩展数据源](/zh-CN/extend/datasource.md)
- [FlinkSQL 编辑器自动补全函数](/zh-CN/extend/completion.md)
- 开发者指南
- [如何贡献](/zh-CN/developer-guide/how_contribute.md)
- [本地调试](/zh-CN/developer-guide/local_debug.md)
- [远程调试](/zh-CN/developer-guide/remote_debug.md)
- 常见问题
- [致谢](/zh-CN/others/thanks.md)
- [交流与贡献](/zh-CN/others/comminicate.md)
......
保存
```
Ctrl + s
```
校验
```
Alt + 2
```
美化
```
Alt + 3
```
搜索
```
Ctrl + F
```
替换
```
Ctrl + H
```
撤销
```
Ctrl + Z
```
重做
```
Ctrl + Y
```
注释
```
Ctrl + /
```
缩进
```
选中 + Tab
```
取消缩进
```
选中 + Shift + Tab
```
选中后续
```
Shift + Alt + Right
```
格式化
```
Shift + Alt + F
```
编辑多行
```
Ctrl + Shift + Up/Down
```
复制一行
```
Shift + Alt + Up/Down
```
删除一行
```
Ctrl + Shift + K
```
匹配下一个
```
Ctrl + F3
```
匹配上一个
```
Ctrl + Shift + F3
```
前往下一个高亮
```
F7
```
前往上一个高亮
```
Shift +F7
```
前面追加换行
```
Ctrl + Shift + End
```
追加换行
```
Ctrl + End
```
上下换位
```
Alt + Up/Down
```
折叠/展开
```
Ctrl + Shift + [/]
```
全屏
```
F2
```
关闭弹框及全屏
```
Esc
```
更多快捷键
```
F1
```
当用户查看或者使用数据源中的DDL或者DML,可通过元数据中心获取数据源中的相关DDL或者DML。目前元数据中心包含:
- **表信息**
- **字段信息**
- **SQL生成**
其中在SQL生成中又包括:
- **FlinkDDL语句**
- **SELECT语句**
- **SQLDDL语句**
首先进入FlinkSQL Studio中的元数据,选择已经配置好的数据源,会出现数据源对应的schema。
![进入元数据](http://www.aiwenmo.com/dinky/dev/docs/%E8%BF%9B%E5%85%A5%E5%85%83%E6%95%B0%E6%8D%AE.png)
![选择源数据](http://www.aiwenmo.com/dinky/dev/docs/%E9%80%89%E6%8B%A9%E6%BA%90%E6%95%B0%E6%8D%AE.png)
![schema信息](http://www.aiwenmo.com/dinky/dev/docs/schema%E4%BF%A1%E6%81%AF.png)
出现以上schema后,查看schema下的表,右键单击schema下的表即可看到表信息,字段信息及SQL生成。
![表信息](http://www.aiwenmo.com/dinky/dev/docs/%E8%A1%A8%E4%BF%A1%E6%81%AF.png)
![字段信息](http://www.aiwenmo.com/dinky/dev/docs/%E5%AD%97%E6%AE%B5%E4%BF%A1%E6%81%AF.png)
![SQL生成](http://www.aiwenmo.com/dinky/dev/docs/SQL%E7%94%9F%E6%88%90.png)
如何配置数据源请参考[数据源管理](/zh-CN/administrator-guide/registerCenter/datasource_manage.md)
当用户提交FlinkSQL作业时,首先要保证安装了Flink集群。Flink当前支持的集群模式包括:
- StandAlone集群
- Yarn集群
- Kubernetes集群
对于以上的三种集群而言,Dinky为用户提供了两种集群管理方式,一种是集群实例管理,一种是集群配置管理。
**需要说明的是:**
- StandAlone集群适用于既可以做为查询使用,又可以将作业异步提交到远程集群
- Yarn Session和Kubernetes Session适用于既可以做为查询使用,又可以将作业异步提交到远程集群
- Yarn Perjob,Yarn Application和Kubernetes Application适用于异步提交
## 集群实例管理
集群实例管理适用于StandAlone,Yarn Session和Kubernetes Session这三种类型配置。
### 集群配置
首先进入注册中心的集群管理中的集群实例管理,新建一个集群实例,点击新建,添加Flink集群,参数配置完成后,点击提交即可。
![实例新建](http://www.aiwenmo.com/dinky/dev/docs/%E5%AE%9E%E4%BE%8B%E6%96%B0%E5%BB%BA.png)
![实例配置提交](http://www.aiwenmo.com/dinky/dev/docs/%E5%AE%9E%E4%BE%8B%E9%85%8D%E7%BD%AE%E6%8F%90%E4%BA%A4.png)
![实例配置提交1](http://www.aiwenmo.com/dinky/dev/docs/%E5%AE%9E%E4%BE%8B%E9%85%8D%E7%BD%AE%E6%8F%90%E4%BA%A41.png)
**参数配置说明:**
- **名称:** 自定义(必填)
- **别名:** 自定义
- **类型:** 支持StandAlone,Yarn Session和Kubernetes Session三种类型
- **JobManager HA地址:** JobManager的RestAPI地址,当有多个RestAPI地址时。采用英文逗号隔开
- **注释:** 自定义
当集群实例配置完成后,点击心跳,会出现检测心跳
![心跳检查](http://www.aiwenmo.com/dinky/dev/docs/%E5%BF%83%E8%B7%B3%E6%A3%80%E6%9F%A5.png)
点击回收,会将过去的集群实例进行回收
![回收](http://www.aiwenmo.com/dinky/dev/docs/%E5%9B%9E%E6%94%B6.png)
### 集群实例编辑
当集群配置完成后,用户可以对集群实例做编辑修改。
首先进入注册中心集群实例管理,在列表中找到对应的集群实例,点击"编辑"后,编辑集群
![集群实例编辑](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E5%AE%9E%E4%BE%8B%E7%BC%96%E8%BE%91.png)
![编辑集群](http://www.aiwenmo.com/dinky/dev/docs/%E7%BC%96%E8%BE%91%E9%9B%86%E7%BE%A4.png)
### 集群实例删除
用户可以对所添加的集群实例进行删除。
首先进入注册中心中的集群实例管理,在列表中找到对应的集群实例,点击"删除"后,删除集群!
![集群实例删除](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E5%AE%9E%E4%BE%8B%E5%88%A0%E9%99%A4.png)
![集群删除](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E5%88%A0%E9%99%A4.png)
### 搜索
当用户集群实例配置完成后,配置的信息会显示在列表中,用户可以通过名称,别名,创建时间对配置的作业进行查找。
![搜索](http://www.aiwenmo.com/dinky/dev/docs/%E6%90%9C%E7%B4%A2.png)
## 集群配置管理
集群配置管理适用于Yarn Perjob,Yarn Application和Kubernetes Application这三种类型配置。
### 集群配置
首先进入注册中心的集群管理中的集群配置管理,点击"新建"后,可以创建集群配置,参数配置完成后,点击"测试"及"完成"即可。
![创建集群配置1](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%9B%E5%BB%BA%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE1.png)
![创建集群配置2](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%9B%E5%BB%BA%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE2.png)
**参数配置说明:**
- **类型:** 支持Flink on Yarn和Flink on Kubernetes
- **hadoop配置**
- **配置文件路径:** hadoop配置文件路径,指定配置文件路径(末尾无/),需要包含以下文件:core-site.xml,hdfs-site.xml,yarn-site.xml
- **自定义配置(高优先级)**
- **ha.zookeeper.quorum:** zookeeper访问地址
- **其他配置:** zookeeper的参数配置(默认不填写)
- **Flink配置**
- **lib 路径:** 指定 lib 的 hdfs 路径(末尾无/),需要包含 Flink 运行时的依赖
- **配置文件路径:**指定 flink-conf.yaml 的具体路径(末尾无/),必填
- **自定义配置(高优先级):** Flink参数配置
- **基本配置**
- **标识:** 唯一英文标识(必填)
- **名称:** 自定义
- **注释:** 自定义
- **是否启用:** 默认禁用,需要开启
参数配置完成后,点击"测试",会显示测试连接成功。
![集群测试](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E6%B5%8B%E8%AF%95.png)
待测试连接成功后,选择完成即可。至此集群配置成功,可连接远程集群进行作业提交。
### 集群编辑
当集群配置完成后,用户可以对集群配置做编辑修改。
首先进入注册中心集群配置管理,在列表中找到对应的集群名称,点击"编辑"后,维护集群配置
![集群配置编辑](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE%E7%BC%96%E8%BE%91.png)
![维护集群配置](http://www.aiwenmo.com/dinky/dev/docs/%E7%BB%B4%E6%8A%A4%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE.png)
### 集群删除
用户可以对所添加的集群配置进行删除。
首先进入注册中心中的集群配置管理,,在列表中找到对应的集群,点击"删除"后,删除集群
![集群配置删除](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4.png)
![删除集群配置](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%A0%E9%99%A4%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE.png)
### 搜索
当用户集群配置完成后,配置的信息会显示在列表中,用户可以通过名称,别名,创建时间对配置的作业进行查找。
![搜索](http://www.aiwenmo.com/dinky/dev/docs/%E6%90%9C%E7%B4%A2.png)
**说明:** 当集群配置的作业异步提交成功,可以看到所作业提交后的实例,并如果集群实例一样,可以对所在的集群实例进行回收,删除,编辑等操作。集群实例的操作步骤请查看集群实例管理部分。
......@@ -16,7 +16,7 @@
**Flink连接配置:** 避免私密信息泄露,同时复用连接配置,在FlinkSQL中可使用${名称}来加载连接配置,如${ods},说明:名称指的是英文唯一标识,即如图所示的名称。注意需要开启全局变量(原片段机制);
**Flink连接模板:** Flink连接模板作用是为生成FlinkSQL DDL而扩展的功能。其中${schemaName}动态获取数据库,${tableName}动态获取表名称。其他参数可根据需求添加;
**Flink连接模板:** Flink连接模板作用是为生成FlinkSQL DDL而扩展的功能。其中${schemaName}动态获取数据库,${tableName}动态获取表名称。更多参数请参考[Flink官网](https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/table/overview/);
**注释:** 自定义;
......
当用户使用jar包提交Flink应用时,可以在jar包管理中对所需程序进行管理。
## Jar包配置
首先进入注册中心的jar管理,点击“新建”,进入创建Jar配置界面。
![新建](http://www.aiwenmo.com/dinky/dev/docs/%E6%96%B0%E5%BB%BA.png)
![创建jar配置](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%9B%E5%BB%BAjar%E9%85%8D%E7%BD%AE.png)
**参数配置说明:**
- **Jar配置:**
- 默认:** User App
- **文件路径:** 指定HDFS上的文件路径,即Flink提交的jar包程序
- **启动类:** 指定可执行 Jar 的启动类,(可选)
- **执行参数:** 指定可执行 Jar 的启动类入参,(可选)
- **基本配置:**
- **标识:** 英文唯一标识(必选)
- **名称:** 自定义
- **注释:** 自定义
- **是否启用:** 默认启用
Jar包配置完成后,就可以正常提交运行。
如果可行性jar包出错,用户可以对其进行编辑修改。
## Jar包编辑
用户可以对所添加的可执行Jar包配置做编辑修改。
首先进入注册中心的jar包管理中,点击编辑,即可对可执行Jar配置进行修改。
![jar编辑](http://www.aiwenmo.com/dinky/dev/docs/jar%E7%BC%96%E8%BE%91.png)
![维护jar包配置](http://www.aiwenmo.com/dinky/dev/docs/%E7%BB%B4%E6%8A%A4jar%E5%8C%85%E9%85%8D%E7%BD%AE.png)
## Jar删除
用户可以对所添加的可执行Jar包配置做删除。
首先进入注册中心的jar包管理中,点击删除,即可对可执行Jar配置进行删除。
![jar配置删除](http://www.aiwenmo.com/dinky/dev/docs/jar%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4.png)
![删除jar](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%A0%E9%99%A4jar.png)
**说明:** 目前jar包提交的方式还尚在开发阶段,不适合在生产使用。用户只能跑一些demo
\ No newline at end of file
......@@ -7,5 +7,6 @@
- Phoenix
- Doris(Starrocks)
- ClickHouse
- Hive
使用以上数据源,请查阅注册中心[数据源管理](/zh-CN/administrator-guide/registerCenter/datasource_manage.md),配置数据源连接
\ No newline at end of file
## Yarn-Session 实践
### 注册 Session 集群
![image-20211128225423360](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6iaAIees3BsUONXbIocdRUI0WWVSzibPpltibBbMmWgfWJ0AklUlPF9Ugw/0?wx_fmt=png)
进入集群中心进行远程集群的注册。点击新建按钮配置远程集群的参数。图中示例配置了一个 Flink on Yarn 的高可用集群,其中 JobManager HA 地址需要填写集群中所有可能被作为 JobManager 的 RestAPI 地址,多个地址间使用英文逗号分隔。表单提交时可能需要较长时间的等待,因为 dlink 正在努力的计算当前活跃的 JobManager 地址。
保存成功后,页面将展示出当前的 JobManager 地址以及被注册集群的版本号,状态为正常时表示可用。
注意:只有具备 JobManager 实例的 Flink 集群才可以被成功注册到 dlink 中。( Yarn-Per-Job 和 Yarn-Application 也具有 JobManager,当然也可以手动注册,但无法提交任务)
如状态异常时,请检查被注册的 Flink 集群地址是否能正常访问,默认端口号为8081,可能更改配置后发生了变化,查看位置为 Flink Web 的 JobManager 的 Configuration 中的 rest 相关属性。
### 执行 Hello World
万物都具有 Hello World 的第一步,当然 dlink 也是具有的。我们选取了基于 datagen 的流查询作为第一行 Flink Sql。具体如下:
```sql
CREATE TABLE Orders (
order_number BIGINT,
price DECIMAL(32,2),
buyer ROW<first_name STRING, last_name STRING>,
order_time TIMESTAMP(3)
) WITH (
'connector' = 'datagen',
'rows-per-second' = '1'
);
select order_number,price,order_time from Orders
```
该例子使用到了 datagen,需要在 dlink 的 plugins 目录下添加 flink-table.jar。
点击 Flink Sql Studio 进入开发页面:
![image-20211128230416447](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6RuS3kibG0jJnDjoUicX7sN63UN6j7Osg4lWh5SelOw0hp4Vj6icFAuDkA/0?wx_fmt=png)
在中央的编辑器中编辑 Flink Sql。
右边作业配置:
1. 执行模式:选中 yarn-session;
2. Flink 集群:选中上文注册的测试集群;
3. SavePoint 策略:选中禁用;
4. 按需进行其他配置。
右边执行配置:
1. 预览结果:启用;
2. 远程执行:启用。
点击快捷操作栏的三角号按钮同步执行该 FlinkSQL 任务。
### 预览数据
![image-20211128231230335](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6leQx4mfqsdwVftlEUXSFWnEzOTJGrCGHUKo98SpIn11WkZquEwwjpg/0?wx_fmt=png)
切换到历史选项卡点击刷新可以查看提交进度。切换到结果选项卡,等待片刻点击获取最新数据即可预览 SELECT。
### 停止任务
![image-20211128231523703](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6koYZDQqzsawPOCTP64ycdUZlib5oJA9vo9fpX43DNTmibY60ojZv44zQ/0?wx_fmt=png)
切换到进程选项卡,选则对应的集群实例,查询当前任务,可执行停止操作。
## Yarn-Per-Job 实践
### 注册集群配置
进入集群中心——集群配置,注册配置。
![image-20211128231914983](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6Vcw98k4yfgR2dSo3BUhxdtpRdd8A7NLyXkZhFibhiciarp9DTY415UehQ/0?wx_fmt=png)
1. Hadoop 配置文件路径:指定配置文件路径(末尾无/),需要包含以下文件:core-site.xml,hdfs-site.xml,yarn-site.xml;
2. Flink 配置 lib 路径:指定 lib 的 hdfs 路径(末尾无/),需要包含 Flink 运行时的所有依赖,即 flink 的 lib 目录下的所有 jar;
3. Flink 配置文件路径:指定配置文件 flink-conf.yaml 的具体路径(末尾无/);
4. 按需配置其他参数(重写效果);
5. 配置基本信息(标识、名称等);
6. 点击测试或者保存。
### 执行升级版 Hello World
之前的 hello world 是个 SELECT 任务,改良下变为 INSERT 任务:
```sql
CREATE TABLE Orders (
order_number INT,
price DECIMAL(32,2),
order_time TIMESTAMP(3)
) WITH (
'connector' = 'datagen',
'rows-per-second' = '1',
'fields.order_number.kind' = 'sequence',
'fields.order_number.start' = '1',
'fields.order_number.end' = '1000'
);
CREATE TABLE pt (
ordertotal INT,
numtotal INT
) WITH (
'connector' = 'print'
);
insert into pt select 1 as ordertotal ,sum(order_number)*2 as numtotal from Orders
```
![image-20211128232734409](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6HU0ics1Er4CibiaRc8jndmc3rHX9J3ArSp4QF2qyARR46hPzOh0kDbYYQ/0?wx_fmt=png)
编写 Flink SQL;
作业配置:
1. 执行模式:选中 yarn-per-job ;
2. Flink 集群配置:选中刚刚注册的配置;
3. SavePoint 策略:选中最近一次。
快捷操作栏:
1. 点击保存按钮保存当前所有配置;
2. 点击小火箭异步提交作业。
![image-20211128233423276](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6OsQDhibZQbh1nXrx9d0OBiaiaibnIMnLcSfT3MNxhY9CEyAxrA9NLczohA/0?wx_fmt=png)
注意,执行历史需要手动刷新。
### 自动注册集群
点击集群中心——集群实例,即可发现自动注册的 Per-Job 集群。
![image-20211128234056101](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6zCpJ7Knv1WYHTUxHt8iagpNNjRAPsPiaqBoD2xkLupcM7Op1Q48tb6ibQ/0?wx_fmt=png)
### 查看 Flink Web UI
提交成功后,点击历史的蓝色地址即可快速打开 Flink Web UI地址。
![image-20211128233735071](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6AQq5qVMAkwUM8WiaLnTrzDnSlLicTJZjWxowdW9dKUibNp33nrnHpL2Ng/0?wx_fmt=png)
### 从 Savepoint 处停止
在进程选项卡中选择自动注册的 Per-Job 集群,查看任务并 SavePoint-Cancel。
![image-20211128234321656](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6jDvzsoHias24jAY6ElCFj6lFCX1jjdGmoGGa5vI5xgNSEUzyEiaZEZNA/0?wx_fmt=png)
在右侧保存点选项卡可以查看该任务的所有 SavePoint 记录。
![image-20211128234619397](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6TGv1Gun2rB35Upv8hnsoeHzeDdFT4Ryag8icHz7BrzhE4YELiaMk7KYw/0?wx_fmt=png)
### 从 SavePoint 处启动
再次点击小火箭提交任务。
![image-20211128235430989](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6WTchGqUeBiaNY5hT6tjQ611UaQA3jawOS4uQHrN65icia3d4qLAfZMEibg/0?wx_fmt=png)
查看对应 Flink Web UI,从 Stdout 输出中证实 SavePoint 恢复成功。
## Yarn-Application 实践
### 注册集群配置
使用之前注册的集群配置即可。
### 上传 dlink-app.jar
第一次使用时,需要将 dlink-app.jar 上传到 hdfs 指定目录,目录可修改如下:
![image-20211128235914006](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6loq9rmu2tlkDvgSoD6WSlNBrniabV7MibNtSQrA2wKnCjKOzUGGiawW4g/0?wx_fmt=png)
50070 端口 浏览文件系统如下:
![image-20211129000047789](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X68kEAFYLBQpGcamP5djEaj9LiaLqlQCxVIXrbdFbgCb4Ct25HTAHCRIw/0?wx_fmt=png)
### 执行升级版 Hello World
作业配置:
1. 执行模式:选中 yarn-application ;
快捷操作栏:
1. 点击保存按钮保存当前所有配置;
2. 点击小火箭异步提交作业。
### 其他同 Per-Job
其他操作同 yarn-per-job ,本文不再做描述。
### 提交 User Jar
作业中心—— Jar 管理,注册 User Jar 配置。
![image-20211129000804888](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6lGkXGSXSP9JyWTxc5rrh8zD9y5XYR9HkKxRRDicbUQicSFhaAAR0Ulxw/0?wx_fmt=png)
右边作业配置的可执行 Jar 选择刚刚注册的 Jar 配置,保存后点击小火箭提交作业。
![image-20211129000933320](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6qyajpuR1OPlsFynwibdSRX3ECcRGGJPmutqyaibJbFS8HYCYic0rswuiaw/0?wx_fmt=png)
由于提交了个批作业,Yarn 可以发现已经执行完成并销毁集群了。
![image-20211129001241101](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6UJbUIgHTSJHN29zicKuf761ERGnZHibMMURhuFpL2Iiah9LSiceTXIrAyg/0?wx_fmt=png)
## Yarn-Session 实践
### 注册 Session 集群
![image-20211128225423360](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6iaAIees3BsUONXbIocdRUI0WWVSzibPpltibBbMmWgfWJ0AklUlPF9Ugw/0?wx_fmt=png)
进入集群中心进行远程集群的注册。点击新建按钮配置远程集群的参数。图中示例配置了一个 Flink on Yarn 的高可用集群,其中 JobManager HA 地址需要填写集群中所有可能被作为 JobManager 的 RestAPI 地址,多个地址间使用英文逗号分隔。表单提交时可能需要较长时间的等待,因为 dlink 正在努力的计算当前活跃的 JobManager 地址。
保存成功后,页面将展示出当前的 JobManager 地址以及被注册集群的版本号,状态为正常时表示可用。
注意:只有具备 JobManager 实例的 Flink 集群才可以被成功注册到 dlink 中。( Yarn-Per-Job 和 Yarn-Application 也具有 JobManager,当然也可以手动注册,但无法提交任务)
如状态异常时,请检查被注册的 Flink 集群地址是否能正常访问,默认端口号为8081,可能更改配置后发生了变化,查看位置为 Flink Web 的 JobManager 的 Configuration 中的 rest 相关属性。
### 执行 Hello World
万物都具有 Hello World 的第一步,当然 dlink 也是具有的。我们选取了基于 datagen 的流查询作为第一行 Flink Sql。具体如下:
```sql
CREATE TABLE Orders (
order_number BIGINT,
price DECIMAL(32,2),
buyer ROW<first_name STRING, last_name STRING>,
order_time TIMESTAMP(3)
) WITH (
'connector' = 'datagen',
'rows-per-second' = '1'
);
select order_number,price,order_time from Orders
```
该例子使用到了 datagen,需要在 dlink 的 plugins 目录下添加 flink-table.jar。
点击 Flink Sql Studio 进入开发页面:
![image-20211128230416447](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6RuS3kibG0jJnDjoUicX7sN63UN6j7Osg4lWh5SelOw0hp4Vj6icFAuDkA/0?wx_fmt=png)
在中央的编辑器中编辑 Flink Sql。
右边作业配置:
1. 执行模式:选中 yarn-session;
2. Flink 集群:选中上文注册的测试集群;
3. SavePoint 策略:选中禁用;
4. 按需进行其他配置。
右边执行配置:
1. 预览结果:启用;
2. 远程执行:启用。
点击快捷操作栏的三角号按钮同步执行该 FlinkSQL 任务。
### 预览数据
![image-20211128231230335](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6leQx4mfqsdwVftlEUXSFWnEzOTJGrCGHUKo98SpIn11WkZquEwwjpg/0?wx_fmt=png)
切换到历史选项卡点击刷新可以查看提交进度。切换到结果选项卡,等待片刻点击获取最新数据即可预览 SELECT。
### 停止任务
![image-20211128231523703](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6koYZDQqzsawPOCTP64ycdUZlib5oJA9vo9fpX43DNTmibY60ojZv44zQ/0?wx_fmt=png)
切换到进程选项卡,选则对应的集群实例,查询当前任务,可执行停止操作。
## Yarn-Per-Job 实践
### 注册集群配置
进入集群中心——集群配置,注册配置。
![image-20211128231914983](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6Vcw98k4yfgR2dSo3BUhxdtpRdd8A7NLyXkZhFibhiciarp9DTY415UehQ/0?wx_fmt=png)
1. Hadoop 配置文件路径:指定配置文件路径(末尾无/),需要包含以下文件:core-site.xml,hdfs-site.xml,yarn-site.xml;
2. Flink 配置 lib 路径:指定 lib 的 hdfs 路径(末尾无/),需要包含 Flink 运行时的所有依赖,即 flink 的 lib 目录下的所有 jar;
3. Flink 配置文件路径:指定配置文件 flink-conf.yaml 的具体路径(末尾无/);
4. 按需配置其他参数(重写效果);
5. 配置基本信息(标识、名称等);
6. 点击测试或者保存。
### 执行升级版 Hello World
之前的 hello world 是个 SELECT 任务,改良下变为 INSERT 任务:
```sql
CREATE TABLE Orders (
order_number INT,
price DECIMAL(32,2),
order_time TIMESTAMP(3)
) WITH (
'connector' = 'datagen',
'rows-per-second' = '1',
'fields.order_number.kind' = 'sequence',
'fields.order_number.start' = '1',
'fields.order_number.end' = '1000'
);
CREATE TABLE pt (
ordertotal INT,
numtotal INT
) WITH (
'connector' = 'print'
);
insert into pt select 1 as ordertotal ,sum(order_number)*2 as numtotal from Orders
```
![image-20211128232734409](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6HU0ics1Er4CibiaRc8jndmc3rHX9J3ArSp4QF2qyARR46hPzOh0kDbYYQ/0?wx_fmt=png)
编写 Flink SQL;
作业配置:
1. 执行模式:选中 yarn-per-job ;
2. Flink 集群配置:选中刚刚注册的配置;
3. SavePoint 策略:选中最近一次。
快捷操作栏:
1. 点击保存按钮保存当前所有配置;
2. 点击小火箭异步提交作业。
![image-20211128233423276](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6OsQDhibZQbh1nXrx9d0OBiaiaibnIMnLcSfT3MNxhY9CEyAxrA9NLczohA/0?wx_fmt=png)
注意,执行历史需要手动刷新。
### 自动注册集群
点击集群中心——集群实例,即可发现自动注册的 Per-Job 集群。
![image-20211128234056101](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6zCpJ7Knv1WYHTUxHt8iagpNNjRAPsPiaqBoD2xkLupcM7Op1Q48tb6ibQ/0?wx_fmt=png)
### 查看 Flink Web UI
提交成功后,点击历史的蓝色地址即可快速打开 Flink Web UI地址。
![image-20211128233735071](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6AQq5qVMAkwUM8WiaLnTrzDnSlLicTJZjWxowdW9dKUibNp33nrnHpL2Ng/0?wx_fmt=png)
### 从 Savepoint 处停止
在进程选项卡中选择自动注册的 Per-Job 集群,查看任务并 SavePoint-Cancel。
![image-20211128234321656](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6jDvzsoHias24jAY6ElCFj6lFCX1jjdGmoGGa5vI5xgNSEUzyEiaZEZNA/0?wx_fmt=png)
在右侧保存点选项卡可以查看该任务的所有 SavePoint 记录。
![image-20211128234619397](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6TGv1Gun2rB35Upv8hnsoeHzeDdFT4Ryag8icHz7BrzhE4YELiaMk7KYw/0?wx_fmt=png)
### 从 SavePoint 处启动
再次点击小火箭提交任务。
![image-20211128235430989](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6WTchGqUeBiaNY5hT6tjQ611UaQA3jawOS4uQHrN65icia3d4qLAfZMEibg/0?wx_fmt=png)
查看对应 Flink Web UI,从 Stdout 输出中证实 SavePoint 恢复成功。
## Yarn-Application 实践
### 注册集群配置
使用之前注册的集群配置即可。
### 上传 dlink-app.jar
第一次使用时,需要将 dlink-app.jar 上传到 hdfs 指定目录,目录可修改如下:
![image-20211128235914006](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6loq9rmu2tlkDvgSoD6WSlNBrniabV7MibNtSQrA2wKnCjKOzUGGiawW4g/0?wx_fmt=png)
50070 端口 浏览文件系统如下:
![image-20211129000047789](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X68kEAFYLBQpGcamP5djEaj9LiaLqlQCxVIXrbdFbgCb4Ct25HTAHCRIw/0?wx_fmt=png)
### 执行升级版 Hello World
作业配置:
1. 执行模式:选中 yarn-application ;
快捷操作栏:
1. 点击保存按钮保存当前所有配置;
2. 点击小火箭异步提交作业。
### 其他同 Per-Job
其他操作同 yarn-per-job ,本文不再做描述。
### 提交 User Jar
作业中心—— Jar 管理,注册 User Jar 配置。
![image-20211129000804888](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6lGkXGSXSP9JyWTxc5rrh8zD9y5XYR9HkKxRRDicbUQicSFhaAAR0Ulxw/0?wx_fmt=png)
右边作业配置的可执行 Jar 选择刚刚注册的 Jar 配置,保存后点击小火箭提交作业。
![image-20211129000933320](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6qyajpuR1OPlsFynwibdSRX3ECcRGGJPmutqyaibJbFS8HYCYic0rswuiaw/0?wx_fmt=png)
由于提交了个批作业,Yarn 可以发现已经执行完成并销毁集群了。
![image-20211129001241101](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6UJbUIgHTSJHN29zicKuf761ERGnZHibMMURhuFpL2Iiah9LSiceTXIrAyg/0?wx_fmt=png)
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