本节的监控仅用于Spark类型的application
我们将创建一个 EMR Serverless application以及一个 CloudWatch Dashboard来监控 EMR Serverless application的资源利用率。提交作业后,我们将访问Dashboard以更好地了解如何监控 EMR Serverless 指标
CloudWatch Dashboard会提供预初始化容量
与按需容量(on-demand)
的概述,以及 Spark 驱动程序和执行程序的 CPU、内存和磁盘使用情况的深入指标。预初始化容量(pre-initialized capacity
)是 EMR Serverless 的一项可选功能,可以预先初始化并在几秒钟内做好响应准备,此Dashboard可以帮助了解预初始化容量是否得到有效使用。
此外,还可以查看每个application job级别指标。
下载到本地:
创建stack:
使用上面下载的yaml文件:
为stack命名为emr-serverless-dashboard
,填写之前运行spark时的application id:
application id可以在EMR console上找到:
其他参数保持默认,进行创建stack。
创建stack后,将在 CloudWatch Dashboard下看到名为 emr-serverless-dashboard-<APPLICATION_ID>
:
先clone几个job运行:
几分钟后,检查Cloudwatch Dashboard,里面有这几个维度的监控:
例如Job Runs是application每分钟job状态的聚合视图,包括待处理、正在运行和失败的作业
继续往下拉,Application Metrics 显示application使用的容量,包括:
预初始化容量指标 - 显示预初始化容量的利用率,包括:
Worker总数的时间线视图
空闲 Worker 的时间线视图
Driver指标:
** Executor Metric**:
Job指标: