監控 EMR Serverless 應用程式和任務 - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

監控 EMR Serverless 應用程式和任務

透過 EMR Serverless 的 Amazon CloudWatch 指標,您可以接收 1 分鐘的 CloudWatch 指標並存取 CloudWatch 儀表板,以檢視 EMR Serverless 應用程式的near-real-time操作和效能。

EMR Serverless 每分鐘將指標傳送至 CloudWatch。EMR Serverless 會在應用程式層級以及任務、工作者類型和capacity-allocation-type層級發出這些指標。

若要開始使用,請使用 EMR Serverless GitHub 儲存庫中提供的 EMR Serverless CloudWatch 儀表板範本並進行部署。

注意

EMR Serverless 互動式工作負載僅啟用應用程式層級監控,並具有新的工作者類型維度 Spark_Kernel。若要監控和偵錯互動式工作負載,您可以從 EMR Studio 工作區中檢視日誌和 Apache Spark UI。

監控指標

重要

我們正在重組指標顯示,以新增 ApplicationNameJobName做為維度。舊的現有指標仍然可用,但我們建議您使用新的指標。

目前維度

下表說明 AWS/EMR Serverless 命名空間中可用的 EMR Serverless 維度。

EMR Serverless 指標的維度
維度 描述
ApplicationId

使用應用程式 ID 篩選 EMR Serverless 應用程式的所有指標。

ApplicationName

使用 名稱篩選 EMR Serverless 應用程式的所有指標。如果未提供名稱,或包含非 ASCII 字元,則會發佈為 【未指定】

JobId

篩選任務執行 ID 的 EMR Serverless 的所有指標。

JobName

使用 名稱篩選 EMR Serverless 任務執行的所有指標。如果未提供名稱,或包含非 ASCII 字元,則會發佈為 【未指定】

WorkerType

篩選指定工作者類型的所有指標。例如,您可以篩選 Spark 任務的 SPARK_DRIVERSPARK_EXECUTORS

CapacityAllocationType

篩選指定容量分配類型的所有指標。例如,您可以篩選 PreInitCapacity的預先初始化容量和其他OnDemandCapacity項目。

應用程式層級監控

您可以使用 Amazon CloudWatch 指標監控 EMR Serverless 應用程式層級的容量使用量。您也可以設定單一檢視來監控 CloudWatch 儀表板中的應用程式容量用量。

EMR Serverless 應用程式指標
指標 描述 單位 維度
MaxCPUAllowed

應用程式允許的 CPU 上限。

vCPU ApplicationId, ApplicationName
MaxMemoryAllowed

應用程式允許的記憶體上限,以 GB 為單位。

GB (GB) ApplicationId, ApplicationName
MaxStorageAllowed

應用程式的允許最大儲存體,以 GB 為單位。

GB (GB) ApplicationId, ApplicationName
CPUAllocated

配置vCPUs 總數。

vCPU ApplicationId, ApplicationName, WorkerType, CapacityAllocationType
IdleWorkerCount

工作者閒置總數。

計數 ApplicationId, ApplicationName, WorkerType, CapacityAllocationType
MemoryAllocated

配置的總記憶體,以 GB 為單位。

GB (GB) ApplicationId, ApplicationName, WorkerType, CapacityAllocationType
PendingCreationWorkerCount

待建立的工作者總數。

計數 ApplicationId, ApplicationName, WorkerType, CapacityAllocationType
RunningWorkerCount

應用程式正在使用的工作者總數。

計數 ApplicationId, ApplicationName, WorkerType, CapacityAllocationType
StorageAllocated

配置的總磁碟儲存體,以 GB 為單位。

GB (GB) ApplicationId, ApplicationName, WorkerType, CapacityAllocationType
TotalWorkerCount

可用的工作者總數。

計數 ApplicationId, ApplicationName, WorkerType, CapacityAllocationType

任務層級監控

Amazon EMR Serverless Amazon CloudWatch 每一分鐘會將下列任務層級指標傳送至 。您可以依任務執行狀態檢視彙總任務執行的指標值。每個指標的單位都是計數

EMR Serverless 任務層級指標
指標 描述 維度
SubmittedJobs

處於已提交狀態的任務數量。

ApplicationId, ApplicationName
PendingJobs

處於待定狀態的任務數量。

ApplicationId, ApplicationName
ScheduledJobs

處於排程狀態的任務數量。

ApplicationId, ApplicationName
RunningJobs

處於執行中狀態的任務數量。

ApplicationId, ApplicationName
SuccessJobs

處於成功狀態的任務數量。

ApplicationId, ApplicationName
FailedJobs

處於失敗狀態的任務數量。

ApplicationId, ApplicationName
CancellingJobs

