使用自定义数据集成资源组运行数据同步任务,能够帮助您解决DataWorks公共资源组与您的数据源无法连通的问题,实现更高速的传输。本文为您介绍如何新增并使用自定义数据集成资源组。

前提条件

  • 购买DataWorks

    仅DataWorks专业版及以上版本支持使用自定义数据集成资源组。您需要提前购买DataWorks专业版及以上版本,购买详情请参见版本服务计费说明

  • 已有自有服务器资源

    使用自定义数据集成资源组之前,您需要已有自有服务器资源。本文以使用ECS服务器示例,为您介绍使用自定义数据集成资源组之前与自有服务器相关的准备工作,详情请参见准备工作

使用限制

  • 权限限制

    仅拥有空间管理员角色权限的用户支持新增或修改自定义数据集成资源组。如果指定用户需要新增或修改自定义数据集成资源组,则可授权该用户为空间管理员角色,详情请参见角色及成员管理:空间级

  • 与ECS服务器相关的限制
    • 自定义数据集成资源组所在的ECS服务器的时间与当前互联网时间差必须在2分钟之内,否则会导致部署的资源组服务请求接口超时,服务异常,无法执行任务。
    • 一台ECS机器只能添加于一个自定义数据集成资源组,每个资源组只能选择一种网络类型。
  • 使用范围限制
    • 自定义数据集成资源组只能给当前工作空间作为数据同步资源组使用,不会显示在资源组列表页面。
    • 自定义数据集成资源组不支持给手动业务流程的数据同步节点使用。

准备工作

  1. 购买云服务器ECS。
    购买ECS云服务器的具体操作请参见购买ECS云服务器
    说明
    • 请使用CentOS 6、CentOS 7或Aliyun OS操作系统。
    • 如果您添加的ECS需要执行MaxCompute引擎任务或数据同步任务,则需要检查当前ECS的Python版本是否为Python2.6或2.7(CentOS 5的版本为Python 2.4,其它OS自带Python 2.6以上版本)。
    • 请确保ECS具有访问公网的能力,您可以使用ping www.aliyun.com命令查看连通性。
    • 建议ECS的配置为8核16G。
  2. 查看ECS主机名和内网IP地址。
    登录云服务器ECS控制台,在实例页面,查看购买的ECS主机名和IP地址。主机名和IP地址用于后续自定义数据集成资源组添加ECS服务器。查看ECS
  3. 开通8000端口。
    开通8000端口便于您读取日志,定位问题。
    说明
    • 如果您的ECS是VPC专有网络类型,则无需开通8000端口。下述步骤仅适用于经典网络。
    • 如果您发现alisatasknode日志中有超时报错信息response code is not 200,通常是因为某个时间段访问服务接口不稳定的异常导致。如果异常持续时间小于10分钟,自定义资源组服务器依然可以正常服务。您可以查看日志/home/admin/alisatasknode/logs/heartbeat.log进行确认。
    1. 进入安全组页面。
      进入ECS服务器的安全组列表页面。
    2. 单击目标安全组操作列的配置规则
    3. 开通8000端口。
      安全组规则 > 入方向页签,单击手动添加,设置端口范围8000/8000授权对象为数据集成的固定IP。手动添加
    4. 单击保存,成功开通8000端口。

操作流程

使用自定义数据集成资源组的主要操作流程如下:
  1. 自定义数据集成资源组使用前准备工作
  2. 新增并配置自定义数据集成资源组
  3. 使用自定义数据集成资源组
自定义数据集成资源组配置完成后,可能出现的常见问题及解决方案,可参见常见问题;后续对​资源组的相关管理操作,可参见管理自定义数据集成资源组

