Enseñarle paso a paso cómo utilizar SeaTunnel k8s para ejecutar el modo local del motor Zeta

archivo

Reimpreso de Xiao Xiami 0.0

Introducción: con la popularidad y el desarrollo de Kubernetes, cada vez más empresas y equipos están comenzando a utilizar Kubernetes para administrar e implementar aplicaciones. Sin embargo, la forma predeterminada en que funciona Kubernetes puede no ser la mejor opción, especialmente cuando se necesitan capacidades de implementación y administración de aplicaciones más eficientes y confiables. Por lo tanto, SeaTunnel proporciona una forma de ejecutar el motor Zeta (modo local), que permite a Kubernetes ejecutar el motor Zeta localmente para lograr una implementación y administración de aplicaciones más eficientes. En este artículo, exploraremos más sobre los SeaTunnel k8 que ejecutan el motor zeta (modo local) y aprenderemos cómo aprovechar mejor el motor Zeta.

correr

  1. Sube SeaTunnel al servidor. He descomprimido y ejecutado install-plugin.sh antes. Por conveniencia, utilicé directamente el Seatunnel después de ejecutar el script install-plugin.sh para demostración.

El directorio lib después de ejecutar install-plugin contiene lo siguiente

archivo

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. Construya la imagen de SeaTunnel. Cree un Dockerfile en la misma carpeta donde está instalado Seatunnel. La configuración es la siguiente, puedes elegir la versión tú mismo
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

Ejecutando una orden

docker build -t seatunnel:2.3.3 -f Dockerfile.
  1. Ver imagen
docker images

Reflejado como se muestra a continuación

archivo

  1. Cargue la imagen en k8s. Minikube se utiliza aquí para demostración.
minikube image load seatunnel:2.3.3
minikube image ls 

Ver imagen

archivo

  1. Cree seatunnel.streaming.conf como se muestra a continuación
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. Crear mapa de configuración
kubectl create cm seatunnel-config \
--from-file=seatunnel.streaming.conf=seatunnel.streaming.conf
  1. Cree seatunnel.yaml como el siguiente ejemplo
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
~                                                  

implementar

kubectl apply -f seatunnel.yaml

Vea los resultados del pod de la siguiente maneraarchivo archivo

Declaración de derechos de autor: este artículo es un artículo original del blogger y sigue el acuerdo de derechos de autor CC 4.0 BY-SA. Adjunte el enlace de la fuente original y esta declaración al reimprimir.

Enlace original: https://blog.csdn.net/weixin_41854429/article/details/132619265

¡Este artículo fue publicado por Beluga Open Source Technology !

Linus tomó el asunto en sus propias manos para evitar que los desarrolladores del kernel reemplacen las pestañas con espacios. Su padre es uno de los pocos líderes que puede escribir código, su segundo hijo es el director del departamento de tecnología de código abierto y su hijo menor es un núcleo. Colaborador de código abierto Huawei: tomó 1 año convertir 5000 aplicaciones móviles de uso común Migración completa a Hongmeng Java es el lenguaje más propenso a vulnerabilidades de terceros Wang Chenglu, el padre de Hongmeng: el código abierto Hongmeng es la única innovación arquitectónica. En el campo del software básico en China, Ma Huateng y Zhou Hongyi se dan la mano para "eliminar rencores". Ex desarrollador de Microsoft: el rendimiento de Windows 11 es "ridículamente malo " " Aunque lo que Laoxiangji es de código abierto no es el código, las razones detrás de él. Son muy conmovedores. Meta Llama 3 se lanza oficialmente. Google anuncia una reestructuración a gran escala.
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/SeaTunnel/blog/11054386
Recomendado
Clasificación