SeaTunnel Web安装 一把成
安装相关jar包,以及SeaTunnel 和Web 打成的包,可以直接使用,但是需要安装MySQL客户端的分享:
链接:https://pan.baidu.com/s/1qrt1RAX38SgIpNklbQJ7pA
提取码:0kmf
1. 环境准备
| 环境名称 | 版本 |
| 系统环境 | CentOS7.9 |
| Java环境 | JDK1.8 |
1.1 系统环境
略
1.2 Java环境安装
下载jdk1.8安装包并拷贝到服务器
# 进入文件夹
cd /usr/local
# 将jdk拷贝到该位置
# 解压文件
tar -zxvf jdk-8u381-linux-x64.tar.gz
修改环境变量
vim /etc/profile
在环境变量中添加Java环境
export JAVA_HOME=/usr/local/jdk1.8.0_381/
export CLASSPATH=$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
重新加载环境变量
source /etc/profile
验证Java环境
java -version
1.3 SeaTunnel单节点安装
下载安装包
下载地址:
Apache SeaTunnel
下载SeaTunnel安装包

下载SeaTunnel Web安装包

创建安装SeaTunnel 目录
# 创建用于安装SeaTunnel 后台引擎的目录
mkdir -p /opt/seatunnel/backend
# 创建用户安装SeaTunnel Web前台页面的目录
mkdir -p /opt/seatunnel/web
拷贝并安装SeaTunnel
# 进入到SeaTunnel 后台安装目录,将下载好的安装包拷贝到该目录
[root@localhost backend]# pwd
/opt/seatunnel/backend
[root@localhost backend]# ls
apache-seatunnel-2.3.3-bin.tar.gz
# 安装SeaTunnel 后台
tar -zxvf apache-seatunnel-2.3.3-bin.tar.gz# 进入到SeaTunnel Web页面程序安装目录,将下载号的安装包拷贝到该目录
[root@localhost web]# pwd
/opt/seatunnel/web
[root@localhost web]# ls
apache-seatunnel-web-1.0.0-bin.tar.gz
# 安装SeaTunnel Web页面程序
tar -zxvf apache-seatunnel-web-1.0.0-bin.tar.gz
将SeaTunnel 后台配置到环境变量中
# 打开环境变量文件
vim /etc/profile# 在环境变量文件最后添加如下配置
export SEATUNNEL_HOME=/opt/seatunnel/backend/apache-seatunnel-2.3.3
export PATH=$PATH:$SEATUNNEL_HOME/bin# 重新加载环境变量文件
source /etc/profile
安装需要的连接器
# 进入到seatunnel 安装目录下
[root@localhost seatunnel]# cd apache-seatunnel-2.3.3
# 进入到插件配置文件中
[root@localhost apache-seatunnel-2.3.3]# vim config/plugin_config
# 删除多余连接器,留下需要用到的连接器
--connectors-v2--
connector-cdc-mysql
connector-cdc-sqlserver
connector-doris
connector-elasticsearch
connector-jdbc
--end--
# 退出保存连接器配置文件
:qw
# 在线安装拦截器
[root@localhost apache-seatunnel-2.3.3]# sh bin/install-plugin.sh
# 等待安装,安装完成后可查看已经安装的连接器
[root@localhost apache-seatunnel-2.3.3]# ls connectors/seatunnel/*
connectors/seatunnel/connector-cdc-mysql-2.3.3.jar
connectors/seatunnel/connector-cdc-sqlserver-2.3.3.jar
connectors/seatunnel/connector-console-2.3.3.jar
connectors/seatunnel/connector-doris-2.3.3.jar
connectors/seatunnel/connector-elasticsearch-2.3.3.jar
connectors/seatunnel/connector-fake-2.3.3.jar
connectors/seatunnel/connector-jdbc-2.3.3.jar
注意:
connector-jdbc 连接器可以连接多种使用JDBC进行连接的多种数据库,如下:
| MySQL、PostgreSQL、DM、Phoenix 、SQLServer、Oracle、sqlite、GBase8a、StarRocks、db2、saphana、Doris、teradata、Redshift、Snowflake、Vertica、OceanBase |
拷贝需要的数据库连接jar包
# 进入SeaTunnel 后台安装目录
cd /opt/seatunnel/backend/apache-seatunnel-2.3.3
# 创建连接器对应的目录,用于存放数据库连接驱动
[root@localhost apache-seatunnel-2.3.3]# mkdir -p plugins/jdbc/lib/
# 将下载的数据库连接包上传到该目录下
[root@localhost lib]# pwd
/opt/seatunnel/backend/apache-seatunnel-2.3.3/plugins/jdbc/lib
[root@localhost lib]# ls
mysql-connector-java-8.0.28.jar ojdbc8.jar postgresql-42.6.0.jar
数据库连接包下载地址:
| 数据库 | 下载地址 |
| mysql | https://mvnrepository.com/artifact/mysql/mysql-connector-java |
| oracle | https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc8 |
| postgresql | https://mvnrepository.com/artifact/org.postgresql/postgresql |
| doris | https://mvnrepository.com/artifact/mysql/mysql-connector-java |
测试验证
# 进入SeaTunnel 后台安装目录
cd /opt/seatunnel/backend/apache-seatunnel-2.3.3
# 跑样例脚本
sh bin/seatunnel.sh --config config/v2.batch.config.template -e local
出现以下信息表示验证成功



