美文网首页
ETL工具kettleWeb端dataCollection部署记

ETL工具kettleWeb端dataCollection部署记

作者: 一切都是幻觉 | 来源:发表于2023-09-27 17:36 被阅读0次

    gitee地址:
    https://gitee.com/uxue/dataCollection
    dataCollection版本号 0.0.7

    部署系统环境 centos7

    需要用到的东西:

    1、Oracle驱动包
    链接:https://pan.baidu.com/s/10xXwfrB1s2v2mf7TXY9LZQ?pwd=6hn6 提取码:6hn6
    2、连接Mysql5.1.49驱动包
    链接:https://pan.baidu.com/s/1hs60uRIrZlEvq78mwljR8g?pwd=kamq 提取码:kamq
    3、清除log免配置版webSpoon下载
    清除缓存版本链接:链接https://pan.baidu.com/s/1LzQ1GszrXqv3qE5GQJUl5w?pwd=mmtq 提取码:mmtq

    原始下载地址:https://pan.baidu.com/s/1z76Zj7a__2b8_DEzA3_deQ 提取码: fs3s
    原始版在'\webSpoon\bin\system\karaf\caches'路径下有缓存文件
    运行tomcat时会在D盘和C盘用户路径下生成'陈钊'相关的文件
    添加了mysql-connector-java-5.1.49的驱动(原5.1.47)
    

    4、maven 3.9.4
    链接:https://pan.baidu.com/s/1oNLunvnO-eGr-cvlshBr3A?pwd=101n 提取码:101n
    5、jdk8
    链接:https://pan.baidu.com/s/1pcYpm52HzfriHxM3d5eSXg?pwd=sfoc 提取码:sfoc

    部署

    我用宝塔面板部署的,所以省略Mysql部署步骤。

    JDK部署

    可以看看这几种安装方法:https://abing.run/archives/baotainstalljdk
    centos7自带jre,jre只作运行用,在编译项目时需要jdk,所以编译会报错,要切换成jdk
    将jdk-8u131-linux-x64.tar.gz上传至/home

    cd /home
    tar -zxvf jdk-8u131-linux-x64.tar.gz -C /usr/lib/java-1.8.0
    

    *如果系统中有alternatives需要做以下切换
    alternatives的具体介绍:https://blog.csdn.net/myself88129/article/details/129991232

    #先执行以下,如果有输出,不是命令报错则往下执行
    alternatives --config java
    #往下执行
    alternatives --install /usr/bin/java java /usr/lib/java-1.8.0/jdk1.8.0_131/bin/java 3
    alternatives --config java
    3 #选择3回车切换jdk
    

    添加环境变量——JDK部署

    vim /etc/profile
    

    将以下粘入profile——JDK部署

    export JAVA_HOME=/usr/lib/java-1.8.0/jdk1.8.0_131
    export JRE_HOME=${JAVA_HOME}/jre
    export PATH=${JAVA_HOME}/bin:$PATH
    export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
    
    #刷新一下,否则命令不生效
    source /etc/profile
    

    maven部署

    mkdir /usr/local/maven
    tar -zxfv /home/apache-maven-3.9.4-bin.tar.gz -C /usr/local/maven
    
    #打开/usr/local/maven/apache-maven-3.9.4/conf/settings.xml
    #复制以下配置到161行保存关闭
        <mirror>
          <id>nexus-aliyun</id>
          <mirrorOf>central</mirrorOf>
          <name>Nexus aliyun</name>
          <url>https://maven.aliyun.com/repository/public</url>
        </mirror>
    

    添加环境变量——maven部署

    vim /etc/profile
    

    将以下粘入profile——maven部署

    export JAVA_HOME=/usr/lib/java-1.8.0/jdk1.8.0_131
    export JRE_HOME=${JAVA_HOME}/jre
    export PATH=${JAVA_HOME}/bin:$PATH
    export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
    
    #刷新一下,否则命令不生效
    source /etc/profile
    

    webSpoon部署

    mkdir -p /usr/local/ETL/required
    mkdir -p /usr/local/ETL/dispcManage
    cd /usr/local/ETL/required #以上1、3将文件传入这个目录
    tar -xvf openstack_test.tar -C /tmp
    #1 webSpoon
    sudo unzip webSpoon.zip -d /usr/local/ETL/webSpoon #将webSpoon解压到这个路径下
    

    ## dataCollection
    调度后台部署(spring boot)

    cd /usr/local/ETL/dispcManage
    git clone https://gitee.com/uxue/dataCollection.git
    cd /usr/local/ETL/dispcManage/dataCollection
    #最后的路径是上一步骤上传oracle驱动包的路径
    mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar -Dfile=/usr/local/ETL/required 
    

    数据库导入

    #将该文件夹下sql导入数据库
    /usr/local/ETL/dispcManage/dataCollection/doc/sql
    

    等待打包完成

    mkdir /usr/local/ETL/dispcManage/run
    cp /usr/local/ETL/dispcManage/dataCollection/src/main/resources/app* /usr/local/ETL/dispcManage/run
    cp /usr/local/ETL/dispcManage/dataCollection/target/dataCollection-0.0.7-SNAPSHOT.jar /usr/local/ETL/dispcManage/run
    

    修改配置文件
    application-kettle.yml

    kettle:
      log-file-path: /usr/local/ETL/dispcManage/logs/${spring.application.name}/run-logs
      encoding: utf-8
      upload-path: /usr/local/ETL/dispcManage/var/kettle-script-file
      kettle-home: /usr/local/ETL/dispcManage/var/file-rep
      kettlePluginPackages: /usr/local/ETL/webSpoon/bin/plugins
    

    application-mysql.yml

    #数据库名、用户名和密码改为自己的
    spring:
      datasource: # 数据库链接
        url: jdbc:mysql://127.0.0.1:3306/etl_dispc_manage?useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=GMT%2B8
        username: root
        password: root
        driver-class-name: org.gjt.mm.mysql.Driver
    

    application.yml

    #33行
      url: 192.168.1.100:9527/spoon/spoon#改为webSpoon地址(用于编辑时自动跳转)
    #79行
    drives-dir: /usr/local/ETL/dispcManage/drives/
    

    启动项目

    webSpoon

    cd /usr/local/ETL/webSpoon/bin
    sudo startup.sh
    

    dataCollection调度后台

    cd /usr/local/ETL/dispcManage/run
    #jdk不对会报错
    java -jar dataCollection-0.0.7-SNAPSHOT.jar
    # 后台运行方法:
    # nohup java -jar dataCollection-0.0.7-SNAPSHOT.jar &
    

    打开192.168.1.100:8080/spoon/spoon即可启动webSpoon
    打开192.168.1.100:7080/即可启动webSpoon


    遇见的错误

    1.Mysql大小写忽略

    切到MySQL配置文件挂载的目录

    cd /mysql/conf/
    

    编辑 my.cnf 配置文件

    vim my.cnf
    

    在 [mysqld] 下面添加: lower_case_table_names=1

    2.webSpoon保存ktr时报400错误

    webSpoon在保存ktr时,会遇到获取文件路径失败的问题。

    解决方案:
    在执行tomcat时,添加转义支持
    https://www.cnblogs.com/xusir/p/16138860.html

    vim tomcat/conf/catalina.properties
     
    #在最后添加两行配置
     
    tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}
    org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true
    

    4.mvn编译dataCollection时报错

    检查oracle驱动包、Mysql驱动包
    原版5.1.47我用时候报错了,所以切换成5.1.49了

    3.登录报错

    org.apache.shiro.authc.UnknownAccountException: null
    暂未解决

    相关文章

      网友评论

          本文标题:ETL工具kettleWeb端dataCollection部署记

          本文链接:https://www.haomeiwen.com/subject/qteevdtx.html