Plink v0.1.0 发布——基于Flink的流处理平台

Plink是一个基于Flink的流处理平台,旨在基于 [Apache Flink]封装构建上层平台。
提供常见的作业管理功能。如作业的创建,删除,编辑,更新,保存,启动,停止,重启,管理,多作业模板配置等。
Flink SQL 编辑提交功能。如 SQL 的在线开发,智能提示,格式化,语法校验,保存,采样,运行,测试,集成 Kafka 等。
由于项目刚刚启动,未来还有很长的路要走,让我们拭目以待。
在 Windows 上部署 Plink
Plink 进行独立单机部署,可以在 Windows 上进行部署,以下是部署的操作详情。
环境需求
- 操作系统
- Windows
- 编译环境
- Java 1.8 +
- Maven 3.3 + (编译代码)
- 运行环境
- Apache Flink 1.9 + (Standalone 模式)
- MySQL 5.7 +
- Java 1.8 +
安装 Java
- 版本: java 1.8+
- JAVA_HOME 配置
- 安装详情: 略 。。。
安装 Maven
- 版本: maven 3.3 +
- MAVEN_HOME 配置
- 安装详情: 略 。。。
安装 Mysql
版本: mysql 5.7+
安装建议: 建议 Docker 安装,命令如下:
docker run -p 3306:3306 --name plink-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
初始化脚本
进入 docker mysql 中,执行如下的 sql 语句,创建库和表。
https://github.com/hairless/plink/blob/master/plink-web/src/main/resources/META-INF/sql/mysql/plink_init.sql
远程授权
-- CREATE USER 'root'@'%' IDENTIFIED BY '1234567';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;
安装 Apache Flink
版本: flink-1.9.3-bin-scala_2.11(建议: 这里建议使用 1.9.x 版本,因为 1.10+ 版本在 windows 系统上不能开箱即用)
下载: https://mirror.bit.edu.cn/apache/flink/flink-1.9.3/flink-1.9.3-bin-scala_2.11.tgz
解压到合适的目录,假设该目录为 FLINK_HOME
环境变量配置 FLINK_HOME(必须,Plink 会用到该环境变量)
Flink 配置: 无需更改
启动: 执行 bin 目录下的脚本
start-cluster.bat
测试: 访问 http://127.0.0.1:8081 正常即可。
安装 Plink
项目编译
编译
git clone https://github.com/hairless/plink.git
cd plink
mvn clean package -Dmaven.test.skip=true
成功后在 plink/plink-dist/target/ 下会有一个 plink-${version}-bin.tar.gz 文件,如: plink-0.1-bin.tar.gz
解压
找到上面的 plink-${version}-bin.tar.gz 文件,找一个合适的目录,假设该目录为 PLINK_HOME 鼠标右键解压,然后切换到 PLINK_HOME 目录。
配置
进入 config 文件夹,可以编辑 application.yml, application-local.yml 等配置文件
- 配置 mysql 编辑 application-local.yml,配置 spring.datasource.xxx 等属性。如: 默认的 mysql url 地址为 jdbc:mysql://localhost:3306/plink?useUnicode=true&characterEncoding=utf-8
启动
打开 cmd 命令提示符,切换到 PLINK_HOME 目录
bin/run.bat start
访问默认地址: http://127.0.0.1:8666
关闭
打开 cmd 命令提示符,切换到 PLINK_HOME 目录
bin/run.bat stop
使用 Docker 部署 Plink
可以使用 Docker 进行部署 Plink,以下是部署的操作详情。
由于网路原因,当前镜像只上传到了阿里云。
环境
- Java 1.8
- Apache Flink 1.10.0
- MySQL 5.7.28
- plink:master
镜像大小: 1.46G
概述
当前为了快速获得测试效果,将 JDK,Flink,MySQL,Plink 全部打入到一个镜像了 - - 、
拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/hairless/plink:master
启动镜像
docker run -ti -p 8666:8666 -p 8081:8081 --name plink -d registry.cn-hangzhou.aliyuncs.com/hairless/plink:master
本地 FLINK_HOME 覆盖 Docker 镜像中的 Flink,需在 docker 启动时加入参数 : -v FLINK_HOME:/opt/flink
访问
Plink: http://127.0.0.1:8666
Flink: http://127.0.0.1:8081
运行 Word Count 作业示例
在 Plink 上提交 Flink 自带的 flink-1.9.1\examples\streaming\WordCount.jar,然运行。
作业列表
新建作业
- 作业管理 -> 作业列表 -> 右侧按钮 -> 新建 -> 输入(作业名称/类型/描述) -> 新建。如下所示:

编辑作业
注意: 由于独立部署和容器化部署的 Flink 版本可能不一样,最好使用对应的 WordCount Jar 版本。
独立部署(Flink 1.9):
下载链接: https://mirror.bit.edu.cn/apache/flink/flink-1.9.3/flink-1.9.3-bin-scala_2.11.tgz
Jar 目录: f${FLINK_HOME}examples\streaming\WordCount.jar。Docker 部署(Flink 1.10):
下载链接: https://mirrors.bfsu.edu.cn/apache/flink/flink-1.10.1/flink-1.10.1-bin-scala_2.11.tgz
Jar 目录: ${FLINK_HOME}\examples\streaming\WordCount.jar
作业列表编辑或新建作业之后会自动跳转到编辑作业的页面。填写参数,上传 Jar,保存即可。如下所示:

作业详情
作业信息
确认自己作业的基础信息,作业配置,运行参数等。

2.作业实例
每一次作业运行时,都会产生一个作业实例。
启动作业
在作业详情页的右侧功能按钮点击启动,即可启动作业,同时页面会自动刷新(当前刷新频率为 1s)
待启动

