可以在线看黄的网站-可以免费在线看黄的网站-可以免费看污视频的网站-可以免费看毛片的网站-欧美电影免费看大全-欧美电影免费

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

一飛開源,介紹創意、新奇、有趣、實用的免費開源應用、系統、軟件、硬件及技術,一個探索、發現、分享、使用與互動交流的開源技術社區平臺。致力于打造活力開源社區,共建開源新生態!

一、開源項目簡介

巨鯨任務調度平臺為美柚大數據研發的分布式計算任務調度系統,提供spark、Flink等批處理任務的DAG調度和流處理任務的運行管理和狀態監控,并具有Yarn應用管理、重復應用檢測、大內存應用檢測等功能。 服務基于Spring Boot 2.0開發,打包后即可運行。

二、開源協議

使用Apache-2.0開源協議

三、界面展示

初始配置

  • 打開:http://localhost:17070

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

  • 輸入賬號admin,密碼admin
  • 點擊:權限管理->用戶管理,修改當前賬號的郵箱為合法且存在的郵箱地址,否則會導致郵件發送失敗
  • 添加集群集群管理->集群管理->新增

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

“yarn管理地址”為Yarn ResourceManager的WEB UI地址“程序包存儲目錄”為程序包上傳至hdfs集群時的存儲路徑,如:/data/big-whale/storage“支持Flink任務代理用戶”“流處理任務黑名單”和“批處理任務黑名單”為內部定制的任務分配規則,勿填

  • 添加集群用戶集群管理->集群用戶->新增

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

該配置的語義為:平臺用戶在所選集群下可以使用的Yarn資源隊列(–queue)和代理用戶(–proxy-user)

  • 添加代理集群管理->代理管理->新增

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

可添加多個實例(僅支持IP地址,可指定端口號,默認為22),執行腳本的時候會隨機選擇一個實例執行,在實例不可達的情況下,會繼續隨機選擇下一個實例,在實例均不可達時執行失敗選擇集群后,會作為該集群下提交Spark或Flink任務的代理之一

  • 添加計算框架版本集群管理->版本管理->新增

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

同一集群下不同版本的Spark或Flink任務的提交命令可能有所不同,如Spark 1.6.0版本的提交命令為spark-submit,Spark 2.1.0版本的提交命令為spark2-submit

使用

1.離線調度

1.1 新增

  • 目前支持“Shell”、“Spark Batch”和“Flink Batch”三種類型的批處理任務
  • 通過拖拽左側工具欄相應的批處理任務圖標,可添加相應的DAG節點

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

支持時間參數${now} ${now – 1d} ${now – 1h@yyyyMMddHHmmss}等(d天、h時、m分、s秒、@yyyyMMddHHmmss為格式化參數)非“Shell”類型的批處理任務應上傳與之處理類型相對應的程序包,此處為Spark批處理任務打成的jar包“資源選項”可不填代碼有兩種編輯模式,“可視化視圖”和“代碼視圖”,可互相切換點擊“測試”可測試當前節點是否正確配置并可以正常運行為防止平臺線程被大量占用,平臺提交Saprk或Flink任務的時候都會強制以“后臺”的方式執行,對應spark配置:–conf spark.yarn.submit.waitAppCompletion=false,flink配置:-d,但是基于后臺“作業狀態更新任務”的回調,在實現DAG執行引擎時可以確保當前節點所提交的任務運行完成后再執行下一個節點的任務

  • DAG節點支持失敗重試
  • 將節點按照一定的順序連接起來可以構建一個完整的DAG

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

  • DAG構建完成后,點擊“保存”,完成調度設置

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

1.2 操作

  • 打開離線調度列表

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

  • 點擊左側操作欄“調度實例”可查看調度實例列表、運行狀態和節點啟動日志

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

  • 點擊左側操作欄“手動執行”可觸發調度執行

2.實時任務

2.1 新增

  • 目前支持“Spark Stream”和“Flink Stream”兩種類型的流處理任務

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

  • 啟用監控可以對任務進行狀態監控,包括異常重啟、批次積壓告警等

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

2.2 操作

  • 打開實時任務列表

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

  • 點擊左側操作欄“日志”可查看任務啟動日志
  • 點擊左側操作欄“執行”可觸發任務啟動

3.任務告警

  • 正確配置郵件或釘釘告警后在任務運行異常時會發送相應的告警郵件或通知,以便及時進行相應的處理

<巨鯨任務告警>代理: agent1類型: 腳本執行失敗用戶: admin任務: 調度示例1 - shell_test時間: 2021-03-05 15:18:23

<巨鯨任務告警>集群: 集群1類型: spark離線任務異常(FAILED)用戶: admin任務: 調度示例1 - spark_test時間: 2021-03-05 15:28:33

<巨鯨任務告警>集群: 集群1類型: spark實時任務批次積壓,已重啟用戶: admin任務: sparkstream_test時間: 2021-03-05 15:30:41

  • 除上述告警信息外還有其他告警信息此處不一一列舉

四、功能概述

特性

  • 基于SSH的腳本執行機制,部署簡單快捷,僅需單個服務
  • 基于Yarn Rest Api的任務狀態同步機制,對Spark、Flink無版本限制
  • 支持失敗重試
  • 支持任務依賴
  • 支持復雜任務編排(DAG)
  • 支持流處理任務運行管理和監控
  • 支持Yarn應用管理

五、技術選型

1.架構圖

[開源]大數據研發的分布式計算任務調度系統,基于Spring Boot 開發

部署

1.準備

  • java 1.8
  • Mysql 5.1.0
  • 下載項目或git clone項目
  • 為解決 github README.md 圖片無法正常加載的問題,請在hosts文件中加入相關域名解析規則,參考:hosts

2.安裝

  • 創建數據庫:big-whale
  • 運行數據庫腳本:big-whale.sql
  • 根據Spring Boot環境,配置相關數據庫賬號密碼,以及SMTP信息
  • 配置:big-whale.properties配置項說明ssh.user: 擁有腳本執行權限的ssh遠程登錄用戶名(平臺會將該用戶作為統一的腳本執行用戶)ssh.password: ssh遠程登錄用戶密碼dingding.enabled: 是否開啟釘釘告警dingding.watcher-token: 釘釘公共群機器人Tokenyarn.app-memory-threshold: Yarn應用內存上限(單位:MB),-1禁用檢測yarn.app-white-list: Yarn應用白名單列表(列表中的應用申請的內存超過上限,不會進行告警)
  • 修改:$FLINK_HOME/bin/flink,參考:flink(因flink提交任務時只能讀取本地jar包,故需要在執行提交命令時從hdfs上下載jar包并替換腳本中的jar包路徑參數)
  • 打包:mvn clean package

3.啟動

  • 檢查端口17070是否被占用,被占用的話,關閉占用的進程或修改項目端口號配置重新打包
  • 拷貝target目錄下的big-whale.jar,執行命令:java -jar big-whale.jar

六、源碼地址

訪問一飛開源:https://code.exmay.com/

相關新聞

聯系我們
聯系我們
在線咨詢
分享本頁
返回頂部