本文为您介绍如何搭配使用PAI-DLC公共资源组和DataWorks,进行任务定时提交。

前提条件

操作流程

步骤一:创建独享调度资源组

  1. 登录DataWorks控制台
  2. 在左侧导航栏,单击资源组列表
  3. 独享资源组页签,单击创建调度资源组
  4. 创建独享资源组面板,配置参数。
    参数 描述
    资源组类型 选择独享调度资源组
    资源组名称 资源组名称,必须在租户内唯一。
    说明 租户即阿里云账号,一个租户(阿里云账号)下可以有多个RAM用户。
    资源组备注 资源组的简单描述,便于区分各资源组。
    订单号 选择已购买的独享资源组订单号。如果未购买,请单击购买
  5. 单击确定
    说明 独享资源组在20分钟内完成环境初始化,请耐心等待其状态更新为运行中。

步骤二:绑定归属的工作空间

独享调度资源组需要绑定归属的工作空间,才可以在对应的工作空间下选择该资源组。

  1. 独享资源组页签,单击相应资源组后的修改归属工作空间
  2. 修改归属工作空间对话框的分配到工作空间区域,单击目标工作空间操作列下的绑定

步骤三:安装部署工具包dlc

安装dlc工具包,需要联系管理员授权。

  1. 创建命令。
    1. 资源组列表独享资源组页签,单击目标资源组操作列下的运维助手
    2. 在运维助手页面,单击创建命令
    3. 创建命令页面,配置参数。
      参数 描述
      命令名称 命令的名称。
      命令描述 命令的简要描述,便于区分各命令。
      命令类型 系统默认Shell类型,不支持修改。
      命令内容 输入如下命令。
      wget -P /home/admin/usertools/tools/ http://dlc-tools.oss-cn-zhangjiakou.aliyuncs.com/release/linux/dlc
      chmod +x /home/admin/usertools/tools/dlc
      安装目录 安装至/home/admin/usertools/tools/目录。
      超时时间 命令执行的超时时间,单位为秒。如果命令执行超时,则系统强制结束命令。建议配置为60秒。
    4. 单击创建
  2. 执行命令。
    1. 在运维助手页面,单击上一步已创建命令操作列下的运行命令执行命令
    2. 运行命令面板,选择基线命令是,运行成功后纳入环境基线,其他参数使用默认配置。
    3. 单击运行
  3. 查看命令执行情况。
    1. 在运维助手页面下方的列表,单击相应命令后的查看结果查看运行结果
    2. 命令执行结果对话框,查看命令执行情况。如果执行进度为100%,则dlc工具包安装成功。工具包安装成功

步骤四:创建工作流

  1. 进入数据开发页面。
    1. 登录DataWorks控制台
    2. 在左侧导航栏,单击工作空间列表
    3. 选择工作空间所在地域后,单击相应工作空间后的进入数据开发
  2. 鼠标悬停至新建图标,单击业务流程
    业务流程
  3. 新建业务流程对话框,输入业务名称描述
    注意 业务名称必须是大小写字母、中文、数字、下划线(_)及小数点(.),且不能超过128个字符。
  4. 单击新建
  5. 在业务流程页面,拖拽通用 > Shell至右侧画布。新增节点
  6. 新建节点页面的节点名称文本框,输入部署节点
  7. 单击提交

步骤五:提交任务测试

因为定时提交任务基于原有任务节点,所以定时提交之前,需要进行冒烟测试,创建首个任务节点。如果已经存在初始节点,则直接执行步骤六。

  1. 编辑部署脚本。
    1. 在业务流程页面,双击已创建的Shell节点(部署节点)。
    2. 在Shell节点页面,输入如下命令。
      # 生成任务描述文件。
      cat << EOF > jobfile
      name=dataworks-job
      workers=1
      worker_spec=ecs.g6.large
      worker_image=registry-vpc.cn-hangzhou.aliyuncs.com/pai-dlc/pytorch-training:1.7.1-gpu-py37-cu110-ubuntu18.04
      command=echo $(date)
      EOF
      
      # 提交任务。
      /home/admin/usertools/tools/dlc submit pytorchjob\
          --access_id=<access_id> \
          --access_key=<access_key> \
          --endpoint=pai-dlc.cn-hangzhou.aliyuncs.com \
          --region=cn-hangzhou \
          --job_file=./jobfile \
          --interactive
      jobfile是描述任务相关信息的文件,具体配置细节请参见 提交命令endpoint参数与地域的对应关系如下。
      地域 Endpoint
      华东2(上海) pai-dlc.cn-shanghai.aliyuncs.com
      华北2(北京) pai-dlc.cn-beijing.aliyuncs.com
      华东1(杭州) pai-dlc.cn-hangzhou.aliyuncs.com
      华南1(深圳) pai-dlc.cn-shenzhen.aliyuncs.com
  2. 运行脚本。
    1. 在Shell节点页面,单击页面上方的2图标。
    2. 警告对话框,单击继续运行
    3. 运行参数页面,选择调度资源组为已创建的独享资源组。
    4. 单击确定
      运行完成后,即可生成一个任务。 您可以前往PAI-DLC集群控制台的任务列表页面,查看任务。

步骤六:执行定时调度

  1. 执行调度任务。
    1. 在Shell节点页面,单击页面右侧的调度配置
    2. 调度配置页面的时间属性区域,选择调度周期
    3. 调度依赖区域,单击依赖的上游节点后的使用工作空间根节点
    4. 配置依赖关系,详情请参见配置调度依赖
    5. 单击Shell节点页面上方的保存图标,保存配置。
    6. 单击Shell节点页面上方的提交图标,提交调度任务。
  2. 查看定时调度的运行实例。
    1. 在Shell节点页面,单击右上方的运维中心
    2. 运维中心页面,选择周期任务运维 > 周期实例
    3. 在实例详情页面,查看模型自动部署的定时时间
    4. 选择操作列下的更多 > 查看运行日志,查看每次定时提交任务的运行日志。查看运行日志