新增并配置自定义数据集成资源组

  1. 进入数据集成页面。
    1. 登录DataWorks控制台
    2. 在左侧导航栏,单击工作空间列表
    3. 选择工作空间所在地域后,单击相应工作空间后的数据集成
  2. 进入自定义资源组管理
    数据集成页面左侧导航栏,单击配置选项 > 自定义资源组,进入自定义资源组管理页面。
    注意 该页面不显示公共资源组,仅显示您添加的自定义数据集成资源组。
  3. 创建并配置自定义数据集成资源组。
    1. 自定义资源组管理页面,单击右上方的创建自定义资源组
    2. 配置资源组基本信息。
      1. 创建自定义资源组 > 创建资源组页签,输入资源组名称
        说明 数据源名称必须以字母、数字、下划线(_)组合,且不能以数字和下划线(_)开头。
      2. 单击下一步
    3. 资源组添加服务器。
      1. 添加服务器
        参数 描述
        网络类型 包括阿里云经典网络专有网络
        说明 除华东2(上海)地域支持经典网络外,其它地域仅支持专有网络
        服务器名称 输入服务器名称。您可以登录ECS,执行hostname命令,获取服务器名称。
        说明 仅当网络类型 选择阿里云经典网络时,需要配置该参数。
        ECS UUID 输入ECS UUID。 您可以登录ECS,执行dmidecode | grep UUID命令,获取ECS UUID
        说明 仅当网络类型 选择专有网络时,需要配置该参数。
        机器IP 请输入内网机器IP。
        机器CPU(核) 建议自定义资源组机器CPU配置至少为4核。
        机器内存(GB) 建议自定义资源组机器内存配置至少为8 GB RAM和80 GB磁盘。
      2. 单击下一步
    4. 安装Agent。
      1. 根据安装Agent对话框中的提示,依次操作。安装Agent
        说明
        • 如果执行install.sh命令时出错或需要重新执行,您需要在install.sh的同一个目录下先执行rm –rf install.sh命令,删除已经生成的文件,再执行install.sh
        • 初始化界面对于每个用户的命令都不一样,请根据自己的初始化界面执行相关命令。
      2. 单击下一步
    5. 检查连通性。
      检查连通页签,单击刷新,确认服务器的当前状态
      • 当服务器状态为可用时,表示资源组和服务器连通,您可以正常使用资源组。
      • 当服务器状态为不可用时,表示资源组和服务器未连通,您需要根据实际情况排查处理。
  4. 单击完成,成功创建并配置自定义数据集成资源组。
    新增并配置完成自定义数据集成资源组后,可能出现的问题与解决方案,详情请参见常见问题

使用自定义数据集成资源组

自定义数据集成资源组创建并配置完成后,您可以通过如下方式切换任务使用的资源组为自定义数据集成资源组。
说明 仅离线同步任务支持切换自定义数据集成资源组。
操作环境 支持的切换操作 界面入口
切换生产环境资源组 批量切换 进入运维中心 > 周期任务界面设置。
勾选需要修改资源组的任务,单击底部菜单栏的修改数据集成资源组,即可批量修改。批量切换
切换开发环境资源组
  • 单个任务切换
  • 批量切换
进入DataStudio页面设置。
  • 单个任务切换
    进入目标节点的编辑页面,在右侧导航栏的数据集成资源组配置中即可修改。切换单个资源组
  • 批量切换
    单击批量操作图标,勾选需要修改资源组的任务,单击底部菜单栏的修改数据集成资源组,即可批量修改。批量操作

管理自定义数据集成资源组

自定义数据集成资源组创建并配置完成后,您可以在自定义资源组管理页面,查看资源组的网络类型、绑定的服务器等信息,或对目标资源组执行服务器初始化管理删除等操作。删除自定义数据集成资源组。
  • 管理:用于查看资源组所绑定服务器的IP、状态、资源使用率等信息。您也可以修改、删除资源组所绑定的服务器,或为该资源组添加新的服务器。具体操作,详情请参见新增并配置自定义数据集成资源组添加服务器步骤。
    说明
    • 资源使用率不为0%时,表示该资源组当前的服务器中存在运行中的任务。
    • 资源组添加新服务器后,必须执行服务器初始化操作。
  • 服务器初始化:资源组添加服务器后,需要执行初始化操作。
    单击服务器初始化,按照所示步骤进行初始化。服务器初始化
  • 删除:单击删除,即可删除目标资源组。
    说明 DataWorks不支持删除存在运行任务的资源组,执行删除操作前,您需要确保目标资源组中不存在运行状态的任务。

    您可以进入运维中心 > 周期任务运维 > 周期任务页面,通过资源组名称进行筛选,查看资源组中任务的运行状态,详情请参见查看并管理周期任务

常见问题

新增并配置完成自定义数据集成资源组后,如果添加的ECS服务器一直处于停止状态,则可能会出现下图中的问题。停止
您需要按照如下步骤排查处理:
  1. 切换至Admin账号。
  2. 执行hostname -i命令,查看Host的绑定情况。
  3. 执行vim/etc/hosts命令,添加IP地址和主机名。
  4. 刷新页面服务状态,查看ECS服务器是否注册成功。
    • 如果刷新后ECS服务器为启用状态,则问题已解决。
    • 如果刷新后ECS服务器仍为停止状态,请按如下步骤重启alisa。
      1. 切换至Admin账号。
      2. 执行/home/admin/alisatasknode/target/alisatasknode/bin/serverctl restart命令重启alisa。
        说明 命令中涉及您的访问密钥,请勿轻易泄露。