Tous les produits
Search
Centre de documentation

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

Dernière mise à jour :Aug 11, 2026

Une fois l'agent connecté, vous pouvez créer des tâches planifiées, relancer des tâches, consulter l'historique d'exécution et vérifier les journaux opérationnels directement depuis la console SchedulerX. Cette rubrique explique comment connecter une application non Java à SchedulerX à l'aide d'un agent, disponible sous forme de package TAR ou d'image Docker.

Prérequis

  • (Facultatif) Un namespace a été créé. Pour plus d'informations, consultez la rubrique Créer un namespace.

  • Une ressource a été créée. Pour plus d'informations, consultez la rubrique Créer une ressource.

Remarque

L'agent prend en charge la planification et l'exécution des tâches DataWorks. Pour plus d'informations, consultez la rubrique Tâches DataWorks.

Cas d'utilisation

Les principaux cas d'utilisation pour la connexion d'un agent à SchedulerX incluent :

  • Utiliser un script Shell pour nettoyer périodiquement les journaux sur tous les nœuds de travail ou démarrer un service.

  • Utiliser un script Python pour purger régulièrement les données historiques d'une base de données.

  • Utiliser une API HTTP pour scanner périodiquement les commandes.

Prérequis environnementaux

Un environnement d'exécution Java (JRE) version 1.8 ou ultérieure est requis.

Déployer manuellement l'agent

  1. Téléchargez et décompressez le package de l'agent.

    Si votre nœud de travail dispose d'une adresse IP publique, exécutez la commande suivante pour télécharger le package :

    Remarque

    Remplacez X.X.X par le numéro de version souhaité, par exemple 1.12.5.

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

    Version

    URL de téléchargement

    Description

    agent 1.13.5

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

    • Nouvelles fonctionnalités

      • Active l'arrêt gracieux pour les tâches à la seconde près.

      • Permet le transfert de données entre les tâches amont et aval dans un workflow pour les tâches de type script.

      • Permet la collecte des métriques de performance système avec cgroup v2.

    agent 1.13.2

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

    • Nouvelles fonctionnalités

      • Active la collecte des métriques CPU avec CGroup v2.

      • Permet de personnaliser la taille du pool de threads d'exécution des tâches via la clé de paramètre share.pool.size.

    agent 1.12.5

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

    Nouvelles fonctionnalités :

    • Permet de récupérer les variables système des tâches à l'aide de espaces réservés.

    • Permet de personnaliser la taille du pool de threads pour les tâches HTTP.

    • Autorise les tâches de type script à renvoyer la dernière ligne de la sortie standard comme résultat d'exécution.

    agent 1.11.5

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

    Corrections de bugs :

    • Correction des vulnérabilités de sécurité dans Netty et Logback.

    • Correction du problème « too old resource version » pour les tâches Kubernetes.

    agent 1.10.13

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

    Nouvelles fonctionnalités :

    • Permet le déploiement de plusieurs agents sur un seul nœud de travail.

    • Accepte des réponses supérieures à 1 000 octets pour les tâches HTTP.

    • Optimisation de la journalisation pour réduire le stockage des journaux historiques.

    agent 1.10.5

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

    Nouvelles fonctionnalités :

    • Active l'arrêt gracieux.

    • Active l'isolation des groupes d'applications dans le service de journalisation.

    agent 1.9.8

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

    Nouvelles fonctionnalités :

    • Active les tâches HTTP basées sur l'agent.

    • Permet à une tâche de type script de renvoyer la dernière ligne du journal en cas d'échec.

    • Active les tâches Kubernetes.

    agent 1.7.10

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

    Corrections de bugs :

    • Correction d'un problème entraînant une lenteur d'exécution des tâches à la seconde près.

    • Correction d'un problème où le service de journalisation pouvait provoquer une erreur d'épuisement de la mémoire (OOM).

    agent 1.4.2

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

    Nouvelle fonctionnalité : introduction du service de journalisation.

    Important

    Si la commande wget expire lors du téléchargement de l'agent, activez une adresse IP publique pour votre instance ou consultez la rubrique Télécharger ou envoyer des fichiers (Linux).

  2. Accédez au répertoire schedulerxAgent/conf et configurez le fichier agent.properties.

    Configurez les paramètres suivants :

    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 : le point de terminaison du service. Pour plus d'informations, consultez la rubrique Points de terminaison.

    • namespace : l'ID du namespace. Vous trouverez cette information sur la page Namespaces ou .

    • groupId et appKey : l'ID de l'application et la clé de l'application. Retrouvez ces informations sur la page Application Management.

  3. Accédez au répertoire schedulerxAgent/bin et exécutez la commande start.sh pour démarrer l'agent.

    Remarque

    Pour définir la mémoire allouée au démarrage de l'agent, exécutez start-200m.sh, start-500m.sh ou start-1g.sh.

    Pendant le démarrage, vous pouvez :

    • Arrêter l'agent : accédez au répertoire schedulerxAgent/bin et exécutez stop.sh.

    • Consulter les journaux : le chemin d'accès aux journaux est ${user.home}/logs/schedulerx/worker.log.

      Pour obtenir la valeur de user.home, exécutez la commande ps aux | grep java. Si vous démarrez le processus en tant qu'utilisateur admin, le chemin d'accès aux journaux est /home/admin/logs/schedulerx/worker.log. Si vous le démarrez en tant qu'utilisateur root, le chemin d'accès est /root/logs/schedulerx/worker.log.

    Si la réponse contient Schedulerx Worker started, l'agent a démarré avec succès.

    Remarque

    L'agent nécessite un JDK version 1.8 à 14. Si vous utilisez une version ultérieure, supprimez l'option -XX:+UseConcMarkSweepGC du fichier schedulerxAgent/bin/start.sh situé dans le répertoire d'installation de l'agent.

    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

