

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ステップ実行後に継続または終了するように Amazon EMR クラスターを設定する
<a name="emr-plan-longrunning-transient"></a>

このトピックでは、長時間稼働クラスターの使用と、最後のステップの実行後にシャットダウンする一時的なクラスターの作成の違いについて説明します。また、クラスターのステップ実行を設定する方法についても説明します。

## 長時間稼働クラスターを作成する
<a name="emr-long-running-clusters"></a>

デフォルトでは、 コンソールまたは を使用して作成したクラスター AWS CLI は長時間実行されます。長時間稼働クラスターは、シャットダウンするアクションを実行するまで、実行を続け、作業を受け入れ、料金が発生します。

長時間稼働クラスターは、次のような状況で効果的です。
+ 対話式または自動的にデータをクエリする必要がある場合。
+ クラスターでホストされるビッグデータアプリケーションと継続的にやり取りする必要がある場合。
+ 非常に大きいデータセットを定期的に処理したり、頻繁に処理したりするため、毎回新しいクラスターを起動してデータをロードするのが非効率である場合。

また、長時間稼働クラスターで終了保護を設定して、事故やエラーによる EC2 インスタンスのシャットダウンを回避することもできます。詳細については、「[Amazon EMR クラスターを誤ったシャットダウンから保護するための終了保護の使用](UsingEMR_TerminationProtection.md)」を参照してください。

**注記**  
Amazon EMR は、複数のプライマリノードを持つすべてのクラスターに対して終了保護を自動的に有効にし、クラスターの作成時に指定したステップ実行設定をオーバーライドします。クラスターの起動後に、終了保護を無効にできます。「[実行中のクラスターに対する終了保護の設定](UsingEMR_TerminationProtection.md#emr-termination-protection-running-cluster)」を参照してください。複数のプライマリノードを持つクラスターをシャットダウンするには、まずクラスター属性を変更して、終了保護を無効にする必要があります。手順については、「[複数のプライマリノードを持つ Amazon EMR クラスターの終了](emr-plan-ha-launch.md#emr-plan-ha-launch-terminate)」を参照してください。

## ステップ実行後に終了するようにクラスターを設定する
<a name="emr-step-execution"></a>

ステップ実行後に終了するように設定する場合、クラスターが起動し、ブートストラップアクションが実行され、指定したステップが実行されます。最後のステップが完了するとすぐに、Amazon EMR はクラスターの Amazon EC2 インスタンスを終了します。Amazon EMR API を使用して起動するクラスターでは、ステップ実行がデフォルトで有効になっています。

ステップ実行後の終了は、毎日のデータ処理など、定期的な処理タスクを実行するクラスターに効果的です。また、ステップ実行により、データの処理に必要な時間分の料金のみが課金されるようになります。ステップの詳細については、「[作業を Amazon EMR クラスターに送信する](emr-work-with-steps.md)」を参照してください。

------
#### [ Console ]

**コンソールでステップ実行後の終了を有効にするには**

1. にサインインし AWS マネジメントコンソール、[https://console.aws.amazon.com/emr](https://console.aws.amazon.com/emr) で Amazon EMR コンソールを開きます。

1. 左側のナビゲーションペインの **[EMR on EC2]** で、**[クラスター]** を選択し、**[クラスターの作成]** を選択します

1. **[ステップ]** で **[ステップの追加]** を選択します。**[ステップを追加]** ダイアログボックスで、適切なフィールド値を入力します。オプションは、ステップタイプによって異なります。ステップを追加してダイアログを終了するには、**[ステップの追加]** を選択します。

1. **[クラスターの終了]** の **[最後のステップの完了後にクラスターを終了]** チェックボックスを選択します。

1. クラスターに適用するその他のオプションを選択します。

1. クラスターを起動するには、**[クラスターの作成]** を選択します。

------
#### [ AWS CLI ]

**を使用してステップ実行後に終了を有効にするには AWS CLI**
+ `--auto-terminate` コマンドを使用して一時的なクラスターを作成するときに、`create-cluster` パラメータを指定します。

  次の例は `--auto-terminate` パラメータを使用する方法を示しています。次のコマンドを入力し、*myKey* を EC2 キーペアの名前に置き換えます。
**注記**  
読みやすくするために、Linux 行連続文字 (\$1) が含まれています。Linux コマンドでは、これらは削除することも、使用することもできます。Windows の場合、削除するか、キャレット (^) に置き換えてください。

  ```
  aws emr create-cluster --name "Test cluster" --release-label emr-7.12.0 \
  --applications Name=Hive Name=Pig --use-default-roles --ec2-attributes KeyName=myKey \
  --steps Type=PIG,Name="Pig Program",ActionOnFailure=CONTINUE,\
  Args=[-f,s3://amzn-s3-demo-bucket/scripts/pigscript.pig,-p,\
  INPUT=s3://amzn-s3-demo-bucket/inputdata/,-p,OUTPUT=s3://amzn-s3-demo-bucket/outputdata/,\
  $INPUT=s3://amzn-s3-demo-bucket/inputdata/,$OUTPUT=s3://amzn-s3-demo-bucket/outputdata/]
  --instance-type m5.xlarge --instance-count 3 --auto-terminate
  ```

------
#### [ API ]

**クラスター起動時に Amazon EMR API でステップ実行後の終了を無効にするには**

1. [RunJobFlow](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_RunJobFlow.html) アクションを使用してクラスターを作成するときに、[KeepJobFlowAliveWhenNoSteps](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/API_JobFlowInstancesConfig.html#EMR-Type-JobFlowInstancesConfig-KeepJobFlowAliveWhenNoSteps) プロパティを `false` に設定します。

1. Amazon EMR API クラスター起動後のステップ実行後の終了の設定を変更するには:

   SetKeepJobFlowAliveWhenNoSteps アクションを使用します。

------