火山引擎 EMR on ECS 是将 火山引擎 E-MapReduce(EMR)的大数据计算组件(包括 Hadoop、Spark、Hive 等)部署在 ECS(云服务器)实例上的一种半托管产品形态,支持灵活的集群配置,可适应各种复杂的数据处理和分析场景。本文适合第一次接触 EMR on ECS 的用户,通过创建一个可运行的 Hadoop 集群,了解 EMR on ECS 的基本功能和使用方式。
作业(Job):作业是一个完整的数据计算任务,当用户需要在 EMR on ECS 集群中提交一个数据计算任务时,可在 EMR 中提交作业,作业提交后,系统使用集群计算资源执行作业。
从 EMR 控制台登录 master 节点:
使用命令行方式提交一个 Spark 作业。开启 Spark 服务的集群自带一个示例 Spark 作业,在命令行直接提交此作业即可。
说明
spark-examples_<Versino>.jar为集群自带,具体文件名因 Spark 版本而异。您可登录集群节点后,执行find / -name "spark-examples*.jar" 2>/dev/null命令查看当前集群中的实际 JAR 包名称和路径。Spark 更多操作请参见 Spark-快速开始。以 Spark 3.5.1版本为例,在终端命令行提交:
spark-submit --class org.apache.spark.examples.SparkPi --master yarn --num-executors 3 --driver-memory 512m --executor-memory 512m --executor-cores 1 /opt/emr/current/spark3/examples/jars/spark-examples_2.12-3.5.1.jar
重要任务参数说明如下:
参数 | 样例 | 备注 |
|---|---|---|
class | org.apache.spark.examples.SparkPi | 程序入口类 |
master | yarn | 程序执行模式,可选yarn,yarn-client |
num-executors | 3 | 并行executor个数 |
driver-memory | 512m | driver程序使用的内容,最大不可超过该节点的总内存资源 |
executor-memory | 512m | 单个executor使用的内存大小,最大不可超过该节点的总内存资源 |
executor-cores | 1 | 单个executor的并行数 |
验证作业运行结果。日志中有以下三个成功标志,说明作业运行成功。
标志 | 内容 |
|---|---|
计算结果 | Pi is roughly 3.144275721378607 |
正常退出 | SparkContext is stopping with exitCode 0 |
资源清理 | ShutdownHookManager: Shutdown hook called |
前提条件:创建集群时可选服务中开启了 Hue 服务。
注意
若访问链接不能点击,请检查 Hue 所在 ECS 实例是否绑定弹性公网IP,详见访问链接和云服务器绑定公网 IP。
说明
Hue 已默认接入了 LDAP 鉴权,用户可使用 LDAP 中已有账号进行登录。首次登录需先添加用户,详细操作请参考:用户管理。
一站式大数据研发治理套件(DataLeap),帮助您快速完成数据集成、数据开发、运维、治理、安全等全套数据中台建设,来帮助企业提升数据研发效率,降低运维管理成本。DataLeap 项目可通过绑定 EMR 引擎实例的方式,来创建 EMR 作业并运行。
使用租户主账号开通 DataLeap 产品,并授予云资源相应角色权限。详见充值及购买。
进入 DataLeap 控制台 DataLeap 控制台。,在左侧导航栏中单击项目管理 > 创建项目,进行项目创建。在创建项目界面,完成项目基础信息、项目管控、服务绑定等配置信息。其中,在服务绑定-引擎绑定项,您需勾选 E-MapReduce 引擎服务,并在下拉框中,选择已创建的集群名称信息。其余配置信息,详见新建项目新建项目。
其中,在服务绑定-引擎绑定项,您需勾选 E-MapReduce 引擎服务,并在下拉框中,选择已创建的集群名称信息。其余配置信息,详见新建项目新建项目。
注意
EMR 实例首次绑定 DataLeap 项目时,需打开 EMR 实例所在安全组的访问权限,方可继续选择 Yarn 队列。详见如何开放EMR实例所在安全组的访问权限?

项目创建完成后,您可以在 DataLeap 控制台上进行 EMR 作业的数据开发、任务运维监控、元数据采集等相关操作。完整详见 DataLeap on EMR 快速入门。
相关模块功能描述如下,详见各功能指导文档:
模块 | 描述 |
|---|---|
数据开发 | 您可以根据实际业务场景,选择创建合适的 EMR 节点类型进行作业开发。 |
任务运维 | 提供线上任务的管理运维操作,支持离线、流式的任务运维;通过配置监控规则,实现对任务运行状态的监控。 |
数据质量 | 提供对离线、流式数据产出表的数据质量监控。 |
数据地图元数据 | 通过元数据采集方式可视化管理 EMR 元数据,您可以在数据地图中查看 EMR 表数据、血缘图谱等。 |