首页 > 其他分享 >手把手教你掌握SeaTunnel k8s运行Zeta引擎本地模式的技巧

手把手教你掌握SeaTunnel k8s运行Zeta引擎本地模式的技巧

时间:2024-04-23 18:23:18浏览次数:17  
标签:bin SeaTunnel tar seatunnel 2.3 streaming apache Zeta k8s

file

转载自小虾米0.0

导读:随着Kubernetes的普及和发展,越来越多的企业和团队开始使用Kubernetes来管理和部署应用程序。然而,Kubernetes的默认工作方式可能不是最佳的选择,尤其是在需要更高效、更可靠的应用程序部署和管理能力时。因此,SeaTunnel提供了一种运行Zeta引擎(local-mode模式)的方法,可以让Kubernetes在本地运行Zeta引擎,实现更高效的应用程序部署和管理。在本文中,我们将探索SeaTunnel k8s运行zeta引擎(local-mode模式)的更多信息,了解如何更好地利用Zeta引擎的优势。

运行

  1. 将SeaTunnel上传至服务器上。我之前已经解压并执行过install-plugin.sh,这里为了方便,我直接用的执行过install-plugin.sh脚本之后的seatunnel做演示。

执行过install-plugin后的lib目录包含如下

file

tar -zxvf apache-seatunnel-2.3.3-bin.tar.gz
sh apache-seatunnel-2.3.3/bin/install-plugin.sh
tar -czvf  apache-seatunnel-2.3.3-bin.tar.gz  apache-seatunnel-2.3.3
  1. 构建SeaTunnel镜像。在安装seatunnel的同级文件夹下创建Dockerfile。配置如下,可自行选择版本
FROM openjdk:8

ENV SEATUNNEL_VERSION="2.3.3"
COPY /apache-seatunnel-${SEATUNNEL_VERSION}-bin.tar.gz /opt/apache-seatunnel-${SEATUNNEL_VERSION}-bin.tar.gz
WORKDIR /opt
RUN tar -xzvf apache-seatunnel-${SEATUNNEL_VERSION}-bin.tar.gz
RUN mv apache-seatunnel-${SEATUNNEL_VERSION} seatunnel
RUN rm -f /opt/apache-seatunnel-${SEATUNNEL_VERSION}-bin.tar.gz
WORKDIR /opt/seatunnel

执行命令

docker build -t seatunnel:2.3.3 -f Dockerfile.
  1. 查看镜像
docker images

如下所示镜像

file

  1. 将镜像load进k8s,这里用的minikube做演示
minikube image load seatunnel:2.3.3
minikube image ls 

查看镜像

file

  1. 创建seatunnel.streaming.conf
    如下所示
env {
  execution.parallelism = 1
  job.mode = "STREAMING"
  checkpoint.interval = 2000
}

source {
    FakeSource {
      result_table_name = "fake"
      row.num = 160000
      schema = {
        fields {
          name = "string"
          age = "int"
        }
      }
    }
}

transform {

}

sink {
  Console {}
}
  1. 创建configmap
kubectl create cm seatunnel-config \
--from-file=seatunnel.streaming.conf=seatunnel.streaming.conf
  1. 创建seatunnel.yaml如下示例
apiVersion: v1
kind: Pod
metadata:
  name: seatunneltest
spec:
  containers:
  - name: seatunnel
    image: seatunnel:2.3.3
    command: ["/bin/sh","-c","/opt/seatunnel/bin/seatunnel.sh --config /data/seatunnel.streaming.conf -e local"]
    volumeMounts:
      - name: seatunnel-config
        mountPath: /data/seatunnel.streaming.conf
        subPath: seatunnel.streaming.conf
  volumes:
        - name: seatunnel-config
          configMap:
            name: seatunnel-config
            items:
            - key: seatunnel.streaming.conf
              path: seatunnel.streaming.conf
~                                                  

执行

kubectl apply -f seatunnel.yaml

查看pod结果如下
file
file

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_41854429/article/details/132619265

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

