Implementación rápida de aprendizaje-Saturn Executor

Despliegue de Saturno Ejecutor

El albacea es el ejecutor del trabajo. Esta sección presentará cómo implementar el trabajo depurado en el Ejecutor para ejecutarlo. Consulte el capítulo "Introducción" sobre cómo desarrollar y depurar trabajos.

Cuando se inicia el Ejecutor, debe especificar el dominio al que pertenece. Después del inicio, el Ejecutor extraerá automáticamente la información de configuración del trabajo bajo el dominio y luego ejecutará la programación del trabajo de acuerdo con la disposición de programación del esquema de la Consola Saturn y la expresión Cron del trabajo.

1 Preparación antes del despliegue

1.1 Preparación del hardware

1 servidor Linux

Aquí solo se presenta el método del sistema operativo Linux. El otro sistema operativo no es muy diferente.

1.2 Preparación del software

JDK> = 1,7

1.3 Inspección

  • Compruebe si puede acceder a la Consola Saturn (consulte la guía de implementación de la Consola Saturn)
  • Verifique si hay un espacio de nombres designado en la Consola Saturn (puede buscar el nombre del espacio de nombres en el registro de la consola)
  • Compruebe si se puede acceder a ZooKeeper (consulte la Guía de implementación de la consola Saturn). Puede usar telnet para que se corresponda con el puerto zk, el valor predeterminado es (2181)
  • Si está implementando un trabajo de Java, compruebe si se ha empaquetado un paquete * -app.zip. Para obtener más información, consulte la operación Java de las Pautas de desarrollo de operaciones de Saturn.

2 Iniciar la implementación

2.1 Establecer variables de entorno

Establecer uri de la consola de Saturno:

export VIP_SATURN_CONSOLE_URI=http://localhost:9088

2.2 Obtener albacea

Haga clic en el enlace de https://github.com/vipshop/Saturn/releases para obtener la última versión de '
Executor Zip File', y obtendrá un archivo saturn-ejecutor- {version} -zip.zip.

Coloque el archivo zip en la ruta de instalación deseada (llamado $ TARGET_DIR) y descomprímalo para obtener el directorio de saturn-ejecutor- {versión}. La estructura del directorio es la siguiente:

saturn-executor-{version}
    -/bin
    -/demo_script
    -/lib
    -/logs
    -saturn-executor.jar

/ bin: almacena el script de inicio del ejecutor (saturn-executor.sh)
/ bin: almacena el script de inicio del ejecutor (saturn-executor.sh)

/ demo_script: algunos scripts de demostración (4 scripts php)

/ lib: almacena las dependencias del ejecutor y los paquetes jar de terceros

/ logs: Ya no se usa y se descartará

saturn-ejecutor.jar: el jar principal iniciado por el ejecutor

2.3 Despliegue de trabajos

2.3.1 Implementar trabajo de shell

Coloque el script de shell desarrollado en un directorio, como el directorio / apps / saturn / shell, y luego agregue trabajos a través de la consola.

Asegúrese de que estos scripts tengan permisos suficientes para ejecutarse.

2.3.2 Implementar trabajo de Java

Descomprima el ** - app.zip desarrollado y empaquetado en el mismo directorio que / saturn-ejecutor- {versión}. La estructura del directorio se muestra en la siguiente figura.

Cuando se inicia Executor, escaneará el directorio de la aplicación y cargará todos los paquetes jar en este directorio (incluidos los subdirectorios).

saturn-executor-{version}
    -/bin
    -/demo_script
    -/lib
    -/logs
    -saturn-executor.jar
app
    -/lib
      - abc.jar
      - xyz.jar

2.3 Modificación del nombre de la tarjeta de red

Asegúrese de que el nombre de su tarjeta de red contenga bond0 o eth0. De lo contrario, se informará un error durante el inicio:

getCachedAddressException:java.lang.Exception: wrong with get ip cause by could not read any info from local host, bond0 and eth0

Si no hay bond0 o eth0, debe modificar el nombre de su tarjeta de red.

2.4 Iniciar ejecutor

cd saturn-executor-{
    
    version}/bin
#修改权限
chmod a+x saturn-executor.sh
#启动
./saturn-executor.sh start -n www.abc.com -e executor_001

Descripción de parámetros:

parámetro Necesario descripción Defaults
-norte Y El espacio de nombres al que pertenece este ejecutor
-mi norte El ID único de este ejecutor, si no se especifica, se usa el nombre de host nombre de host
-env norte Modo de operación, el valor puede ser dev / product. En modo dev -Xmx es 512 m, en modo producto -Xmx es 2G producto
-re norte Directorio de biblioteca empresarial $ TARGET_DIR / aplicación
-r norte Modo de ejecución, primer plano (primer plano) o fondo (fondo), vacío representa el modo de fondo. aire
-t norte El período de tiempo de espera de este inicio ejecutor, en segundos 120
-jmx norte puerto jmx 24501
-sld norte directorio de registro de saturno / apps / logs / saturn / {namespace} / {ejecutorname} - {ip} /
jvmArgs norte Parámetros de JVM que deben agregarse aire
VIP_SATURN_INIT_JOB_BY_GROUPS (-D o variable de entorno) norte Si la máquina Ejecutora establece esta variable, el Ejecutor solo puede iniciar los trabajos que pertenecen al grupo en este dominio; de lo contrario, puede iniciar todos los trabajos en este dominio.
Separe grupos1, grupos2 con comas para varios valores
No
VIP_SATURN_START_TIMEOUT norte El tiempo de espera de inicio de este ejecutor, en segundos 120
VIP_SATURN_RUNNING_IP
(-D o variable de entorno)
norte La ip en ejecución de este ejecutor (informará un error cuando no haya eth0 y bond0 en algunas macs, este error se puede resolver configurando hosts o configurando la variable de entorno)
VIP_SATURN_RUNNING_HOSTNAME norte El nombre de host en ejecución de este ejecutor

A continuación se muestra el resultado de la consola de un inicio exitoso:

$ ./saturn-executor.sh start -n www.abc.com -e executor-0134

The java version is 1.8.0_121
Log redirects to /apps/logs/saturn/www.abc.com/executor-0134-xxx.xxx.xxx.xxx
The jmx port is 24501.

Saturn executor start successfully, running as process:18332.

Si el inicio falla, verifique saturn-ejecutor.log de acuerdo con la ruta solicitada por la consola.

2.5 Iniciar varios ejecutores en una sola máquina física

Se recomienda iniciar un ejecutor en una máquina física. Si desea iniciar varios ejecutores en una sola máquina física, se recomiendan los siguientes pasos:

  1. Copiar saturn-ejecutor- {versión} a varios

  2. Al iniciar estos ejecutores, especifique diferentes nombres de ejecutor y puertos JMX respectivamente, el comando es el siguiente:

    $ ./saturn-executor.sh start -n www.abc.com -e executor-001 -jmx 24502
    

    Nota: nombre del ejecutor, el predeterminado es el nombre de host; el puerto jmx predeterminado es 24501

2.6 Preguntas frecuentes

P: ¿Cuál es el proceso cuando se implementa un nuevo trabajo?

R: Consulte el capítulo "Versión gris".

Supongo que te gusta

Origin blog.csdn.net/weixin_42528266/article/details/108603451
Recomendado
Clasificación