處於取消狀態的任務數量。

ApplicationId, ApplicationName
CancelledJobs

處於已取消狀態的任務數量。

ApplicationId, ApplicationName

您可以使用引擎特定應用程式 UIs 來監控執行中和已完成 EMR Serverless 任務的引擎特定指標。當您檢視執行中任務的 UI 時,您會看到即時應用程式 UI 與即時更新。當您檢視已完成任務的 UI 時,您會看到持久性應用程式 UI。

執行任務

對於執行中的 EMR Serverless 任務,您可以檢視提供引擎特定指標的即時界面。您可以使用 Apache Spark UI 或 Hive Tez UI 來監控和偵錯任務。若要存取這些 UIs,請使用 EMR Studio 主控台或透過 請求安全 URL 端點 AWS Command Line Interface。

已完成的任務

對於已完成的 EMR Serverless 任務,您可以使用 Spark 歷史記錄伺服器或持久性 Hive Tez UI 來檢視 Spark 或 Hive 任務執行的任務詳細資訊、階段、任務和指標。若要存取這些 UIs,請使用 EMR Studio 主控台,或使用 請求安全 URL 端點 AWS Command Line Interface。

任務工作者層級監控

Amazon EMR Serverless 會將AWS/EMRServerless命名空間和Job Worker Metrics指標群組中可用的下列任務工作者層級指標傳送至 Amazon CloudWatch。EMR Serverless 會在任務層級、工作者類型和capacity-allocation-type層級的任務執行期間,從個別工作者收集資料點。您可以使用 ApplicationId做為維度,以監控屬於相同應用程式的多個任務。

EMR Serverless 任務工作者層級指標
指標 描述 單位 維度
WorkerCpuAllocated

任務執行中為工作者配置的 vCPU 核心總數。

vCPU JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType
WorkerCpuUsed

工作執行中工作者使用的 vCPU 核心總數。

vCPU JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType
WorkerMemoryAllocated

任務執行中為工作者配置的總記憶體,以 GB 為單位。

GB (GB) JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType
WorkerMemoryUsed

工作者在任務執行中所使用的總記憶體,以 GB 為單位。

GB (GB) JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType
WorkerEphemeralStorageAllocated

任務執行中為工作者配置的暫時性儲存的位元組數。

GB (GB) JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType
WorkerEphemeralStorageUsed

工作者在任務執行中使用的暫時性儲存的位元組數。

GB (GB) JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType
WorkerStorageReadBytes

作業執行中工作者從儲存體讀取的位元組數。

位元組 JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType
WorkerStorageWriteBytes

任務執行中從工作者寫入儲存體的位元組數。

位元組 JobIdJobNameApplicationIdApplicationNameWorkerTypeCapacityAllocationType

下列步驟說明如何檢視各種類型的指標。

Console
使用主控台存取您的應用程式 UI
  1. 透過主控台入門中的指示,導覽至 EMR Studio 上的 EMR Serverless 應用程式。

  2. 若要檢視執行中任務的引擎特定應用程式 UIs和日誌:

    1. 選擇RUNNING狀態為 的任務。

    2. 應用程式詳細資訊頁面上選取任務,或導覽至任務的任務詳細資訊頁面。

    3. 顯示 UI 下拉式功能表下,選擇 Spark UIHive Tez UI,以導覽至任務類型的應用程式 UI。

    4. 若要檢視 Spark 引擎日誌,請導覽至 Spark UI 中的執行器索引標籤,然後選擇驅動程式的日誌連結。若要檢視 Hive 引擎日誌,請在 Hive Tez UI 中選擇適當 DAG 的日誌連結。

  3. 若要檢視已完成任務的引擎特定應用程式 UIs和日誌:

    1. 選擇SUCCESS狀態為 的任務。

    2. 在應用程式的應用程式詳細資訊頁面上選取任務,或導覽至任務的任務詳細資訊頁面。

    3. 顯示 UI 下拉式功能表下,選擇 Spark 歷史記錄伺服器持久性 Hive Tez UI,以導覽至任務類型的應用程式 UI。

    4. 若要檢視 Spark 引擎日誌,請導覽至 Spark UI 中的執行器索引標籤,然後選擇驅動程式的日誌連結。若要檢視 Hive 引擎日誌,請在 Hive Tez UI 中選擇適當 DAG 的日誌連結。

AWS CLI
使用 存取您的應用程式 UI AWS CLI
  • 若要產生 URL,供您用來存取執行中和已完成任務的應用程式 UI,請呼叫 GetDashboardForJobRun API。

    aws emr-serverless get-dashboard-for-job-run / --application-id <application-id> / --job-run-id <job-id>

    您產生的 URL 有效期為一小時。