标签:bin,SeaTunnel,tar,seatunnel,2.3,streaming,apache,Zeta,k8s
From: https://www.cnblogs.com/seatunnel/p/18153503

相关文章

  • K8s的介绍和特性
    K8s是一个开源的,用来管理云平台中“多个主机的容器化”的应用。k8S的目标是:让部署容器化的应用简单并且高效,K8s提供了应用部署,规划,更新,维护的一种机制。K8s是google开源的一个容器编排引擎,他支持自动化部署,大规模可伸缩,应用容器化管理。在生产环境中部署一个应用程序时,通常要部......
  • k8s 操作命令-合集List
    k8s操作命令合集List ---------------k8s基本常用的命令-----------------------------------------1、创建资源kubectlcreatedeploymentnginx--image=nginx2、列出资源kubectlgetpods3、描述资源kubectldescribepod<pod-name>4、删除资源......
  • k8s serviceIP: range is full
    创建svc报错Internalerroroccurred:failedtoallocateaserviceIP:rangeisfullk8ssvc的网段默认ip为256个,在master节点的/etc/kubernetes/manifests/kube-apiserver.yaml和/etc/kubernetes/manifests/kube-controller-manager.yaml中的service-cluster-ip-range进行......
  • k8s node节点报错 dial tcp 127.0.0.1:8080: connect: connection refused
    前言在搭建好kubernetes环境后,master节点拥有control-plane权限,可以正常使用kubectl。但其他node节点无法使用kubectl命令,即使同步过去/root/.kube/config文件到各个node节点上,也不行。解决检查KUBECONFIG变量:确保KUBECONFIG环境变量正确设置。KUBECONFIG......
  • ingress-nginx-controller在k8s中的部署和使用
    点击查看代码下载deploy文件https://github.com/kubernetes/ingress-nginx/blob/controller-v1.9.6/deploy/static/provider/cloud/deploy.yaml修改deploy文件:有如下几处可按需修改:DaemonSet:修改Deployment为DaemonSet,移除strategy字段;hostNetwork:使用宿主机的网络;......
  • 使用kubeadm 快速部署k8s
     卸载之前的dockeryumremove docker-cedocker-ce-clicontainerd.io 安装dockersudoyuminstall-y docker-cedocker-ce-clicontainerd.io  安装docker$wgethttps://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo-O/etc/yum.repos.d/do......
  • k8s集群部署
    Kubernetes-1.28.2集群介绍及搭建一、Kubernetes概述1、什么是Kubernetes?K8S的全称为Kubernetes。用于自动部署、扩展和管理“容器化(containerized)应用程序”的开源系统。1.23.10以前(包含)docker1.24.0containerd中间件k8s和dockerdockers-shim可以......
  • k8s join失败的问题汇总
     环境:centos7.6;kubeadm安装k8s集群(版本v1.26.0);容器引擎对应cri-dockerd-0.3.1-3.el7.x86_64.rpm(这里其实还发生一件事,装k8s1.25的时候,容器引擎太低,导致无法识别,于是换了个新版本的)报错一:FileContent--proc-sys-net-ipv4-ip_forward]:/proc/sys/net/ipv4/ip_forwardcont......
  • SeaTunnel JDBC DB2 Sink Connector支持的工作原理,快来学习吧!
    DB2是IBM的一款关系型数据库管理系统,JDBCDB2SourceConnector是一个用于通过JDBC读取外部数据源数据的连接器。ApacheSeaTunnel如何支持JDBCDB2SinkConnector?请参考本文档。支持引擎SparkFlinkSeaTunnelZeta主要功能精确一次性CDC(变更数据捕获)使用Xa事务......
  • 【云原生|K8s系列第1篇】:K8s的基础概念、组件架构及实战安装
    1、先从K8s不是什么讲起首先,K8s并不是一个传统意义上的PaaS平台即服务的工具,它充分给使用者提供了很多很多选择的空间。不限制支持的应用程序类型,K8s并不插手应用程序框架,也不限制支持的语言(如Java,Python,Ruby等),只要应用符合12因素即可。也就是说,只需要应用可以在......