seatunnel及web的正常安裝流程見
Seatunnel及web搭建流程-CSDN博客
一步一步按照以上博客流程進(jìn)行安裝,正常情況下能順利跑通seatunnel及web的demo。
此博客為安裝過(guò)程中遇到的一些棘手問(wèn)題總結(jié)。
常見錯(cuò)誤問(wèn)題
正常安裝后,都會(huì)遇到報(bào)錯(cuò),下面是總結(jié)的一些常見的異常問(wèn)題
1.java.lang.NoClassDefFoundError: com/sun/jersey/client/impl/CopyOnWriteHashMap
主要原因是,hadoop相關(guān)的jar包找不到,需要將jar包放到lib下。
將seatunnel-hadoop3-3.1.4-uber-2.3.3-optional.jar放到seatunnel的lib包下即可。下載方法見文章后面的詳細(xì)介紹。
2.SqlServer-cdc的jar包安全問(wèn)題
使用高版本的mssql的jdbc的jar包時(shí),有安全檢查機(jī)制,會(huì)導(dǎo)致進(jìn)行使用seatunnel的sqlserver-cdc時(shí)報(bào)異常:
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
我使用的是mssql-jdbc-11.2.3.jre8.jar,結(jié)果一直報(bào)異常,添加了trustServerCertificate=true;encrypt=true參數(shù)也會(huì)報(bào)錯(cuò)(只針對(duì)seatunnel的SqlServer-cdc場(chǎng)景,在jdbc場(chǎng)景使用此jar包正常),經(jīng)過(guò)查看源碼與issue,發(fā)現(xiàn)源碼中是低版本mssql-jdbc-9.4.1.jre8.jar,替換此jar包后SqlServer-cdc在SqlServer2016上能夠?qū)崿F(xiàn)cdc功能。
有的同學(xué)使用的是mssgl-jdbc-9.2.0.jre8.jar,也可以實(shí)現(xiàn)SqlServer-cdc功能。
jar包下載地址Central Repository: com/microsoft/sqlserver/mssql-jdbc
3.SqlServer 2016無(wú)法開啟表的cdc
安裝流程CDC 任務(wù)數(shù)據(jù)源權(quán)限配置 - SqlServer 權(quán)限配置 - 《EasyData用戶手冊(cè)》進(jìn)行開啟SqlServer 2016的cdc功能時(shí),遇到問(wèn)題是:可以開啟SqlServer的庫(kù)的cdc,但是在開啟表的cdc時(shí),一直無(wú)法執(zhí)行成功,一個(gè)可能得原因是,計(jì)算機(jī)的名稱發(fā)生了變化,需要將計(jì)算機(jī)的名稱還原到安裝SqlServer 2016的時(shí)候的名稱。
sql - 在表級(jí)別啟用CDC時(shí)出錯(cuò) - Thinbug
mvn加速下載seatunnel相關(guān)jar包
安裝seatunnel過(guò)程中,解壓文件后官方默認(rèn)提供的connector的jar包只有2個(gè),要想連接mysql,oracle,SqlServer,hive,kafka,clickhouse,doris等時(shí),還需下載對(duì)應(yīng)的jar包。
如果機(jī)器可以連接外網(wǎng),可使用命令方式sh bin/install-plugin.sh直接下載,這個(gè)命令會(huì) 自動(dòng)下載文件apache-seatunnel-2.3.3/connectors/plugin-mapping.properties中指定的所有connector的jar包,每個(gè)人可根據(jù)自己情況自行增減需要的connector依賴包。
加速下載connector相關(guān)jar包
seatunnel下載connector的jar時(shí),使用mvnw來(lái)下載jar包,而且是從https://repo.maven.apache.org 下載,速度及其緩慢,且公司機(jī)器不能上外網(wǎng),改用自己windows本地的mvn,從阿里云mvn源下載。
?
修改其安裝插件相關(guān)腳本,復(fù)制bin目錄下install-plugin.sh重命名為install-plugin-mvn.sh
替換腳本中的${SEATUNNEL_HOME}/mvnw為mvn,即可使用本地mvn,配合阿里云的mvn源,可加速下載。
然后執(zhí)行install-plugin-mvn.sh即可。原本2個(gè)小時(shí)沒(méi)有下載完成的,改寫后幾分鐘下載完成了。
將下載后的jar包復(fù)制到connectors/seatunnel/下即完成connector的jar包補(bǔ)充。
注意:在安裝seatunnel的時(shí)候可能會(huì)出現(xiàn)java.lang.NoClassDefFoundError錯(cuò)誤,大部分時(shí)候是因?yàn)槿鄙賏pache hadoop的jar包,在執(zhí)行install-plugin-mvn.sh的時(shí)候會(huì)下載一個(gè)jar包seatunnel-hadoop3-3.1.4-uber-2.3.3-optional.jar,存放于上一級(jí)目錄的lib文件夾下,如果是在其他路徑下載jar包,將下載的seatunnel-hadoop3-3.1.4-uber-2.3.3-optional.jar放在seatunnel的lib文件夾下,然后就可以解決這個(gè)問(wèn)題了。
datasource相關(guān)jar包
安裝好seatunnel-web1.0.0后,新建數(shù)據(jù)源時(shí),無(wú)下拉框和數(shù)據(jù)源選項(xiàng),
?查找資料中官方大佬給出的解決方式如下:
[Improve] Add "download_datasource.sh" for downloading datasource. by FlechazoW · Pull Request #136 · apache/seatunnel-web · GitHub
注意,這里的解決方式需要下載最新的seatunnel-web源代碼,執(zhí)行download_datasource.sh下載數(shù)據(jù)源jar包
查看源代碼,也是使用mvnw的方式下載,windows上進(jìn)行修改
download_datasource.sh復(fù)制到?D:\jar\seatunnel\script后改名為download_datasource-mvn.sh,替換"$SEATUNNEL_WEB_HOME"/mvnw為本地環(huán)境變量中配置好的mvn
執(zhí)行sh download_datasource-mvn.sh命令就會(huì)將jar包下載到相應(yīng)為文件夾中
下載完成后,將相應(yīng)的jar包放置到apache-seatunnel-web的libs下,重啟之后,顯示正常
注意事項(xiàng)
元數(shù)據(jù)和數(shù)據(jù)源的jar包還需要要復(fù)制到后端lib文件夾/opt/seatunnel/backend/apache-seatunnel-2.3.3/lib
否則在配置好web任務(wù)時(shí),后臺(tái)根本不執(zhí)行!?。?/p>
相關(guān)問(wèn)題
1.配置阿里云mvn源加速
?如何配置的阿里云mvn源
Maven如何配置阿里鏡像及安裝全步驟_maven配置阿里云鏡像-CSDN博客
2.如何在windows環(huán)境下執(zhí)行shell命令
因?yàn)樗衛(wèi)inux機(jī)器不能外網(wǎng),先在windows下執(zhí)行shell腳本,下載jar包,然后復(fù)制到相關(guān)機(jī)器即可。如何在windows下執(zhí)行shell命令,可參考下面的文章。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-778200.html
Windows中運(yùn)行Linux命令的6種方法https://www.eet-china.com/mp/a228539.html文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-778200.html
到了這里,關(guān)于seatunnel及web安裝常見問(wèn)題與解決方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!