对接使用CDH与CDP
DataWorks 提供了与CDH(Cloudera’s Distribution Including Apache Hadoop,以下简称CDH) 与CDP(Cloudera Data Platform,以下简称CDP)集群对接的能力,在保留CDH集群或CDP集群作为存储和计算引擎的前提下,您可以使用DataWorks的任务开发、调度、数据地图(元数据管理)和数据质量等一系列的数据开发和治理功能。CDP与CDH基于DataWorks的开发操作基本一致,本文以CDH为例为您介绍DataWorks如何对接使用CDH与CDP。
前提条件
在DataWorks中对接使用CDH引擎时,主要配置流程为:
对接配置完成后,您可在DataWorks上开发CDH引擎的数据开发任务并运行,并在运行后通过DataWorks的运维中心查看任务运行情况。详情可参见使用DataWorks进行数据开发和运维监控配置。
使用限制
在DataWorks中使用CDH相关功能,必须使用DataWorks的独享调度资源组。
您需要先保障CDH集群和独享调度资源组的网络可达后再进行后续的相关操作。
目前DataWorks支持的CDH版本有:cdh6.1.1、cdh5.16.2、cdh6.2.1和cdh6.3.2。
Step1:获取CDH集群配置信息
获取CDH版本信息,用于后续DataWorks中新增CDH引擎配置。
登录Cloudera Manager,在主界面集群名称旁可查看当前部署的CDH集群版本,如下图所示。
获取Host地址与组件地址信息,用于后续DataWorks中新增CDH引擎配置。
方式一:使用DataWorks JAR包工具获取。
登录Cloudera Manager,下载工具JAR包。
wget https://dataworks-public-tools.oss-cn-shanghai.aliyuncs.com/dw-tools.jar
运行工具JAR包。
export PATH=$PATH:/usr/java/jdk1.8.0_181-cloudera/bin java -jar dw-tools.jar <user> <password>
其中
<user>
和<password>
分别是Cloudera Manager的用户名和密码。在运行结果中查看并记录CDH的Host地址和组件地址信息。
方式二:在Cloudera Manager页面手动查看。
登录Cloudera Manager,在主机(Hosts)下拉菜单中选择角色(Roles),根据关键字和图标识别出需要配置的服务,然后看左侧对应的主机(Host),按照格式补全要填写的地址。默认端口号可以参考方法一的输出结果样例。
其中
HS2:HiveServer2
HMS:Hive Metastore
ID:Impala Daemon
RM:YARN ResourceManager
获取配置文件,用于后续上传至DataWorks。
登录Cloudera Manager。
在状态页面,单击集群的下拉菜单中的查看客户端配置 URL。
在对话框中下载YARN的配置包。
获取CDH集群的网络信息,用于后续与DataWorks的独享调度资源组网络联通配置。
登录部署CDH集群的ECS控制台。
在实例列表中找到部署CDH集群的ECS实例,在实例详情中查看并记录安全组、专有网络、虚拟交换机信息。
Step2:配置网络联通
DataWorks的独享调度资源组购买创建完成后,默认与其他云产品网络不可达,在对接使用CDH时,您需获取部署CDH集群的网络信息,将独享调度资源组绑定至CDH集群所在的VPC网络中,保障CDH集群与独享调度资源组的网络联通。
进入独享资源组网络配置页面。
登录DataWorks控制台。
在左侧导航栏,单击资源组列表,默认进入独享资源组页签。
单击已购买的独享调度资源组后的网络设置。
绑定VPC。
在专有网络绑定页签,单击新增绑定,在配置页面选择上述步骤4记录的CDH集群所在VPC、可用区、交换机、安全组。
配置Host。
在Host配置页签,单击批量修改,在对话框中配置为上述步骤2中记录的Host地址信息。
Step3:在DataWorks中新增CDH集群配置
只有工作空间管理员才能进行新增CDH集群配置操作,操作时请使用拥有空间管理员权限的账号。
进入项目空间管理页面。
登录DataWorks控制台。
在左侧导航栏,单击工作空间列表。
单击目标工作空间后的管理。
在工作空间管理页面,单击 。
在CDH集群配置页面单击立即新增,在新增CDH集群配置对话框中,填写上述步骤Step2:配置网络联通中记录的组件地址信息。
其中:
集群名称:可自定义集群名称。
版本信息:根据实际情况选择对应的CDH和组件版本。
地址信息:根据上述步骤中记录的地址信息填写。其中:
Yarn的jobhistory.webapp.address信息:yarn.resourcemanager.address地址的端口修改为8088即为jobhistory.webapp.address。
Presto的JDBC地址:Presto非CDH默认组件,需要根据实际部署情况填写访问地址。
上传配置文件并授权给其他工作空间。
配置访问身份的映射关系。
如果您希望在运行任务时,对不同云账号在CDH集群内可访问的数据进行数据权限隔离,则可开启Kerberos账号(principal)认证,并配置云账号与Kerberos账号的权限映射关系。
说明Kerberos账号为CDH集群的访问账号。CDH集群通过Sentry或Ranger组件为Kerberos账号进行不同权限的配置,实现数据权限隔离。与Kerberos账号存在映射关系的云账号拥有相同的CDH集群数据访问权限。请填写格式为
实例名@领域名
的Kerberos账号(principal),例如,cdn_test@HADOOP.COM。单击确定,完成新增CDH集群配置。
完成新增CDH集群配置后,已授权的工作空间中可新增此CDH引擎,用于后续编辑并运行数据开发等任务。
Step4:在DataWorks中新增CDH引擎
在管理中心页面,单击工作空间。
在计算引擎信息区域的CDH页签单击增加实例,在弹窗中配置实例信息。
新增引擎实例时,可选择使用快捷模式或安全模式访问模式,安全模式可以实现不同云账号运行任务时的数据权限隔离。不同访问模式的配置界面如下:
快捷模式的实例信息配置。
安全模式的实例信息配置。
填写实例显示名称。
选择访问模式。
快捷模式
该访问模式使用便捷,多个云账号对应一个集群账号,多个账号均可访问同一个集群账号内的数据,无法实现不同云账号运行任务时的数据权限隔离。
安全模式
该访问模式允许您配置云账号与CDH集群账号的身份映射关系,实现不同云账号运行任务时的数据权限隔离。
选择上述新增的CDH集群配置。
如果上一步访问模式选择快捷模式,则此处选择未开启Kerberos认证的CDH集群。如果访问模式选择安全模式,则此处需要选择已开启Kerberos认证的CDH集群。您可以创建工作空间查看CDH集群是否开启Kerberos认证。
设置访问集群的认证信息。
快捷模式
当前仅支持指定特定账号,建议使用admin或hadoop账号。该账号仅用于下发任务。
安全模式
您可以根据需求选择调度访问身份。该身份用于在任务提交调度后自动调度运行任务,并且需要配置云账号与CDH集群账号的身份映射,详情请参见配置访问身份映射。
说明在DataStudio页面,运行任务所使用的身份均为当前已登录云账号映射的集群访问身份。因此,除了需要为调度访问身份配置身份映射外,建议为项目空间开发成员也配置身份映射,避免页面运行任务失败。
选择已经购买好的独享调度资源组。
单击测试连通性。
如果网络连通测试失败,可能是因为独享调度资源组没有绑定CDH集群所在的专有网络,或者独享调度资源组没有设置Host,请参见Step2:配置网络联通检查独享调度资源组的网络配置。
单击确定,创建计算引擎实例。
此步骤会触发独享调度资源组的初始化(安装访问CDH集群的客户端以及上传配置文件),您需要等待独享资源组初始化状态 从准备中变成完成,CDH引擎实例才创建完成。
在创建的CDH引擎实例页面单击测试服务连通性,DataWorks会运行测试任务测试客户端和配置文件是否正确安装。
使用DataWorks进行数据开发
完成新增CDH引擎后,您就可以在DataStudio(数据开发)中创建Hive、Spark、MapReduce、Impala或者Presto任务节点,直接运行任务或者设置周期调度运行任务。以下以创建并运行一个Hive任务为例,为您介绍在DataWorks中如何进行CDH引擎的数据开发和运行。
进入数据开发页面。
登录DataWorks控制台,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据开发。
创建业务流程,根据界面提示填写业务流程信息。
单击创建好的业务流程,在CDH引擎文件夹上右键选择 。
在右侧代码编辑框中编写Hive SQL,完成代码编辑后单击顶部
运行图标,选择调度资源组并确认,运行完毕后可以查看Hive SQL的运行结果。
如果想要设置任务周期调度,单击右侧的调度配置,在弹窗中设置时间属性、资源属性和调度依赖,完成后单击提交任务,提交成功后任务就可以按照配置周期调度运行,调度配置详情可参见 配置基础属性。
在运维中心中可以查看提交的周期任务,在周期实例中查看任务周期调度的运行情况。详细可参见查看并管理周期任务。
运维监控配置
CDH引擎的任务支持使用DataWorks运维中心的智能监控功能,通过自定义报警规则、配置任务告警,根据设置的报警规则自动触发任务运行异常报警。自定义报警规则操作可参见规则管理,配置任务告警操作可参见基线管理。
数据质量规则配置
在DataWorks上使用CDH引擎时,可使用DataWorks的数据质量服务进行数据查、对比、质量监控、SQL扫描和智能报警等功能,数据质量服务的详细操作可参见数据质量概述。
数据地图配置
在DataWorks上使用CDH引擎时,可使用DataWorks的数据地图服务采集CDH集群中Hive数据库、表、字段、分区元数据,便于实现全局数据检索、元数据详情查看、数据预览、数据血缘和数据类目管理等功能。
当前仅支持Hive数据库。
DataWorks上数据地图功能的详细介绍与配置指导可参见数据地图概述。