Apache SeaTunnel 2.3.5 Zeta-Server集群环境搭建与使用

作者 | 月影幽篁

在当前数据驱动的业务环境中,快速且高效的数据处理能力至关重要。Apache SeaTunnel以其卓越的性能和灵活性,成为数据工程师和开发者的首选工具之一。本文将介绍如何在集群环境中搭建Apache SeaTunnel 2.3.5版本的 Zeta-Server,并概述其使用方法。

SeaTunnel二进制包下载

下载地址:https://seatunnel.apache.org/zh-CN/download

SeaTunnel环境变量配置

编辑/etc/profile文件,添加如下配置:

复制代码
export SEATUNNEL_HOME=${seatunnel install path}
export PATH=$PATH:$SEATUNNEL_HOME/bin

SeaTunnel Zeta Server配置

JVM配置

SeaTunnel Zeta Server的jvm配置文件路径为${SEATUNNEL_HOME}/config/jvm_options,可以在这里调整JVM相关配置。

引擎配置

一定要编辑的几个配置:

  • cluster-name SeaTunnel Engine 节点使用 cluster-name 来确定另一个节点是否与自己在同一集群中。如果两个节点之间的集群名称不同,SeaTunnel 引擎将拒绝服务请求。

  • 网络 基于 Hazelcast, 一个 SeaTunnel Engine 集群是由运行 SeaTunnel Engine 服务器的集群成员组成的网络。 集群成员自动加入一起形成集群。这种自动加入是通过集群成员使用的各种发现机制来相互发现的。

请注意,集群形成后,集群成员之间的通信始终通过 TCP/IP 进行,无论使用的发现机制如何。 示例:

复制代码
hazelcast:
  cluster-name: seatunnel
  network:
    join:
      tcp-ip:
        enabled: true
        member-list:
          - hostname1
    port:
      auto-increment: false
      port: 5801
  properties:
    hazelcast.logging.type: log4j2
  • 类加载器缓存模式(classloader-cache-mode) 此配置主要解决不断创建和尝试销毁类加载器所导致的资源泄漏问题。 如果您遇到与元空间溢出相关的异常,您可以尝试启用此配置。 为了减少创建类加载器的频率,在启用此配置后,SeaTunnel 在作业完成时不会尝试释放相应的类加载器,以便它可以被后续作业使用,也就是说,当运行作业中使用的 Source/Sink 连接器类型不是太多时,它更有效。 默认值是 false。示例:

    seatunnel:
    engine:
    classloader-cache-mode: true

  • 历史作业过期配置(history-job-expire-minutes) 每个完成的作业的信息,如状态、计数器和错误日志,都存储在 IMap 对象中。随着运行作业数量的增加,内存会增加,最终内存将溢出。因此,您可以调整 history-job-expire-minutes 参数来解决这个问题。此参数的时间单位是分钟。默认值是 1440 分钟,即一天。示例:

    seatunnel:
    engine:
    history-job-expire-minutes: 1440

更多配置可以参考官方文档:https://seatunnel.apache.org/zh-CN/docs/2.3.5/seatunnel-engine/deployment#4-配置-seatunnel-engine

Client配置

JVM配置

SeaTunnel Client的jvm配置文件路径为${SEATUNNEL_HOME}/config/jvm_client_options,可以在这里调整JVM相关配置,在使用bin/seatunnel.sh --config xxx.conf提交任务时会启动一个java进程,可以使用此配置来控制java进程参数。

复制代码
#
# 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.
#

# JVM Heap
-Xms1g
-Xmx1g

# JVM Dump
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/opt/icarbon_saas/bigdata/seatunnel/dump/zeta-client

引擎客户端配置

引擎客户端配置文件路径为:${SEATUNNEL_HOME}/config/hazelcast-client.yaml

  • cluster-name 客户端必须与 SeaTunnel Engine 具有相同的 cluster-name。否则,SeaTunnel Engine 将拒绝客户端的请求。

  • cluster-members 需要将所有 SeaTunnel Engine 服务器节点的地址添加到这里。示例:

    hazelcast-client:
    cluster-name: seatunnel
    properties:
    hazelcast.logging.type: log4j2
    network:
    cluster-members:
    - hostname1:5801

启动Seatunnel Engine

复制代码
${SEATUNNEL_HOME}/bin/seatunnel-cluster.sh -d

本文由 白鲸开源科技 提供发布支持!

相关推荐
见识星球6 分钟前
名企校招攻略
大数据·python
路边草随风10 分钟前
starrocks compaction 进度问题定位
大数据·sql
档案宝档案管理35 分钟前
核心功能揭秘——档案管理系统如何破解档案管理难题?
大数据·数据库·安全·档案·档案管理
盟接之桥2 小时前
盟接之桥说制造:“盟接之桥”为何成了“断桥”?——制造企业困局突围的三重思考
大数据·人工智能·物联网·产品运营·制造
五度易链-区域产业数字化管理平台2 小时前
如何构建高质量产业数据信息库?五度易链的“八大核心库”与数据治理实践
大数据·人工智能
Elastic 中国社区官方博客2 小时前
用 Elasticsearch 构建一个 ChatGPT connector 来查询 GitHub issues
大数据·人工智能·elasticsearch·搜索引擎·chatgpt·github·全文检索
哲霖软件3 小时前
设备自动化行业ERP选型
大数据
武子康3 小时前
大数据-172 Elasticsearch 索引操作与 IK 分词器落地实战:7.3/8.15 全流程速查
大数据·后端·elasticsearch
学术小白人3 小时前
【落幕通知】2025年能源互联网与电气工程国际学术会议(EIEE 2025)在大连圆满闭幕
大数据·人工智能·机器人·能源·信号处理·rdlink研发家
物流可信数据空间3 小时前
专家解读 | 提升数据流通安全治理能力 促进数据流通开发利用【可信数据空间】
大数据·人工智能·安全