后台启用服务
# 进入SeaTunnel 后台安装目录
cd /opt/seatunnel/backend/apache-seatunnel-2.3.3
# 启动服务
nohup sh bin/seatunnel-cluster.sh 2>&1 &
查看SeaTunnel 运行日志
# 查看SeaTunnel运行日志
tail -100f logs/seatunnel-engine-server.log
日志中有以下信息表示后台启动成功

1.4 安装SeaTunnel Web
注意:必须保证SeaTunnel的后台引擎服务正常运行,Web端才可以正常运行。
安装MySQL客户端
因为SeaTunnel Web 需要连接到MySQL数据库,并初始化数据库,所以需要安装MySQL Client。
# 先检查服务器中是否存在mariadb
rpm -qa|grep mariadb
#删除相关依赖包(若不存在,可以跳过)
rpm -e --nodeps mariadb-libs
#检查是否删除干净
rpm -qa|grep mariadb
# 检查MySQL
rpm -qa|grep mysql# 创建一个目录用于存放MySQL Client 安装文件
mkdir -p /opt/mysqlrpm
# 将安装包拷贝到该目录下
[root@localhost mysqlrpm]# pwd
/opt/mysqlrpm
[root@localhost mysqlrpm]# ls
lrzsz-0.12.20-36.el7.x86_64.rpm
mysql-community-client-5.7.40-1.el7.x86_64.rpm
mysql-community-common-5.7.40-1.el7.x86_64.rpm
mysql-community-libs-5.7.40-1.el7.x86_64.rpm
# 安装lrzsz
rpm -ivh lrzsz-0.12.20-36.el7.x86_64.rpm
# 按照顺序安装MySQL Client
rpm -ivh mysql-community-common-5.7.40-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.40-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.40-1.el7.x86_64.rpm
修改SeaTunnel Web 下script/seatunnel_server_env.sh中连接数据库信息
# 进入到SeaTunnel Web 安装目录
cd /opt/seatunnel/web/apache-seatunnel-web-1.0.0-bin
# 备份script/seatunnel_server_env.sh文件
cp script/seatunnel_server_env.sh script/seatunnel_server_env.sh.bak
# 修改script/seatunnel_server_env.sh文件
vim script/seatunnel_server_env.sh
# 修改以下配置信息
export HOSTNAME="127.0.0.1"
export PORT="3306"
export USERNAME="root"
export PASSWORD="123456"
# 修改如下,加上了前缀,以防与系统中其它配置冲突
# 将数据库连接信息修改成你要链接的信息
export STWEB_HOSTNAME="127.0.0.1"
export STWEB_PORT="3306"
export STWEB_USERNAME="root"
export STWEB_PASSWORD="123456"
修改SeaTunnel Web 下script/init_sql.sh 中连接数据库信息
vim script/init_sql.sh
主要是保证里边的${XXXXX}的配置信息与script/seatunnel_server_env.sh中的保持一致。

