Todos los productos
Search
Centro de documentos

SchedulerX:Conexión mediante agente (trabajos de script o HTTP)

Última actualización: Sep 05, 2026

Este tema explica cómo conectar una aplicación no Java a SchedulerX mediante un agente desplegado desde un paquete tar o una imagen.

Requisitos previos

  • (Opcional) Ha creado un namespace. Para obtener más información, consulte Create a namespace.

  • Ha creado un resource. Para obtener más información, consulte Create a resource.

Nota

El agente admite la programación y ejecución de trabajos de DataWorks. Para obtener más información, consulte DataWorks jobs.

Casos de uso

A continuación se presentan los casos de uso comunes para conectar un agente a SchedulerX:

  • Uso de un script de shell para limpiar periódicamente los registros en todos los nodos worker o iniciar un servicio.

  • Uso de un script de Python para limpiar periódicamente datos históricos de una base de datos.

  • Uso de una API HTTP para escanear pedidos periódicamente.

Requisitos del entorno

Se requiere Java Runtime Environment (JRE) 1.8 o posterior.

Despliegue manual del agente

  1. Descargue y descomprima el agente.

    Si su nodo worker tiene una dirección IP pública, puede ejecutar el siguiente comando para descargar el agente:

    Nota

    Reemplace X.X.X con el número de versión requerido; por ejemplo, 1.12.5.

    wget https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-X.X.X.tar

    Versión

    URL de descarga

    Notas de la versión

    Agent 1.14.0

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.14.0.tar.gz

    • Nuevas funciones:

      • Las tareas de script ahora admiten la finalización forzada.

      • clientInfo.log imprime la salida completa del script, que puede recopilar mediante SLS.

    Agent 1.13.5

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.13.5.tar.gz

    • Nuevas funciones:

      • Admite el apagado controlado para trabajos de retardo de segundos.

      • Admite la transferencia de datos entre trabajos anteriores y posteriores en un flujo de trabajo para trabajos de script.

      • Admite la recopilación de métricas de rendimiento del sistema en cgroup v2.

    Agent 1.13.2

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.13.2.tar.gz

    • Nuevas funciones:

      • Admite la recopilación de métricas de CPU en cgroup v2.

      • Admite la personalización del tamaño del pool de hilos para la ejecución de trabajos. Parámetro: share.pool.size.

    Agent 1.12.5

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.12.5.tar

    Nuevas funciones:

    Agent 1.11.5

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.11.5.tar

    Correcciones de bugs:

    • Soluciona vulnerabilidades de seguridad en Netty y Logback.

    • Soluciona el problema "too old resource version" en trabajos de Kubernetes.

    Agent 1.10.13

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.10.13.tar

    Nuevas funciones:

    • Admite el despliegue de varios agentes en un solo nodo worker.

    • Admite respuestas mayores a 1,000 bytes para trabajos de agente HTTP.

    • Optimiza la función de registro para reducir el almacenamiento de registros históricos.

    Agent 1.10.5

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.10.5.tar

    Nuevas funciones:

    • Admite el apagado controlado.

    • La función de registro admite el aislamiento de grupos de aplicaciones.

    Agent 1.9.8

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.9.8.tar

    Nuevas funciones:

    • Admite trabajos HTTP en modo agente.

    • Admite la devolución de la última línea del registro si falla un trabajo de script.

    • Admite trabajos de Kubernetes.

    Agent 1.7.10

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.7.10.tar.gz

    Correcciones de bugs:

    • Soluciona un problema donde los trabajos de retardo de segundos se ejecutaban lentamente.

    • Soluciona un problema donde la función de registro podía causar un error de Out of Memory (OOM).

    Agent 1.4.2

    https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.4.2.tar.gz

    Nueva función: Admite la función de registro.

    Importante

    Si el comando wget agota el tiempo de espera al descargar el agente, habilite una dirección IP pública para su nodo worker o consulte Upload or download files (Linux).

  2. Vaya al directorio schedulerxAgent/conf y configure el archivo agent.properties.

    endpoint=addr-hz-internal.edas.aliyun.com
    namespace=fd2965c4-****-****-af52-bb62aa4*****
    groupId=hxm.test
    appKey=1234*****
    • endpoint: El endpoint del servicio. Para obtener más información, consulte List of endpoints.

    • namespace: El ID del namespace. Puede encontrarlo en la página Namespace o .

    • groupId y appKey son el ID único y la clave de su aplicación. Puede encontrarlos en la página Application Management.

  3. Vaya al directorio schedulerxAgent/bin y ejecute el comando start.sh.

    Nota

    Para especificar la asignación de memoria del agente al inicio, puede ejecutar start-200m.sh, start-500m.sh o start-1g.sh.

    Una vez iniciado el agente, puede realizar las siguientes operaciones:

    • Para detener el agente, vaya al directorio schedulerxAgent/bin y ejecute stop.sh.

    • Para consultar los registros, revise el archivo en ${user.home}/logs/schedulerx/worker.log.

      La variable ${user.home} es el directorio principal del usuario que inició el agente. Puede identificar a este usuario ejecutando el comando ps aux | grep java. Por ejemplo, si el proceso lo inicia el usuario admin, la ruta del registro es /home/admin/logs/schedulerx/worker.log. Si lo inicia el usuario root, la ruta es /root/logs/schedulerx/worker.log.

    El mensaje Schedulerx Worker started en la salida indica que el despliegue fue exitoso.

    Nota

    Si utiliza Java Development Kit (JDK) versión 14 o posterior, debe eliminar la opción -XX:+UseConcMarkSweepGC del archivo schedulerxAgent/bin/start.sh en el directorio de instalación del agente.

    
    JAVA_OPTS="-Dproject.name=schedulerxAgent -XX:+UseConcMarkSweepGC -XX:+HeapDumpOxxx -XX:HeapDumpPath=${WORKER_LOG_DIR} -XX:+xxx lysis"
    if [ -n "${SCHEDULERX_STARTER_MODE}" ]; then
        JAVA_OPTS="${JAVA_OPTS} -Dschedulerx.stater.mode=${SCHEDULERX_STARTER_MODE}"

