Apache DolphinScheduler 是一個大資料調度任務框架,從當前的CSDN的GitCode的熱度來看,其在二月份排名第6位,那是相當的熱門的,

Apache DolphinScheduler 是Apache旗下的開源專案,目前已經被Fork了2700次,Star了7300次;

這還是相當厲害了!其是一個云原生的可視化的大資料作業流調度系統,其使命就是致力于解決復雜大資料任務依賴,默認就支持多個大資料任務之間的資料操作的編排,
相對于其他的大資料調度框架:
- azkaban
- Airflow
- XxJob
DolphinScheduler 功能強大了不少!其支持的強大功能如下:
- 本身就支持HA
- 任務狀態、任務型別、重試次數、任務運行機器、可視化變數等關鍵資訊一目了然
- 任務佇列機制,單個機器上可調度的任務數量可以靈活配置,當任務過多時會快取在任務佇列中,不會造成機器卡死
- 任務狀態、任務型別、重試次數、任務運行機器、可視化變數等關鍵資訊一目了然
- 所有流程定義操作都是可視化的,通過拖拽任務來繪制DAG,配置資料源及資源,同時對于第三方系統,提供api方式的操作,
- 一鍵部署
- 支持暫停,恢復操作
- easyscheduler上的用戶可以通過租戶和hadoop用戶實作多對一或一對一的映射關系,這對大資料作業的調度是非常重要的,
- 支持傳統的shell任務,同時支持大資料平臺任務調度: MR、Spark、SQL(mysql、postgresql、hive、sparksql)、Python、Procedure、Sub_Process
- 調度器使用分布式調度,整體的調度能力會隨便集群的規模線性增長,Master和Worker支持動態上下線
其基本架構如下,從下圖可以看出,其主要包括下面的組件:
- UI
- API 網關
- Master 服務器
- Worker 服務器
- DB(MySQL,PostgreSQL)
- Zookeeper

其啟動流程活動圖如下:

DolphinScheduler提供3種部署模式:
1. 單節點部署模式
主要是看看DolphinScheduler提供了哪些功能,感受一下DolphinScheduler的功能
-
偽集群模式
在單一服務器上部署多個集群,在測驗環境下經常用到此模式,其需要連接資料庫 -
在生產環境部署
支持兩個模式:
3.1 在多個服務器上集群部署
3.2 在K8S里面部署
下面筆者部署一個簡單的單節點服務器(筆者的機器是CentOs 7 64bit):
步驟1 下載并安裝JDK 1.8+
步驟2 下載DolphinScheduler
當前的最新版本是2.0.3

wget https://dlcdn.apache.org/dolphinscheduler/2.0.3/apache-dolphinscheduler-2.0.3-bin.tar.gz --no-check-certificate
步驟3 解壓縮tar包并啟動
tar -xvzf apache-dolphinscheduler-*-bin.tar.gz
cd apache-dolphinscheduler-*-bin
sh ./bin/dolphinscheduler-daemon.sh start standalone-server
步驟4 輸入地址 http://<host_name>:12345/dolphinscheduler
默認密碼是: admin/dolphinscheduler123
步驟5 查看主界面

步驟6 創建專案并定義作業流

從作業流的工具列來看,其支持:
- Shell
- SUB_Process
- Procedure
- SQL
- Spark
- Flink
- MR
- Python
- Dependent
- HTTP
- DATAX
- PEGEON
- SQOOP
- Conditions
- Switch
- WATERDROP
由此可見,其支持的大資料的功能模塊還是非常豐富多彩的!
另外值得一提的是,其也支持多租戶! 這在一些業務環境里面還是非常有用的!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/423361.html
標籤:其他
上一篇:Maven build Compilation error : Failed to execute goal org.apache.maven.plugins:maven-compiler-plugi
下一篇:軟考高項筆記 | 大資料
