SeaTunnel的前身是Waterdrop,并于2021年10月12日更名为SeaTunnel。
那么,SeaTunnel是什么? SeaTunnel是下一代超高性能、分布式、海量数据集成工具。它每天可以稳定高效地同步数百亿个数据,并已在许多公司的生产中使用。SeaTunnel-web为SeaTunnel提供可视化界面,方便用户使用Apache SeaTunnel。
如果你想知道更多关于SeaTunnel的设计。 👉🏻设计
注意:一些细节请参考 docs/QuickStart.md
因为SeaTunnel Web使用SeaTunnel Java客户端来提交作业,所以运行SeaTunnel Web需要首先准备SeaTunnel Zeta Engine服务。
根据SeaTunnel Zeta Engine的使用要求,提交作业的SeaTunnel Client节点必须与运行作业的SeaTunnel Server节点具有相同的操作系统和安装目录结构。比如如果你想在本地IDEA中运行SeaTunnel Web,你必须在与IDEA相同的机器上安装和运行SeaTunnel Zeta引擎服务器。
别担心,接下来的步骤将告诉您如何在不同情况下正确安装SeaTunnel Zeta Engine Server。
如果您想部署和运行SeaTunnel Web,请转到 [3 Run SeaTunnel Web In Server](#3 Run SeaTunnel Web In Server)
有两种方法可以获得SeaTunnel安装包。从源代码构建或从SeaTunnel网站下载。
此处使用的SeaTunnel版本仅用于编写本文档以向您展示所使用的过程,并不一定代表正确的版本。SeaTunnel Web和SeaTunnel Engine有严格的版本依赖关系,您可以通过确认具体的版本对应关系。现在只支持在本地构建SeaTunnel Web和SeaTunnel Zeta Engine,因为有必要确保SeaTunnel Web中的SeaTunnel-api与SeaTunnel Zeta Engine中的版本相同
./mvnw -U -T 1C clean install -DskipTests -D"maven.test.skip"=true -D"maven.javadoc.skip"=true -D"checkstyle.skip"=true -D"license.skipAddThirdParty"
ST_WEB_BASEDIR_PATH
来表示数据源shade包的位置。将使用自定义类加载器来基于此加载数据源shade包。例如:ST_WEB_BASEDIR_PATH=/seatunnel-web-dist/target/apache-seatunnel-web-1.0.0-SNAPSHOT/
然后你可以在${Your_code_dir}/seatunnel-dist/target
下获取安装包,例如:apache-seatunnel-2.3.3-SNAPSHOT-bin.tar.gz
。tar -zxvf apache-seatunnel-2.3.3-SNAPSHOT-bin.tar.gz
解压安装包。cd apache-seatunnel-2.3.3-SNAPSHOT & sh bin/seatunnel-cluster.sh -d
运行SeaTunnel Zeta Engine Server。下载安装包并部署SeaTunnel Zeta Engine Server的另一种安装方式是从https://seatunnel.apache.org/download 下载安装包并部署。
cd apache-seatunnel-2.3.2 & sh bin/seatunnel-cluster.sh -d
运行seattunnel Zeta Engine Server。编辑 seatunnel-server/seatunnel-app/src/main/resources/script/seatunnel_server_env.sh
文件, 填写已安装的数据库 address, port, username, and password. 下面是一个例子:
export HOSTNAME="localhost" export PORT="3306" export USERNAME="root" export PASSWORD="123456"
执行命令 sh seatunnel-server/seatunnel-app/src/main/resources/script/init_sql.sh
如果运行过程中没有错误,则说明初始化成功。
sh build.sh code
seatunnel-server/seatunnel-app/src/main/resources/application.yml
写数据库连接信息apache-seatunnel-2.3.3-SNAPSHOT/connectors/plugin-mapping.properties
文件 到 seatunnel-web/seatunnel-server/seatunnel-app/src/main/resources
目录.seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/SeatunnelApplication.java
如果没有报错,说明seatunnel web后端服务启动成功。注意,你必须设置 -DSEATUNNEL_HOME=${your_seatunnel_install_path}
像这样:由于数据源插件是动态加载的,所以需要设置相关的环境变量:
cd seatunnel-ui npm install npm run dev
如果操作正常,系统显示如下信息:
➜ Local: http://127.0.0.1:5173/ ➜ Network: use --host to expose ➜ press h to show help
在浏览器中访问 http://127.0.0.1:5173/login
, 默认用户名和密码是 admin/admin
要在服务器上运行SeaTunnel Web,首先需要有一个SeaTunnel Zeta引擎服务器环境。如果还没有,可以参考以下步骤进行部署。
有两种方法可以获得SeaTunnel安装包。从源代码构建或从SeaTunnel网站下载。
此处使用的SeaTunnel版本仅用于编写本文档以向您展示所使用的过程,并不一定代表正确的版本。SeaTunnel Web和SeaTunnel Engine有严格的版本依赖关系,您可以通过xxx确认具体的版本对应关系
./mvnw -U -T 1C clean install -DskipTests -D"maven.test.skip"=true -D"maven.javadoc.skip"=true -D"checkstyle.skip"=true -D"license.skipAddThirdParty"
${您的代码目录}/seatunnel-dist/target
中获得安装包,例如:apache-seatunnel-2.3.3-SNAPSHOT-bin.tar.gz
获取 SeaTunnel Zeta 引擎服务安装包的另一种方式是从 https://seatunnel.apache.org/download 下载安装包并在线安装插件。
tar -zcvf apache-seatunnel-2.3.3-SNAPSHOT-bin.tar.gz apache-seatunnel-2.3.3-SNAPSHOT
在完成 3.1.1 或 3.1.2 后您可以获得一个安装包 apache-seatunnel-2.3.3-SNAPSHOT-bin.tar.gz
,然后您可以将其复制到服务器节点并参考 https://seatunnel.apache.org/docs/seatunnel-engine/deployment 进行部署。
如果您使用 SeaTunnel Web,您需要在 SeaTunnel Web 运行节点部署一个 SeaTunnel Zeta 客户端。如果 SeaTunnel Zeta 服务端和 SeaTunnel Web 在同一节点,您可以跳过此步骤。
apache-seatunnel-2.3.3-SNAPSHOT-bin.tar.gz
复制到 SeaTunnel Web 节点并解压,解压到与 SeaTunnel Zeta 服务端节点相同的路径下。SEATUNNEL_HOME
环境变量。hazelcast-client.yaml
。$SEATUNNEL_HOME/bin/seatunnel.sh --config $SEATUNNEL_HOME/config/v2.batch.config.template
,如果该作业运行结束,表示客户端部署成功。cd seatunnel-web sh build.sh code
然后您可以在 seatunnel-web/seatunnel-web-dist/target/apache-seatunnel-web-${project.version}.tar.gz
目录中获得安装包。
将 apache-seatunnel-web-${project.version}.tar.gz
复制到服务器节点并解压。
tar -zxvf apache-seatunnel-web-${project.version}.tar.gz ```shell tar -zxvf apache-seatunnel-web-${project.version}.tar.gz
编辑 apache-seatunnel-web-${project.version}/script/seatunnel_server_env.sh
文件, 填写已安装的数据库 address, port, username, and password. 例如:
export HOSTNAME="localhost" export PORT="3306" export USERNAME="root" export PASSWORD="123456"
运行初始化脚本 sh apache-seatunnel-web-${project.version}/script/init_sql.sh
如果操作过程中没有错误,表示初始化成功。
apache-seatunnel-web-${project.version}/conf/application.yml
在文件中填写数据库连接信息和数据服务接口相关信息。$SEATUNNEL_HOME/config/hazelcast-client.yaml
到 apache-seatunnel-web-${project.version}/conf/
apache-seatunnel-2.3.3-SNAPSHOT/connectors/plugin-mapping.properties
文件到 apache-seatunnel-web-${project.version}/conf/
目录.cd apache-seatunnel-web-${project.version} sh bin/seatunnel-backend-daemon.sh start
在浏览器中访问 http://127.0.0.1:8801/ui/ , 默认用户名和密码是 admin/admin.
完成所有前置工作后,我们可以打开以下网址: http://127.0.0.1:7890(请根据您的配置替换)来使用它。
现在,让我向您展示如何使用它。