Plink是一个基于Flink的流处理平台,旨在基于 [Apache Flink]封装构建上层平台。

提供常见的作业管理功能。如作业的创建,删除,编辑,更新,保存,启动,停止,重启,管理,多作业模板配置等。

Flink SQL 编辑提交功能。如 SQL 的在线开发,智能提示,格式化,语法校验,保存,采样,运行,测试,集成 Kafka 等。

由于项目刚刚启动,未来还有很长的路要走,让我们拭目以待。

在 Windows 上部署 Plink

Plink 进行独立单机部署,可以在 Windows 上进行部署,以下是部署的操作详情。

环境需求

  1. 操作系统

    1. Windows
  2. 编译环境
    1. Java 1.8 +
    2. Maven 3.3 + (编译代码)
  3. 运行环境
    1. Apache Flink 1.9 + (Standalone 模式)
    2. MySQL 5.7 +
    3. 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

安装 Plink

项目编译

  1. 编译

    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 等配置文件

  1. 配置 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,以下是部署的操作详情。

由于网路原因,当前镜像只上传到了阿里云。

环境

  1. Java 1.8
  2. Apache Flink 1.10.0
  3. MySQL 5.7.28
  4. 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

访问

  1. Plink: http://127.0.0.1:8666

  2. Flink: http://127.0.0.1:8081

运行 Word Count 作业示例

在 Plink 上提交 Flink 自带的 flink-1.9.1\examples\streaming\WordCount.jar,然运行。

作业列表

新建作业

  • 作业管理 -> 作业列表 -> 右侧按钮 -> 新建 -> 输入(作业名称/类型/描述) -> 新建。如下所示:

编辑作业

注意: 由于独立部署和容器化部署的 Flink 版本可能不一样,最好使用对应的 WordCount Jar 版本。

  1. 独立部署(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。

  2. 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,保存即可。如下所示:

作业详情

  1. 作业信息

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

2.作业实例

每一次作业运行时,都会产生一个作业实例。

启动作业

在作业详情页的右侧功能按钮点击启动,即可启动作业,同时页面会自动刷新(当前刷新频率为 1s)

待启动

启动中

运行中

运行成功

实例列表

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

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

Plink v0.1.0 发布——基于Flink的流处理平台的更多相关文章

  1. LAL v0.32.0发布,更好的支持纯视频流

    Go语言流媒体开源项目 LAL 今天发布了v0.32.0版本.距离上个版本刚好一个月时间,LAL 依然保持着高效迭代的状态. LAL 项目地址:https://github.com/q19120177 ...

  2. terraform v0.12.0 发布了

    v0.12.0 相比以前的有好多新的特性,包括语法,以及函数增强,昨天还在折腾的一个json解码的问题,直接使用 v0.12.0 就可以解决了,同时也包含了for 操作处理同时官方文档对于v0.12. ...

  3. GIS+=地理信息+行业+大数据——基于云环境流处理平台下的实时交通创新型app

    应用程序已经是近代的一个最重要的IT创新.应用程序是连接用户和数据之间的桥梁,提供即时訪问信息是最方便且呈现的方式也是easy理解的和令人惬意的. 然而,app开发人员.尤其是后端平台能力,一直在努力 ...

  4. AEAI DP V3.7.0 发布,开源综合应用开发平台

    1  升级说明 AEAI DP 3.7版本是AEAI DP一个里程碑版本,基于JDK1.7开发,在本版本中新增支持Rest服务开发机制(默认支持WebService服务开发机制),且支持WS服务.RS ...

  5. Yearning v1.3.0 发布,Web 端 SQL 审核平台

    企业级MYSQL web端 SQL审核平台. Website 官网 www.yearning.io Feature 功能 数据库字典自动生成 SQL查询 查询工单 导出 自动补全,智能提示 查询语句审 ...

  6. F5 BIG-IQ 8.0 发布 - 借助一个统一的管理平台,管理您的所有 BIG-IP 设备和服务

    针对完整可见性和控制的 BIG-IQ 集中式管理 BIG-IP 设备和服务的端到端控制 高效管理(编排.可见性和合规性)依赖于跨本地和云部署中始终如一的应用服务和安全策略.利用独立统一的管理平台实现对 ...

  7. 基于 Flink 的实时数仓生产实践

    数据仓库的建设是“数据智能”必不可少的一环,也是大规模数据应用中必然面临的挑战.在智能商业中,数据的结果代表了用户反馈.获取数据的及时性尤为重要.快速获取数据反馈能够帮助公司更快地做出决策,更好地进行 ...

  8. [译]基于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没有新功能.它只是升级到 ...

  9. 基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构

    基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构 Neo4j 3.0.0 正式发布,这是 Neo4j 3.0 系列的第一个版本.此版本对内部架构进行了全新的设计;提供给开发者更强大的生 ...

随机推荐

  1. Java实现 蓝桥杯 历届试题 最大子阵

    问题描述 给定一个n*m的矩阵A,求A中的一个非空子矩阵,使这个子矩阵中的元素和最大. 其中,A的子矩阵指在A中行和列均连续的一块. 输入格式 输入的第一行包含两个整数n, m,分别表示矩阵A的行数和 ...

  2. Linux ACL权限查看与设定

    getfacl 文件名,可以查看文件的acl权限 setfacl [选项] 文件名,可以设定文件的acl权限,例如:setfacl -m u:boduo:rx /project/ 这时候,创建了bod ...

  3. shell命令:命令置换、进程管理

    1:命令置换 command1  `command2` 将command2的结果作为command1的参数 注意:command2的引号为esc键下的单引号 2:进程管理 1)命令 (1)ps  -a ...

  4. python—socket编程

    一:客户端/服务器 架构 1.硬件C/S架构:(例如,打印机) 2.软件C/S架构:互联网中处处是C/S架构 腾讯作为服务端为你提供视频,你得下个腾讯视频客户端才能看它的视频 C/S架构与socket ...

  5. jenkins 添加用户管理权限

    一.前言 小组开会通知 想把jenkins 构建的权限给开发,这样的话效率会增加.运维也不必每次帮助开发去构建发布. 1.规划 jenkins 四个项目分别对应三个人负责.项目下的只负责 CI.UAT ...

  6. RocketMQ系列(三)消息的生产与消费

    前面的章节,我们已经把RocketMQ的环境搭建起来了,是一个两主两从的异步集群.接下来,我们就看看怎么去使用RocketMQ,在使用之前,先要在NameServer中创建Topic,我们知道Rock ...

  7. 2.vue-常用指令

    1.v-html:刷新的时候是整个DOM元素都会跟着一起进行刷新 v-text:直接刷新DOM种的text文本内容2.如果想在vue绑定html中的属性使用的是v-bind进行绑定的 v-bind:h ...

  8. 如何优雅的用js动态的添加html代码?

    把想要的结构写在HTML里,用一个display:none的标签来包裹. 一般而言,会使用: 不设置为type="text/javascript"的script标签 textare ...

  9. Chrome扩展移植到Edge浏览器教程

    微软在推出Edge浏览器之初,就把能够使用扩展(extension)作为一个重要功能.在Win10一周年更新版(1607)中,这项功能正式向广大用户推出(当然,Insider用户早就测试了一段时间了) ...

  10. 自己动手实现深度学习框架-8 RNN文本分类和文本生成模型

    代码仓库: https://github.com/brandonlyg/cute-dl 目标         上阶段cute-dl已经可以构建基础的RNN模型.但对文本相模型的支持不够友好, 这个阶段 ...