スキップしてコンテンツを表示

Amazon EMR クラスターが終了する理由を教えてください

所要時間2分
0

Amazon EMR クラスターが突然終了しました。

解決策

Amazon EMR は、クラスターの起動時に指定した Amazon Simple Storage Service (Amazon S3) バケットにクラスターログを保存します。たとえば、s3://example-log-location/example-cluster-ID/node/example-EC2-instance-ID/ に保存されます。

Amazon EMR クラスターが終了した理由を特定するには、Amazon S3 に保存されている Amazon EMR プロビジョニングログを確認してください。

"SHUTDOWN_STEP_FAILED (USER_ERROR)" エラー

EMR クラスターでステップジョブを送信する場合、ActionOnFailure パラメータでステップ失敗時の動作を指定できます。**ActionOnFailure ** パラメータに TERMINATE_CLUSTER または TERMINATE_JOB_FLOW を選択すると、Amazon EMR クラスターが終了し、AWS CloudTrail から次のエラーメッセージが表示される場合があります。

"{ "severity": "ERROR", "actionOnFailure": "TERMINATE_JOB_FLOW", "stepId": "s-2I0G########", "name": "Example Step", "clusterId": "j-2YJ#######", "state": "FAILED", "message": "Step s-2I0G####### (Example Step) in Amazon EMR cluster j-2YJ####### failed at 202#-1#-0# 0#:## UTC." }"

このエラーを回避するには、ステップジョブを送信するときに ActionOnFailure パラメータで [CONTINUE] または [CANCEL_AND_WAIT] オプションを使用してください。

詳細については、「StepConfig」を参照してください。

"NO_SLAVES_LEFT (SYSTEM_ERROR)" エラー

次の条件に当てはまる場合、"No_SLAVES_LEFT" エラーが表示されます。

  • Amazon EMR クラスターの終了保護を無効にした。
  • すべてのコアノードが、YARN サイト構成分類の最大使用率しきい値で指定されたディスクストレージ容量を超えている。デフォルトの最大使用率しきい値は 90% です。
  • CORE インスタンスはスポットインスタンスで、スポットインスタンスは TERMINATED_BY_SPOT_DUE_TO_NO_CAPACITY である。
    スポットインスタンスの終了については、「Amazon EC2 がスポットインスタンスを中断したのはなぜですか?」を参照してください。

このエラーを解決するには、次の手順を実行します。

"502 Bad Gateway" エラー

Amazon EMR の内部システムが一定期間プライマリノードにアクセスできない場合に、"502 Bad Gateway" エラーは発生します。終了保護を無効にすると、Amazon EMR はクラスターを終了します。

インスタンスコントローラサービスが停止している場合は、最新のインスタンスコントローラログとインスタンス状態ログを確認してください。インスタンスコントローラの標準出力で、メモリ不足によりサービスが終了したことが示された場合、プライマリノードには十分なメモリが不足しています。

以下は、インスタンス状態ログのエラーメッセージの例です。

# dump instance controller stdouttail -n 100 /emr/instance-controller/log/instance-controller.out
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007fb46c7c8000, 12288, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 12288 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /tmp/hs_err_pid16110.log
# whats memory usage look like
free -m
              total        used        free      shared  buff/cache   available
Mem:          15661       15346         147           0         167          69
Swap:             0           0           0

前述のエラーを回避するには、より大きなインスタンスタイプで Amazon EMR クラスターを起動して、クラスターの要件に合わせてより多くのメモリを活用してください。また、実行時間の長いクラスターでメモリが停止しないように、ディスク容量をクリーンアップしてください。詳細については、「Amazon EMR で「502 Bad Gateway」(502 不正なゲートウェイ) または「504 Gateway Timeout」(504 ゲートウェイタイムアウト) というエラーが表示されるプライマリノードの障害をトラブルシューティングするにはどうすればよいですか?」」を参照してください。

"KMS_ISSUE (USER_ERROR)" エラー

Amazon EMR セキュリティ設定を使用して Amazon EBS ルートデバイスとストレージボリュームを暗号化する場合、ロールには適切なアクセス許可が必要です。必要なアクセス許可がない場合、AWS CloudTrail に次のエラーメッセージが表示されます。

"The EMR Service Role must have the kms:GenerateDataKey* and kms:ReEncrypt* permission for the KMS key configuration when you enabled EBS encryption by default.You can retrieve that KMS key's ID by using the ec2:GetEbsDefaultKmsKeyId API."

前述のエラーを回避するには、Amazon EBS ルートデバイスとストレージボリュームの暗号化に使用されるセキュリティ設定に必要なアクセス許可があることを確認してください。また、Amazon EMR サービスロール (EMR_DefaultRole_V2) に、指定された AWS Key Management Service (AWS KMS) キーを使用するアクセス許可があることを確認してください。

"Terminated with errors, The master node was terminated by user" エラー

Amazon EMR クラスターのプライマリノードが何らかの理由で停止すると、クラスターは "The master node was terminated by user" というエラーが表示されて終了します。

AWS CloudTrail に次のエラーメッセージが表示されます。

eventTime": "2023-01-18T08:07:02Z",
    "eventSource": "ec2.amazonaws.com",
    "eventName": "StopInstances",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "52.##.##.##",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "instancesSet": {
            "items": [
                {
                    "instanceId": "i-##f6c5###########"
                }
            ]
        },
        "force": false
},

Amazon EMR プライマリノードまたはすべてのコアノードを停止するとクラスターが終了するため、クラスターノードを停止または再起動しないでください。

注: Amazon EMR クラスターは、この記事に記載されている以外の理由で終了する場合があります。詳細については、「Resource errors during Amazon EMR cluster operations (Amazon EMR クラスター操作中のリソースエラー)」を参照してください。

AWS公式更新しました 6ヶ月前
コメントはありません

関連するコンテンツ