启动中

运行中

运行成功

实例列表
实例列表可以看所有的作业实例运行历史信息。

更多Flink,Kafka等相关技术博文,科技资讯,欢迎关注实时流式计算 公众号后台回复 “电子书” 下载300页Flink实战电子书

Plink v0.1.0 发布——基于Flink的流处理平台的更多相关文章
- LAL v0.32.0发布,更好的支持纯视频流
Go语言流媒体开源项目 LAL 今天发布了v0.32.0版本.距离上个版本刚好一个月时间,LAL 依然保持着高效迭代的状态. LAL 项目地址:https://github.com/q19120177 ...
- terraform v0.12.0 发布了
v0.12.0 相比以前的有好多新的特性,包括语法,以及函数增强,昨天还在折腾的一个json解码的问题,直接使用 v0.12.0 就可以解决了,同时也包含了for 操作处理同时官方文档对于v0.12. ...
- GIS+=地理信息+行业+大数据——基于云环境流处理平台下的实时交通创新型app
应用程序已经是近代的一个最重要的IT创新.应用程序是连接用户和数据之间的桥梁,提供即时訪问信息是最方便且呈现的方式也是easy理解的和令人惬意的. 然而,app开发人员.尤其是后端平台能力,一直在努力 ...
- AEAI DP V3.7.0 发布,开源综合应用开发平台
1 升级说明 AEAI DP 3.7版本是AEAI DP一个里程碑版本,基于JDK1.7开发,在本版本中新增支持Rest服务开发机制(默认支持WebService服务开发机制),且支持WS服务.RS ...
- Yearning v1.3.0 发布,Web 端 SQL 审核平台
企业级MYSQL web端 SQL审核平台. Website 官网 www.yearning.io Feature 功能 数据库字典自动生成 SQL查询 查询工单 导出 自动补全,智能提示 查询语句审 ...
- F5 BIG-IQ 8.0 发布 - 借助一个统一的管理平台,管理您的所有 BIG-IP 设备和服务
针对完整可见性和控制的 BIG-IQ 集中式管理 BIG-IP 设备和服务的端到端控制 高效管理(编排.可见性和合规性)依赖于跨本地和云部署中始终如一的应用服务和安全策略.利用独立统一的管理平台实现对 ...
- 基于 Flink 的实时数仓生产实践
数据仓库的建设是“数据智能”必不可少的一环,也是大规模数据应用中必然面临的挑战.在智能商业中,数据的结果代表了用户反馈.获取数据的及时性尤为重要.快速获取数据反馈能够帮助公司更快地做出决策,更好地进行 ...
- [译]基于ASP.NET Core 3.0的ABP v0.21已发布
基于ASP.NET Core 3.0的ABP v0.21已发布 在微软发布仅仅一个小时后, 基于ASP.NET Core 3.0的ABP v0.21也紧跟着发布了. v0.21没有新功能.它只是升级到 ...
- 基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构
基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构 Neo4j 3.0.0 正式发布,这是 Neo4j 3.0 系列的第一个版本.此版本对内部架构进行了全新的设计;提供给开发者更强大的生 ...
随机推荐
- Java实现 LeetCode 209 长度最小的子数组
209. 长度最小的子数组 给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组.如果不存在符合条件的连续子数组,返回 0. 示例: 输入: s = ...
- Java实现 LeetCode 173 二叉搜索树迭代器
173. 二叉搜索树迭代器 实现一个二叉搜索树迭代器.你将使用二叉搜索树的根节点初始化迭代器. 调用 next() 将返回二叉搜索树中的下一个最小的数. 示例: BSTIterator iterato ...
- Java实现 洛谷 P1280 尼克的任务
import java.util.Scanner; public class Main { public static class edg{ private int to; private int n ...
- java实现第六届蓝桥杯空心菱形
空心菱形 标题:空心菱形 小明刚刚开发了一个小程序,可以打印出任意规模的空心菱形,规模为6时,如下图: ****** ****** ***** ***** **** **** *** *** ** * ...
- Java实现第八届蓝桥杯分巧克力
分巧克力 题目描述 儿童节那天有K位小朋友到小明家做客.小明拿出了珍藏的巧克力招待小朋友们. 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形. 为了公平起见,小明需要从这 N 块巧 ...
- 彻底搞懂 etcd 系列文章(二):etcd 的多种安装姿势
0 专辑概述 etcd 是云原生架构中重要的基础组件,由 CNCF 孵化托管.etcd 在微服务和 Kubernates 集群中不仅可以作为服务注册与发现,还可以作为 key-value 存储的中间件 ...
- mybatis源码解析-日志适配器
1.为什么需要使用适配器? 集成第三方日志组件,屏蔽日志组件底层实现,统一提供写日志的接口. 2.什么是适配器模式 定义:将一个类的接口变成客户端所期待的另一种接口,从而使原本因接口不匹配而无法 ...
- 源码分析 | 手写mybait-spring核心功能(干货好文一次学会工厂bean、类代理、bean注册的使用)
作者:小傅哥 博客:https://bugstack.cn - 汇总系列原创专题文章 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言介绍 一个知识点的学习过程基本分为:运行helloworld ...
- java 中有几种类型的流?
字节流,字符流. 字节流继承于 InputStream \ OutputStream, 字符流继承于 InputStreamReader \ OutputStreamWriter. 在 java.io ...
- Linux中使用expect脚本实现远程机器自动登录_linux shell
首先创建一个expect脚本ssh_expect,文件内容如下: #!/usr/bin/expect -f set hostname [lindex $argv 0] set user [lindex ...