Agent接入后,您可以直接在SchedulerX控制台通过白屏化的方式编写定时任务、重跑任务、查看历史执行记录、查看运行日志等。本文介绍如何使用Agent(tar包或者镜像)将非Java应用接入SchedulerX。

前提条件

应用场景

Agent接入SchedulerX的主要应用场景如下:

  • 通过Shell脚本定时清理所有机器的日志或定时拉起某个服务。
  • 通过Python脚本定时清理数据库历史数据。
  • 通过HTTP接口定时扫描订单。

环境要求

运行环境要求为JRE 1.8及以上版本。

手动部署Agent

  1. 下载Agent,并解压缩。
    如果您的机器开通了公网IP,可以直接执行如下命令下载:
    说明 X.X.X为版本号,您可以替换为自己需要的版本号,例如1.9.0。
    wget https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-X.X.X.tar.gz
    版本下载地址版本说明
    Agent 1.9.0http://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.9.0.tar.gz新增特性:
    • 支持Agent模式HTTP任务。
    • Shell任务支持内置参数。关于使用说明,请参见脚本任务
    Agent 1.7.10https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.7.10.tar.gz
    • 修复秒级别任务运行慢的问题。
    • 修复日志服务可能导致OOM的问题。
    Agent 1.6.0https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.6.0.tar.gz新增特性:K8s任务。
    Agent 1.4.2https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.4.2.tar.gz新增特性:支持日志服务。
  2. 进入schedulerxAgent/conf目录,配置agent.properties文件。
    配置信息如下:
    endpoint=addr-hz-internal.edas.aliyun.com
    namespace=fd2965c4-****-****-af52-bb62aa4*****
    groupId=hxm.test
    appKey=1234*****
    • Endpoint为终端地址,请参见Endpoint列表
    • namespace为命名空间ID,你可以在微服务空间页面获取。
    • 应用ID应用key为应用的唯一标识和账号,您可以在任务调度 > 应用管理页面获取。
  3. 进入schedulerxAgent/bin目录,执行start-200m.sh命令启动部署。根据任务负载及机器配置情况可对应使用start-100m.sh start-200m.shstart-500m.sh
    说明 start-200m.sh仅为示例,您需要根据任务负载及机器配置情况执行对应的命令,如start-100m.shstart-500m.sh
    启动过程中,您可以根据需要执行以下操作:
    • 停止Agent命令:进入schedulerxAgent/bin目录,执行stop.sh
    • 查看日志:日志路径为${user.home}/logs/schedulerx/worker.log

      user.home可以通过执行ps aux | grep java命令查看。如果是admin用户启动的进程,日志路径为/home/admin/logs/schedulerx/worker.log;如果是root用户启动的进程,日志路径为/root/logs/schedulerx/worker.log

    回显信息包含Schedulerx Worker started时,表示部署成功。

通过Docker镜像部署Agent

  1. 根据您的网络环境和CPU架构选择镜像。
    网络x86_64arm64
    公网registry.cn-hangzhou.aliyuncs.com/schedulerx/agent:1.6.0-amd64registry.cn-hangzhou.aliyuncs.com/schedulerx/agent:1.6.0-arm64
    华东1(杭州)VPCregistry-vpc.cn-hangzhou.aliyuncs.com/schedulerx/agent:1.6.0-amd64registry-vpc.cn-hangzhou.aliyuncs.com/schedulerx/agent:1.6.0-arm64
    其他地域VPCregistry-vpc.{regionId}.aliyuncs.com/schedulerx/agent:1.6.0-amd64registry-vpc.{regionId}.aliyuncs.com/schedulerx/agent:1.6.0-arm64
  2. 部署Agent。
    参数说明:
    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即Endpoint。
    • SCHEDULERX_NAMESPACE为命名空间ID,可以在控制台的微服务空间页面获取。
    • SCHEDULERX_GROUPID为应用ID,SCHEDULERX_APPKEY为应用Key,可以在控制台的任务调度 > 应用管理页面获取。

    启动部署任务后,您可以通过docker logs命令查看日志。