Despliegue con una imagen de Docker

  1. Seleccione una imagen según su entorno de red y arquitectura de CPU.

    Red

    x86_64

    arm64

    China (Hangzhou) (Public network)

    schedulerx-registry.cn-hangzhou.cr.aliyuncs.com/schedulerx2/agent:latest-amd64

    schedulerx-registry.cn-hangzhou.cr.aliyuncs.com/schedulerx2/agent:latest-arm64

    Singapore (Public network)

    schedulerx-registry.ap-southeast-1.cr.aliyuncs.com/schedulerx2/agent:latest-amd64

    schedulerx-registry.ap-southeast-1.cr.aliyuncs.com/schedulerx2/agent:latest-arm64

  2. Despliegue el agente.

    Descripción de parámetros:

    docker run  --env SCHEDULERX_ENDPOINT="addr-hz-internal.edas.aliyun.com" \
       --env SCHEDULERX_NAMESPACE="fd2965c4-****-****-af52-bb62aa4*****" \
       --env SCHEDULERX_GROUPID="hxm.test" \
       --env SCHEDULERX_APPKEY="1234*****" \
       -d {image id}
    • SCHEDULERX_ENDPOINT: El endpoint.

    • SCHEDULERX_NAMESPACE: El ID del namespace. Puede encontrarlo en la página Namespace o en la consola.

    • SCHEDULERX_GROUPID es el groupId y SCHEDULERX_APPKEY es la clave de la aplicación. Puede obtenerlos en la página Application Management en la consola.

    Una vez iniciado el despliegue, puede ejecutar el comando docker logs para consultar los registros.

Despliegue con un deployment de Kubernetes

Si utiliza Kubernetes, la forma más sencilla de desplegar el agente es aplicar el archivo schedulerx-agent.yaml.

Ejemplo de schedulerx-agent.yaml:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: schedulerx-agent
  labels:
    app: schedulerx-agent
spec:
  replicas: 1
  selector:
    matchLabels:
      app: schedulerx-agent
  template:
    metadata:
      labels:
        app: schedulerx-agent
    spec:
      containers:
      - name: schedulerx-agent
        image: schedulerx-registry.cn-hangzhou.cr.aliyuncs.com/schedulerx2/agent:latest-amd64
        imagePullPolicy: Always
        resources:
          requests:
            cpu: 500m
        env:
          - name: "SCHEDULERX_ENDPOINT"
            value: "${SCHEDULERX_ENDPOINT}"
          - name: "SCHEDULERX_NAMESPACE"
            value: "${SCHEDULERX_NAMESPACE}"
          - name: "SCHEDULERX_GROUPID"
            value: "${SCHEDULERX_GROUPID}"
          - name: "SCHEDULERX_APPKEY"
            value: "${SCHEDULERX_APPKEY}"
          - name: "SCHEDULERX_STARTER_MODE"
            value: "pod"
        livenessProbe: 
          exec: 
            command: ["/bin/bash","/root/health.sh"]
          timeoutSeconds: 30
          initialDelaySeconds: 30

Variable

Descripción

${SCHEDULERX_ENDPOINT}

El endpoint de la región donde está desplegada su aplicación. Para obtener más información, consulte List of endpoints. Ejemplo: addr-sh-internal.edas.aliyun.com.

${SCHEDULERX_NAMESPACE}

El ID del namespace. Puede encontrarlo en la página Namespace en la consola.

${SCHEDULERX_GROUPID}

El groupId de su aplicación. Puede encontrarlo en la página Application Management en la consola.

${SCHEDULERX_APPKEY}

El appKey de su aplicación. Puede encontrarlo en la página Application Management en la consola.