执行数据库初始化脚本
# 进入SeaTunnel Web 安装目录
cd /opt/seatunnel/web/apache-seatunnel-web-1.0.0-bin
# 执行初始化文件
sh script/init_sql.sh
修改SeaTunnel Web 连接MySQL数据库的配置信息
# 进入SeaTunnel Web 安装目录
cd /opt/seatunnel/web/apache-seatunnel-web-1.0.0-bin
# 打开SeaTunnel Web 配置文件
vim conf/application.yml
# 修改以下部分配置:端口号,MySQL连接IP,MySQL用户名和密码
server:#port: 8801port: 8882spring:application:name: seatunneljackson:date-format: yyyy-MM-dd HH:mm:ssdatasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://192.168.1.111:3306/seatunnel?useSSL=false&useUnicode=true&characterEnc
oding=utf-8&allowMultiQueries=true&allowPublicKeyRetrieval=true username: rootpassword: 123456
配置client信息
# 将seatunnel后台的两个文件拷贝到web的conf目录下
cp /opt/seatunnel/backend/apache-seatunnel-2.3.3/config/hazelcast-client.yaml conf/
cp /opt/seatunnel/backend/apache-seatunnel-2.3.3/connectors/plugin-mapping.properties conf/
下载Web程序需要的数据源(数据源需要的各种jar包)
这里在各种jar包,如果缺失的话,在Web页面创建数据源时会出现空数据源的情况。
下载jar包
首先你自己的电脑上安装了github

下载jar包额度脚本
我是在我电脑的D盘根目录下,创建了download_datasource.sh文件,文件内容如下:
有两处需要修改,请看注释。
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
##This script is used to download the connector plug-ins required during the running process.
#All are downloaded by default. You can also choose what you need.
#You only need to configure the plug-in name in config/plugin_config.# get seatunnel web home
# SEATUNNEL_WEB_HOME=$(cd $(dirname $0);cd ../;pwd)
# 此处需要修改成你本地的目录
DATASOURCE_DIR=D:/down_jars# If you don’t want to download a certain data source, you can delete the element below
datasource_list=("datasource-plugins-api""datasource-elasticsearch""datasource-hive""datasource-jdbc-clickhouse""datasource-jdbc-hive""datasource-jdbc-mysql""datasource-jdbc-oracle""datasource-jdbc-postgresql""datasource-jdbc-redshift""datasource-jdbc-sqlserver""datasource-jdbc-starrocks""datasource-jdbc-tidb""datasource-kafka""datasource-mysql-cdc""datasource-s3""datasource-sqlserver-cdc""datasource-starrocks"
)# the datasource default version is 1.0.0, you can also choose a custom version. eg: 1.1.2: sh install-datasource.sh 2.1.2
version=1.0.0if [ -n "$1" ]; thenversion="$1"
fiecho "Downloading SeaTunnel Web Datasource lib, usage version is ${version}"# create the datasource directory
if [ ! -d "$DATASOURCE_DIR" ];thenmkdir -p "$DATASOURCE_DIR"echo "Created datasource directory."
fifor i in "${datasource_list[@]}"
doecho "$i"echo "Downloading datasource: " "$i"
# 修改成mvnmvn dependency:get -DgroupId=org.apache.seatunnel -DartifactId="$i" -Dversion="$version" -Ddest="$DATASOURCE_DIR"
done
之后在download_datasource.sh目录下点击鼠标右键,选择Git Bash Here

之后在打开的页面执行 sh download_datasource.sh 点击回车,等待下载完成。

之后将下载下来的包,拷贝到SeaTunnel Web 程序的 /libs目录下。
将MySQL Jar 包拷贝到libs目录下
将mysql连接数据库的Jar 拷贝到 /libs 目录下,否则Web程序启动时会报错,连不上数据库。
启动SeaTunnel Web 程序
# 进入SeaTunnel Web 安装目录
cd /opt/seatunnel/web/apache-seatunnel-web-1.0.0-bin
# 启动SeaTunnel Web
sh bin/seatunnel-backend-daemon.sh start
# 查看启动日志
tail -100f logs/seatunnel-web.log
配置开放端口号(两种方式)
#-------------iptables-----------------
#开打端口号开放配置文件
vim /etc/sysconfig/iptables
# 添加一行
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8882 -j ACCEPT
# 重启启动防火墙
systemctl restart iptables.service
#------------firewall-------------------
# 依次执行下面命令
firewall-cmd --zone=public --add-port=8882/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-all
查看日志文件
访问SeaTunnel Web
http://192.168.182.166:8882
默认用户名密码:admin/admin