Déployer à l'aide d'une image Docker

  1. Sélectionnez une image Docker en fonction de votre environnement réseau et de l'architecture CPU.

    Remarque

    Les adresses d'image suivantes sont accessibles via Internet public.

    Réseau

    x86_64

    arm64

    Chine (Hangzhou) (réseau public)

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

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

    Singapour (réseau public)

    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. Déployez l'agent.

    Paramètres :

    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 : le point de terminaison du service.

    • SCHEDULERX_NAMESPACE spécifie l'ID du namespace. Vous pouvez obtenir cet ID depuis la page Namespaces de la console.

    • SCHEDULERX_GROUPID correspond à l'ID de l'application.

    • SCHEDULERX_APPKEY correspond à la clé de l'application. Vous pouvez obtenir la clé de l'application sur la page Application Management de la console.

    Après avoir lancé la tâche de déploiement, utilisez la commande docker logs pour consulter les journaux.

Déployer en tant que déploiement Kubernetes

Si vous disposez déjà d'un environnement Kubernetes, utilisez le fichier schedulerx-agent.yaml pour effectuer un déploiement direct.

schedulerx-agent.yaml Exemple de code :

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

Paramètre

Description

${SCHEDULERX_ENDPOINT}

La région dans laquelle votre application est déployée et le point de terminaison correspondant. Pour plus d'informations, consultez la liste des points de terminaison. Par exemple, addr-sh-internal.edas.aliyun.com.

${SCHEDULERX_NAMESPACE}

L'ID du namespace. Retrouvez cette information sur la page Namespaces du volet de navigation de gauche de la console.

${SCHEDULERX_GROUPID}

L'ID de l'application (groupId). Retrouvez cette information sur la page Application Management du volet de navigation de gauche de la console.

${SCHEDULERX_APPKEY}

La clé de l'application (appKey). Retrouvez cette information sur la page Application Management du volet de navigation de gauche de la console.

${SCHEDULERX_SHARE_POOL_SIZE}

(Facultatif) La taille personnalisée du pool de threads d'exécution des tâches.