Todos los productos
Search
Centro de documentos

Microservices Engine:Connect an agent (for script or HTTP jobs)

Última actualización: Sep 05, 2026

Una vez conectado el agente, puede crear trabajos programados, volver a ejecutarlos, consultar los registros de ejecución y revisar los registros operativos directamente en la consola de SchedulerX. Este tema explica cómo conectar una aplicación no Java a SchedulerX mediante un agente, disponible como paquete TAR o imagen de Docker.

Requisitos previos

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

  • Se ha creado un recurso. 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

Los principales casos de uso para conectar un agente a SchedulerX incluyen:

  • 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 paquete del agente.

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

    Nota

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

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

    Versión

    URL de descarga

    Descripción

    agent 1.13.5

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

    • Nuevas funciones

      • Habilita el apagado controlado para trabajos de nivel de segundo.

      • Permite pasar datos entre trabajos anteriores y posteriores en un flujo de trabajo para trabajos de script.

      • Permite recopilar métricas de rendimiento del sistema con cgroup v2.

    agent 1.13.2

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

    • Nuevas funciones

      • Habilita la recopilación de métricas de CPU con CGroup v2.

      • Permite personalizar el tamaño del pool de hilos de ejecución de trabajos mediante la clave de parámetro share.pool.size.

    agent 1.12.5

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

    Nuevas funciones:

    • Permite recuperar variables del sistema de trabajos mediante placeholders.

    • Permite personalizar el tamaño del pool de hilos para trabajos HTTP.

    • Permite que los trabajos de script devuelvan la última línea de la salida estándar como resultado de la ejecución.

    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:

    • Permite desplegar varios agentes en un solo nodo worker.

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

    • Optimiza el 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:

    • Habilita el apagado controlado.

    • Permite el aislamiento de grupos de aplicaciones en el servicio de registros.

    agent 1.9.8

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

    Nuevas funciones:

    • Habilita trabajos HTTP basados en agente.

    • Permite que un trabajo de script devuelva la última línea del registro en caso de fallo.

    • Habilita 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 nivel de segundo se ejecutaban lentamente.

    • Soluciona un problema donde el servicio de registros 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: Introduce el servicio de registros.

    Importante

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

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

    Configure los siguientes parámetros:

    endpoint=addr-hz-internal.edas.aliyun.com
    # For public network access, use domainName instead of endpoint.
    # domainName={domainName}
    namespace=fd2965c4-xxxx-xxxx-af52-bb62aa4f19f2
    groupId=hxm.test
    appKey=12******789
    • endpoint: El endpoint del servicio. Para obtener más información, consulte Endpoints.

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

    • groupId y appKey: El ID de la aplicación y la clave de la aplicación. Encuentre estos valores en la página Application Management.

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

    Nota

    Para establecer la memoria al iniciar el agente, puede ejecutar start-200m.sh, start-500m.sh o start-1g.sh.

    Durante el inicio, puede:

    • Detener el agente: Vaya al directorio schedulerxAgent/bin y ejecute stop.sh.

    • Consultar registros: La ruta de los registros es ${user.home}/logs/schedulerx/worker.log.

      Para obtener el valor de user.home, ejecute el comando ps aux | grep java. Si inicia el proceso como usuario admin, la ruta de los registros es /home/admin/logs/schedulerx/worker.log. Si lo inicia como usuario root, la ruta es /root/logs/schedulerx/worker.log.

    Si la respuesta contiene Schedulerx Worker started, el agente se ha iniciado correctamente.

    Nota

    El agente requiere JDK 1.8 a 14. Si utiliza una versión 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:+xxxlysis"
    if [ -n "${SCHEDULERX_STARTER_MODE}" ]; then
        JAVA_OPTS="${JAVA_OPTS} -Dschedulerx.stater.mode=${SCHEDULERX_STARTER_MODE}"
    fi

Despliegue mediante imagen de Docker

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

    Nota

    Las siguientes direcciones de imagen son accesibles a través de Internet público.

    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.

    Parámetros:

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

    • SCHEDULERX_NAMESPACE especifica el ID del namespace. Puede obtener el ID desde la página Namespaces en la consola.

    • SCHEDULERX_GROUPID es el ID de la aplicación.

    • SCHEDULERX_APPKEY es la clave de la aplicación. Puede obtener la clave de la aplicación en la página Application Management en la consola.

    Después de iniciar el trabajo de despliegue, puede usar el comando docker logs para consultar los registros.

Despliegue como Kubernetes Deployment

Si ya cuenta con un entorno de Kubernetes, puede utilizar el archivo schedulerx-agent.yaml para realizar el despliegue directamente.

Código de 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

Parámetro

Descripción

${SCHEDULERX_ENDPOINT}

La región donde se despliega su aplicación y el endpoint correspondiente. Para obtener más información, consulte Endpoint list. Por ejemplo, addr-sh-internal.edas.aliyun.com.

${SCHEDULERX_NAMESPACE}

El ID del namespace. Encuéntrelo en la página Namespaces del panel de navegación izquierdo de la consola.

${SCHEDULERX_GROUPID}

El ID de la aplicación (groupId). Encuéntrelo en la página Application Management del panel de navegación izquierdo de la consola.

${SCHEDULERX_APPKEY}

La clave de la aplicación (appKey). Encuéntrela en la página Application Management del panel de navegación izquierdo de la consola.

${SCHEDULERX_SHARE_POOL_SIZE}

Opcional. El tamaño personalizado del pool de hilos de ejecución de trabajos.