天天看點

運維實戰:DolphinScheduler 生産環境更新

作者:滌生大資料

0、說明:本篇是基于DolphinScheduler 3.1.3更新到3.1.4版本的更新。

背景:在使用DolphinScheduler 3.1.3版本的過程中發現前端部分頁面有顯示時間差的問題,具體如下;

其他部分顯示的時間都是和本地時間一緻的,隻有任務執行個體的送出時間、開始時間、結束時間部分和本地的時間相差13個小時。通過更改頁面的時區無法實作時間的正常顯示;

此時官網已經釋出了3.1.4最新版本,且修複了一些已知的bug;于是決定更新到最新版本,看是否能解決此問題;

運維實戰:DolphinScheduler 生産環境更新

最新版本修複bug

https://github.com/apache/dolphinscheduler/releases/tag/3.1.4

運維實戰:DolphinScheduler 生産環境更新

更新準備:

1、下載下傳最新的二進制安裝包,或者通過最新的源碼編譯;

下載下傳位址:https://dolphinscheduler.apache.org/zh-cn/download/3.1.4

運維實戰:DolphinScheduler 生産環境更新

2、DolphinScheduler 中繼資料備份

DolphinScheduler 在版本的改動上是有一些不向前相容的更改,如果更新中版本的跨越涉及到,需要做對應的調整;

具體的說明可以參考官網的說明:https://dolphinscheduler.apache.org/zh-cn/docs/3.1.4/guide/upgrade/incompatible

更新過程中都會有更新失敗的風險,是以如果想在更新失敗的狀态下復原,就需要把存儲的中繼資料做備份,這裡是以mysql的資料備份為例,其他的請結合資料庫的具體情況來定;

#備份mysql整個資料庫的資料mysqldump -h${host} -u${username} -p${password} ${database_name} > ${backup_dir}/${database_name}.sql

3、修改新版本的配置

解壓最新的安裝到到特定的目錄

tar -zxvf apache-dolphinscheduler-3.1.4-bin.tar.gz -C /home/dolphin3

編輯對應的配置檔案,這裡涉及的到的配置檔案包含下面幾項,具體的内容參考《1、Dolphin3 安裝篇》;

  • install_env.sh 一鍵部署工具依賴的配置,工具将依賴此配置來部署叢集的服務節點;
  • dolphinscheduler_env.sh 服務在啟動運作中依賴的配置環境;
  • common.properties 配置檔案在每個服務元件都有用到,這裡沒有通過統一的配置檔案進行分發,需要我們分别手動配置;
  • alert-server/conf/common.properties
  • api-server/conf/common.properties
  • master-server/conf/common.properties
  • worker-server/conf/common.properties

說明:這裡隻有一處是需要修改的,就是新版本的安裝目錄的配置要和舊版本的安裝目錄不相同,具體更改如下;

cat /home/dolphin3/apache-dolphinscheduler-3.1.4-bin/bin/env/dolphinscheduler_env.sh

運維實戰:DolphinScheduler 生産環境更新

4、更新資料庫

執行資料庫的更新,需要保證“3”步驟中dolphinscheduler_env.sh 檔案中關于資料庫連結的配置和老版本的完全一緻;

另外需要下載下傳對應資料庫的驅動程式包到./tools/libs 目錄下;

使用的是mysql的話,可以直接下載下傳mysql-connector-java-8.0.16.jar 使用;

同時也需要把mysql-connector-java-8.0.16.jar拷貝到其他子產品的lib目錄下;

cd /home/dolphin3/apache-dolphinscheduler-3.1.4-bincp mysql-connector-java-8.0.16.jar alert-server/libs/cp mysql-connector-java-8.0.16.jar api-server/libs/cp mysql-connector-java-8.0.16.jar worker-server/libs/cp mysql-connector-java-8.0.16.jar master-server/libs/

執行資料庫更新腳本

注意:在執行這個步驟就需要把老叢集完全停掉了;

cd /home/dolphin3/apache-dolphinscheduler-3.1.4-binsh ./tools/bin/upgrade-schema.sh

5、啟用最新版本的服務

cd /home/dolphin3/apache-dolphinscheduler-3.1.4-bin/binsh install.sh

等待腳本執行完成,然後檢查所有的服務狀态;

cd /home/dolphin3/apache-dolphinscheduler-3.1.4-bin/binsh status-all.sh
運維實戰:DolphinScheduler 生産環境更新

6、驗證新版本功能

登入web頁面,標明時區,再次執行任務就可以正常顯示時間了。

運維實戰:DolphinScheduler 生産環境更新

總結:整體的更新過程不算很複雜,隻需要在中間的配置過程中保證配置上和老叢集保持一緻。

繼續閱讀