版本說明
由於作者目前接觸當前最新版本爲2.3.4 但是官方提供的web版本未1.0.0,不兼容2.3.4,因此這裏仍然使用2.3.3版本。 可以自定義兼容處理,官方提供了文檔:https://mp.weixin.qq.com/s/Al1VmBoOKu2P02sBOTB6DQ
因爲大部分用戶使用SeaTunnel Web都是基於SeaTunnel-2.3.3 版本做的適配,而最新發布的SeaTunnel2.3.4部分API發生了改動導致直接升級的過程中會出現API不兼容的問題,所以本篇文章重點來了:我們需要對調用SeaTunnel APl的SeaTunnel Web源碼部分進行修改,修改完之後,就能完全適配2.3.4最新版本。
下載地址
Apache SeaTunnel下載
https://seatunnel.apache.org/download
SeaTunnel-web下載
https://seatunnel.apache.org/download 和SeaTunnel在相同的頁面,往下拉,最下面有下載地址:
安裝SeaTunnel
上傳壓縮包
將下載的壓縮包上傳到指定目錄下
# 在opt下創建seatunnel文件夾
mkdir /opt/seatunnel
# 用rz命令或shell工具上傳即可
解壓
tar -zxvf apache-seatunnel-2.3.3-bin.tar.gz
配置環境變量
# 編輯/etc/profile.d/my.env
vim /etc/profile.d/my.env
# 加入以下配置,具體路徑根據自己服務設定
# 加入java環境變量
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$JAVA_HOME/bin:$PATH
# 加入maven環境變量
export MAVEN_HOME=/opt/module/apache-maven-3.5.4
export PATH=$MAVEN_HOME/bin:$PATH
執行source刷新環境變量
source /etc/profile
下載JAR包
Apache SeaTunnel裏面的Connector對應的jar包需要自己下載,在執行自動下載jar包前,進入apache-seatunnel-2.3.3,查看vim bin/install-plugin.sh內容,主要內容就是下載jar包, 下載包的配置文件是:
${SEATUNNEL_HOME}/config/plugin_config
這個配置文件中不需要的可以刪掉或註釋掉,只下載自己需要的;默認是從mvvm下載,下載速度太慢,我這邊安裝了maven,並且配置了阿里雲倉庫,因此可以直接將下圖中命令替換,從maven中下載,
將 ${SEATUNNEL_HOME}/mvnw 替換爲 mvn
保存後退出
修改後:
jar包將下載下載到connectors/seatunnel這個目錄下; 執行下載命令
sh bin/install-plugin.sh
看到是從阿里雲下載的,等待下載完成即可
下載完成後將connectors下的jar包拷貝到lib下
cp connectors/seatunnel/* lib/
測試功能
cd /opt/seatunnel/apache-seatunnel-2.3.3
./bin/seatunnel.sh --config ./config/v2.batch.config.template -e local
看到這個就是執行成功,目前爲止seatunnel安裝成功
啓動服務
# 後臺啓動服務
nohup sh bin/seatunnel-cluster.sh 2>&1 &
查看日誌,打印如下日誌即成功運行:
安裝SeaTunnel-Web
解壓安裝包
tar -zxvf apache-seatunnel-web-1.0.0-bin.tar.gz
初始化數據庫
數據庫腳本在/opt/seatunnel/apache-seatunnel-web-1.0.0-bin/script
這個文件夾下,由於我Mysql是使用Docker安裝,在宿主機無法執行命令,因此無法直接在服務器端安裝,所以我將Seatunnel_server_mysql.sql
拷貝到本地,通過客戶端導入腳本 執行成功:
修改數據連接配置文件
vim conf/application.yml
下圖中更改成對應實際數據庫服務的信息:
配置Client信息
cp /opt/seatunnel/apache-seatunnel-2.3.3/config/hazelcast-client.yaml /opt/seatunnel/apache-seatunnel-web-1.0.0-bin/conf/
配置支持的插件信息
cp /opt/seatunnel/apache-seatunnel-2.3.3/connectors/plugin-mapping.properties /opt/seatunnel/apache-seatunnel-web-1.0.0-bin/conf/
配置JAR包
首先找一個數據庫驅動包放到lib目錄下:mysql-connector-java-8.0.28.jar
配置數據源JAR包
腳本地址:https://seatunnel.apache.org/assets/files/download_datasource-4b79e6fafe80459590a6a0fc2865e5ac.sh seatunnel提供了很多數據源jar包,需要下載好,否則會出現無法創建數據源等各種問題;
# 進入到/opt/seatunnel/apache-seatunnel-web-1.0.0-bin/bin下
cd /opt/seatunnel/apache-seatunnel-web-1.0.0-bin/bin
# 創建download_datasource.sh
vim download_datasource.sh
# 將上面腳本地址中的內容複製到 download_datasource.sh 中
# 授權
chmod 755 vim download_datasource.sh
# 執行下載
sh download_datasource.sh
等待下載完成即可
配置datasource開頭的jar包
# 將seatunnel的jar依賴拷貝到web的libs下
cp /opt/seatunnel/apache-seatunnel-2.3.3/lib/connector-*.jar /opt/seatunnel/apache-seatunnel-web-1.0.0-bin/libs
啓動web服務
sudo sh /opt/seatunnel/apache-seatunnel-web-1.0.0-bin/bin/seatunnel-backend-daemon.sh start
訪問web端
訪問地址:http://hadoop102:8801/ 域名需根據自己實際情況替換,端口默認8801 ,用戶名密碼默認admin/admin
本文由 白鯨開源科技 提供發佈支持!