1. 程式人生 > 實用技巧 >Plink v0.1.0 釋出——基於Flink的流處理平臺

Plink v0.1.0 釋出——基於Flink的流處理平臺

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實戰電子書