新版数据开发:绑定EMR计算资源

若您要使用DataWorks进行E-MapReduce(简称EMR)任务的开发、管理,需先将您的E-MapReduce集群绑定为DataWorksEMR计算资源。绑定完成后,可在DataWorks中使用该计算资源进行数据同步和开发等操作。

前提条件

使用限制

  • 产品限制:

    • 开启Kerberos认证的EMR集群的安全组需要对资源组绑定的交换机网段放开UDP协议端口的入权限。

      说明

      您需单击EMR集群基础信息集群安全组image图标,进入安全组详情页签,单击访问规则入方向,选择手动添加协议类型选择自定义UDP端口范围配置详情请查看EMR集群中的/etc/krb5.conf文件中对应的kdc端口,授权对象设置为资源组绑定的交换机网段。

    • DataLake或自定义集群若要在DataWorks管理元数据,您可在集群侧或设置SPARK参数时配置EMR-HOOK。若未配置,则在DataWorks中无法实时展示元数据、生成审计日志、展示血缘关系,EMR相关治理任务将无法开展。目前仅EMR Hive、EMR Spark SQL服务支持配置EMR-HOOK,配置详情请参见配置HiveEMR-HOOK配置Spark SQLEMR-HOOK

      说明
  • 地域限制:华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)、中国香港、日本(东京)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、德国(法兰克福)、英国(伦敦)、美国(硅谷)、美国(弗吉尼亚)。

  • 权限限制

    操作人

    具备权限说明

    阿里云主账号

    无需额外授权。

    阿里云RAM账号/RAM角色

    仅拥有运维空间管理员角色的空间成员,或拥有AliyunDataWorksFullAccess权限的空间成员可创建计算资源。授权详情请参见授权用户空间管理员权限

注意事项

  • 支持在DataWorks使用以下EMR版本的Hadoop集群(旧版数据湖):

    EMR-3.38.2、EMR-3.38.3、EMR-4.9.0、EMR-5.6.0、EMR-3.26.3、EMR-3.27.2、EMR-3.29.0、EMR-3.32.0、EMR-3.35.0、EMR-4.3.0、EMR-4.4.1、EMR-4.5.0、EMR-4.5.1、EMR-4.6.0、EMR-4.8.0、EMR-5.2.1、EMR-5.4.3。

  • Hadoop集群(旧版数据湖)已不建议使用,请尽快迁移至DataLake集群,详情请参见Hadoop集群迁移至DataLake集群

进入计算资源列表页

  1. 登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的更多 > 管理中心,在下拉框中选择对应工作空间后单击进入管理中心

  2. 在左侧导航栏单击计算资源,进入计算资源列表页。

绑定EMR计算资源