到此为止SeaTunnel 与SeaTunnel Web 已经安装完成。
相关文章:
SeaTunnel Web安装 一把成
安装相关jar包,以及SeaTunnel 和Web 打成的包,可以直接使用,但是需要安装MySQL客户端的分享: 链接:https://pan.baidu.com/s/1qrt1RAX38SgIpNklbQJ7pA 提取码:0kmf 1. 环境准备 环境名称版本系统环境C…...
对话泛能网程路:能源产业互联网,行至中程
泛能网的能源产业互联网的标杆价值还不仅于此。其在产业互联之外,也更大的特殊性在于其也更在成为整个碳市场的“辅助运营商”,包括电力、碳等一系列被泛能网帮助企业改造和沉淀的要素资产,都在构成着碳交易市场的未来底层。 这恰是产业互联…...
Doris简介及单机部署(超详细)
文章目录 一、Doris简介1、Doris介绍2、Doris架构 二、Doris单机部署(Centos7.9)1、下载Doris2、准备环境3、安装部署3.1 创建存储目录3.2 配置 FE3.3 启动 FE3.4 查看 FE 运行状态3.5 配置 BE3.6 启动 BE3.7 添加 BE 节点到集群3.8 查看 BE 运行状态3.9…...
Pytest 识别case规则
一、Python测试框架,主要特点有以下几点: 简单灵活,容易上手;支持参数化;能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytestrequests…...
gorm+mysql查询/修改json列相关操作汇总
目录 具体操作 1,查询JSON段落指定key的值是否有等于value的 或 指定keyvalue的数据记录 2,查询JSON段落中price>19的记录 3,查询JSON段中key为k0的记录 4、JSON段落中提取指定键值对到指定结构 5,查询JSON数组是否包含…...
CMake-Cookbook 第0章 配置环境
文章目录 第0章 配置环境0.1 获取代码0.2 Docker镜像0.3 安装必要的软件0.3.1 获取CMake0.3.2 编译器0.3.3 自动化构建工具0.3.4 Python0.3.5 依赖软件0.3.5.1 BLAS和LAPACk0.3.5.2 消息传递接口(MPI)0.3.5.3 线性代数模板库0.3.5.4 Boost库0.3.5.5 交叉编译器0.3.5.6 ZeroMQ, …...
优质硬盘检测工具SMART Utility,保障您的Mac数据安全
在日常使用Mac电脑的过程中,我们经常会存储大量的重要数据,如照片、文档、视频等。然而,硬盘故障却是一件令人头疼的事情,可能会导致数据丢失、系统崩溃等严重后果。为了保障您的数据安全,我们推荐一款专业的硬盘检测工…...
Spring: alibaba代码规范校验工具checkstyle
文章目录 一、idea配置checkstyle插件二、激活CheckStyle三、配置自动格式化功能四、使用代码格式化 一、idea配置checkstyle插件 下载 Intellij IDEA Checkstyle 插件:File -> setting -> plugin通过关键字CheckStyle-IDEA搜索并安装。 安裝完成后重启idea…...
c++线程thread示例
本文章记录c创建线程,启动线程和结束线程的代码。 需要注意,编译时需要添加-lpthread依赖。 代码: ThreadTest.h #ifndef TEST_THREAD_TEST_H #define TEST_THREAD_TEST_H#include <thread> #include <mutex>class ThreadTes…...
Compose | UI组件(十一) | Spacer - 留白
文章目录 前言Spacer组件的参数说明Spacer组件的使用 总结 前言 Spacer组件是让两组件之间留有空白间隔 Spacer组件的参数说明 Spacer只有一个修饰符,修饰留空白的大小和比例,颜色 Spacer(modifier: Modifier)Spacer组件的使用 Row {Box(modifier M…...
PyTorch的nn.Module类的详细介绍
在PyTorch中,nn.Module 类是构建神经网络模型的基础类,所有自定义的层、模块或整个神经网络架构都需要继承自这个类。nn.Module 类提供了一系列属性和方法用于管理网络的结构和训练过程中的计算。 1. PyTorch中nn.Module基类的定义 在PyTorch中ÿ…...
python使用activemq库ActiveMQClient类的连接activemq并订阅、发送和接收消息
引入activemq模块:from activemq import ActiveMQClient from activemq import ActiveMQClient 是一个Python的导入语句,它从activemq模块中导入了ActiveMQClient类。 解释一下各个部分: from activemq: 这表示我们正在从一个名为activemq…...
【Flutter 面试题】Dart是什么?Dart和Flutter有什么关系?
【Flutter 面试题】Dart是什么?Dart和Flutter有什么关系? 文章目录 写在前面Dart是什么Dart和Flutter有什么关系? 写在前面 👏🏻 正在学 Flutter 的同学,你好! 😊 本专栏是解决 Fl…...
前后台分离跨域交互
后台处理跨域 安装插件 >: pip install django-cors-headers插件参考地址:https://github.com/ottoyiu/django-cors-headers/项目配置:dev.py # 注册app INSTALLED_APPS [...corsheaders, ]# 添加中间件 MIDDLEWARE [...corsheaders.middleware.…...
React16源码: React中处理LegacyContext相关的源码实现
LegacyContext 老的 contextAPI 也就是我们使用 childContextTypes 这种声明方式来从父节点为它的子树提供 context 内容的这么一种方式遗留的contextAPI 在 react 17 被彻底移除了,就无法使用了那么为什么要彻底移除这个contextAPI的使用方式呢?因为它…...
Boost.Test资源及示例
Note:boost_1_84_0的动态连接库资源链接 1.代码组织如下图: 2.包括程序入口的代码文件 示例: // M24.01.MyTestModule.cpp : 定义控制台应用程序的入口点。 //#include "stdafx.h" #define BOOST_TEST_MODULE MYTESTMODULE #def…...
数据结构二叉树
二叉树是数据结构中的一个基本概念,它是每个节点最多有两个子节点的树结构。在二叉树中,每个节点通常有两个指针,分别指向左子节点和右子节点。 数据结构定义 在二叉树的节点中,通常包含以下信息: 数据域࿱…...
JavaScript继承与原型链
继承和原型链是什么? 1.1 在继承中,子类继承父类的特征和行为,使得子类对象具有父类的实例域和方法。这意味着子类可以使用父类的方法和属性,使用继承的目的是为了更好设置实例的公共属性和方法,如下例子: …...
SouthLeetCode-打卡24年01月第4周
SouthLeetCode-打卡24年01月第4周 // Date : 2024/01/22 ~ 2024/01/28 022.设计链表 - 双链表 (1) 题目描述 022#LeetCode.707.#北岸计划2024/01/22 (2) 题解代码 import java.util.List;class ListNode {int val;ListNode prev;ListNode next;ListNode(){this.val 0;th…...
Linux——磁盘和文件系统(一)
Linux——磁盘和文件系统 磁盘机械式磁盘固态硬盘 机械式磁盘结构磁盘,磁道,扇区柱面 文件系统的初始化划卷(划盘) 挂载C盘放了什么东西Boot Block(启动模块) 0号组放了什么东西Super Block(超级…...
UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
Razor编程中@Html的方法使用大全
文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...
nnUNet V2修改网络——暴力替换网络为UNet++
更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...
软件工程 期末复习
瀑布模型:计划 螺旋模型:风险低 原型模型: 用户反馈 喷泉模型:代码复用 高内聚 低耦合:模块内部功能紧密 模块之间依赖程度小 高内聚:指的是一个模块内部的功能应该紧密相关。换句话说,一个模块应当只实现单一的功能…...
Vue 3 + WebSocket 实战:公司通知实时推送功能详解
📢 Vue 3 WebSocket 实战:公司通知实时推送功能详解 📌 收藏 点赞 关注,项目中要用到推送功能时就不怕找不到了! 实时通知是企业系统中常见的功能,比如:管理员发布通知后,所有用户…...
相关类相关的可视化图像总结
目录 一、散点图 二、气泡图 三、相关图 四、热力图 五、二维密度图 六、多模态二维密度图 七、雷达图 八、桑基图 九、总结 一、散点图 特点 通过点的位置展示两个连续变量之间的关系,可直观判断线性相关、非线性相关或无相关关系,点的分布密…...
海云安高敏捷信创白盒SCAP入选《中国网络安全细分领域产品名录》
近日,嘶吼安全产业研究院发布《中国网络安全细分领域产品名录》,海云安高敏捷信创白盒(SCAP)成功入选软件供应链安全领域产品名录。 在数字化转型加速的今天,网络安全已成为企业生存与发展的核心基石,为了解…...
stm32进入Infinite_Loop原因(因为有系统中断函数未自定义实现)
这是系统中断服务程序的默认处理汇编函数,如果我们没有定义实现某个中断函数,那么当stm32产生了该中断时,就会默认跑这里来了,所以我们打开了什么中断,一定要记得实现对应的系统中断函数,否则会进来一直循环…...
