本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
監控 Spark 任務
若要監控故障並進行故障診斷,請設定您的互動式端點,以便使用端點啟動的任務可以將日誌資訊傳送至 Amazon S3、Amazon CloudWatch Logs 或兩者。下列各節說明如何針對您在EKS互動式端點EMR上使用 Amazon 啟動的 Spark 任務,將 Spark 應用程式日誌傳送至 Amazon S3。
設定 Amazon S3 日誌IAM的政策
在您的核心將日誌資料傳送到 Amazon S3 之前,作業執行角色的許可政策必須包含下列許可。Replace (取代) amzn-s3-demo-destination-bucket
記錄儲存貯體的名稱。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
amzn-s3-demo-destination-bucket
", "arn:aws:s3:::amzn-s3-demo-logging-bucket
/*", ] } ] }
注意
Amazon EMR on EKS也可以建立 S3 儲存貯體。如果 S3 儲存貯體無法使用,請在IAM政策中包含 s3:CreateBucket
許可。
將所需許可授予給執行角色以便將日誌傳送到 S3 儲存貯體之後,您的日誌資料會傳送到以下 Amazon S3 位置。在 create-managed-endpoint
請求的 monitoringConfiguration
區段中傳遞 s3MonitoringConfiguration
時,會發生這種情況。
-
驅動程式日誌 –
logUri/virtual-cluster-id/endpoints/endpoint-id/containers/spark-application-id/spark-application-id-driver/(stderr.gz/stdout.gz)
-
執行程式日誌 –
logUri/virtual-cluster-id/endpoints/endpoint-id/containers/spark-application-id/executor-pod-name-exec-<Number>/(stderr.gz/stdout.gz)
注意
Amazon EMR on EKS不會將端點日誌上傳到您的 S3 儲存貯體。