计算资源列表页,配置绑定EMR计算资源。

  1. 选择绑定计算资源类型。

    1. 单击绑定计算资源新建计算资源,进入绑定计算资源页面。

    2. 绑定计算资源页面选择计算资源类型为EMR,进入绑定EMR计算资源配置页面。

  2. 配置EMR计算资源。

    绑定EMR计算资源配置页面,根据下表内容进行相应配置。

    参数

    配置说明

    集群所属云账号

    支持选择当前阿里云主账号其他阿里云主账号

    说明

    使用其他阿里云主账号时,您可根据场景:注册跨账号的EMR集群,进行相关账号授权后根据界面提示填写相关参数。

    集群类型

    您可根据业务需要选择您所需使用的集群类型。

    集群

    在对应集群类型下选择您所使用的EMR集群。

    默认访问身份

    • 开发环境:可选择使用集群账号hadoop,或任务执行者所映射的集群账号。

    • 生产环境:可选择使用集群账号hadoop,任务责任人、阿里云主账号或阿里云子账号所映射的集群账号。

      说明

      当默认访问身份选择任务责任人、阿里云主账号或阿里云子账号所映射的集群账号时,您可以参考设置集群身份映射手动配置DataWorks租户成员与EMR集群指定账号的映射关系。通过该映射的集群账号在DataWorks执行EMR任务,未配置DataWorks租户成员与集群账号映射的情况下,DataWorks处理策略如下:

      • 若使用RAM用户(子账号)执行任务:我们将默认按照与当前操作人同名的EMR集群系统账号执行任务。若集群开启LDAP或者Kerberos认证,任务执行将失败。

      • 若使用阿里云主账号执行任务:DataWorks任务执行将报错。

    传递Proxy User信息

    用于配置是否传递Proxy User信息。

    说明

    当开启LDAP/Kerberos等认证方式时,集群会为每个普通用户颁发一个认证凭证,该操作比较麻烦。为方便统一管理用户权限,您可通过某个超级用户(Real User)代理普通用户(Proxy User)进行权限认证,此时,通过Proxy User访问集群时,实际使用的是超级用户的身份认证信息。您只需将用户添加为Proxy User即可。

    • 传递:在EMR集群中运行任务时,根据Proxy User进行数据访问权限的校验及控制。

      • DataStudio(数据开发)、数据分析:将动态传递任务执行者的阿里云账号名称,即Proxy User信息作为任务执行者的信息。

      • 运维中心:将固定传递注册集群时配置的默认访问身份的阿里云账号名称,即Proxy User信息,作为默认访问身份的信息。

    • 不传递:在EMR集群中运行任务时,根据注册集群时配置的账号认证方式进行数据访问权限的校验及控制。

    不同类型的EMR任务,传递Proxy User信息的方式如下:

    • EMR Kyuubi任务:通过hive.server2.proxy.user配置项传递。

    • EMR Spark任务及非JDBC模式的EMR Spark SQL任务:通过-proxy-user配置项传递。

    配置文件

    当集群类型选择HADOOP时,您可以前往EMR控制台获取配置文件。详情请参见导出和导入服务配置。导出后请根据产品界面要上传的配置文件,修改文件名称。

    此外,您还可以登录EMR集群,通过以下路径获取相关配置文件。

    /etc/ecm/hadoop-conf/core-site.xml
    /etc/ecm/hadoop-conf/hdfs-site.xml
    /etc/ecm/hadoop-conf/mapred-site.xml
    /etc/ecm/hadoop-conf/yarn-site.xml
    /etc/ecm/hive-conf/hive-site.xml
    /etc/ecm/spark-conf/spark-defaults.conf
    /etc/ecm/spark-conf/spark-env.sh

    计算资源实例名

    自定义计算资源实例名。在任务运行时,可根据计算资源名称来选择任务运行的计算资源。

  3. 单击确认,完成EMR计算资源配置。

资源组初始化

初次注册集群、集群服务配置变更组件版本升级(例如:修改core-site.xml)请初始化资源组,确保通过配置网络连通,资源组可正常访问EMR集群。

  1. 计算资源列表页,找到您所创建的EMR计算资源。单击右上角的资源组初始化

  2. 在需要的资源组后面单击初始化。资源组初始化成功后,单击确定即可。

(可选)设置YARN资源队列

可在计算资源列表页找到您所绑定的EMR集群,在YARN 资源队列页签单击编辑YARN 资源队列,在不同模块为任务设置全局YARN资源队列

(可选)设置SPARK参数

在不同模块为任务设置专有的SPARK属性参数。

  1. 计算资源列表页找到您所绑定的EMR集群。

  2. 单击SPARK 参数页签的编辑SPARK 参数按钮,进入编辑EMR集群的SPARK参数页。

  3. 通过单击模块下方的添加按钮,输入Spark属性名称和对应的Spark属性值,在不同模块为任务设置全局Spark参数

后续步骤

  • 设置Kyuubi连接信息:若您需使用自定义的账号及密码登录Kyuubi来运行相关任务,可参考该文档自定义Kyuubi的连接信息。

  • 配置完EMR计算资源后,您可在数据开发中通过EMR相关节点进行数据开发操作。