Amazon EMR クラスターに自動終了ポリシーを設定しています。クラスターが、アクティブのまま実行し続けるか、自動終了ポリシーで設定されたアイドルタイムアウトよりも早く終了します。
簡単な説明
EMR クラスターを作成するときに、自動終了ポリシーを有効にできます。自動終了ポリシーは、特定のアイドル時間が経過するとクラスターを終了します。
解決方法
1. Amazon Elastic Compute Cloud (Amazon EC2) インスタンスプロファイルロール、EMR_EC2_DefaultRole に次の権限があることを確認してください。EMR EC2 インスタンスプロファイルロールにこれらの権限がない場合、クラスターはアイドルタイムアウト要件を満たしていてもアクティブな状態を維持します。
{
"Version": "2012-10-17",
"Statement": {
"Sid": "AllowAutoTerminationPolicyActions",
"Effect": "Allow",
"Action": [
"elasticmapreduce:PutAutoTerminationPolicy",
"elasticmapreduce:GetAutoTerminationPolicy",
"elasticmapreduce:RemoveAutoTerminationPolicy"
],
"Resource": "your-resources"
}
Amazon EMR バージョン 5.34~5.36 および 6.4.0 以降では、次の条件に当てはまる場合、クラスターはアイドル状態になります。
- アクティブな YARN アプリケーションがありません。
- HDFS の使用率が 10% を下回っています。
- アクティブな EMR ノートブックまたは EMR Studio 接続がありません。
- クラスター上のアプリケーションユーザーインターフェイスが使用されていません。
Amazon EMR バージョン 5.30.0 から 5.33.1 と 6.1.0 から 6.3.0 では、次の条件に当てはまる場合、クラスターはアイドル状態になります。
- アクティブな YARN アプリケーションがありません。
- HDFS の使用率が 10% を下回っています。
- クラスターにアクティブな Spark ジョブがありません。
2. metrics-collector プロセスが実行されていることを確認します。metrics-collector プロセスは、メトリクスを収集して自動終了を決定します。以下のコマンドを実行して、metrics-collector プロセスを確認します。
ps -ef|grep metrics-collector
systemctl status metricscollector.service
詳細については、「Amazon EMR でサービスを再起動するにはどうすればよいですか?」を参照してください。
3. 自動終了ポリシーを使用して自動終了を有効にすると、Amazon EMR は AutoTerminationClusterIdle の Amazon CloudWatch メトリクスを 1 分単位で出力します。このメトリクスは、クラスターがアイドル状態の要件を満たしているかどうかを評価します。このメトリクスが「1」の場合、クラスターはアイドル状態です。「0」の場合、クラスターはまだアクティブ状態です。
EMR クラスターの CloudWatch メトリクスを表示し、クラスター内で AutoTerminationisCluseterIdle CloudWatch メトリクスが常に「1」になっていることを確認します。連続して「1」の場合、クラスターは自動終了の対象となります。
関連情報
自動終了ポリシーを使用する
CloudWatch でメトリクスをモニタリングする