Ec2Resource - AWS Data Pipeline

AWS Data Pipeline は、新規顧客には利用できなくなりました。の既存のお客様 AWS Data Pipeline は、通常どおりサービスを引き続き使用できます。詳細はこちら

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

Ec2Resource

パイプラインアクティビティで定義された作業を実行する Amazon EC2インスタンス。

AWS Data Pipeline は、Amazon EC2インスタンスIMDSv2の をサポートするようになりました。Amazon インスタンスは、セッション指向のメソッドを使用して、インスタンスからメタデータ情報を取得するときに認証をより適切に処理します。セッションは、Amazon EC2インスタンスで実行されているソフトウェアがローカルに保存された Amazon EC2インスタンスのメタデータと認証情報にアクセスするために使用する一連のリクエストを開始および終了します。ソフトウェアは、 への簡単なHTTPPUTリクエストでセッションを開始しますIMDSv2。IMDSv2 は、Amazon EC2インスタンスで実行されているソフトウェアにシークレットトークンを返します。このトークンをパスワードとして使用して、メタデータと認証情報IMDSv2を にリクエストします。

注記

Amazon EC2インスタンスIMDSv2で を使用するには、デフォルトの AMIは と互換性がないため、設定を変更する必要がありますIMDSv2。次のSSMパラメータを使用して取得できる新しいAMIバージョンを指定できます: /aws/service/ami-amazon-linux-latest/amzn-ami-hvm-x86_64-ebs

EC2 インスタンスを指定しない場合に が AWS Data Pipeline 作成するデフォルトの Amazon インスタンスについては、「」を参照してください AWSリージョン別のデフォルトのAmazon EC2インスタンス

EC2-クラシック

重要

2013 年 12 月 4 日より前に作成された AWS アカウントのみが EC2-Classic プラットフォームをサポートしています。これらのアカウントのいずれかがある場合は、 ではなく EC2-Classic ネットワークでパイプラインのEC2Resourceオブジェクトを作成するオプションがありますVPC。ですべてのパイプラインのリソースを作成することを強くお勧めしますVPCs。さらに、EC2-Classic に既存のリソースがある場合は、それらを に移行することをお勧めしますVPC。

次のオブジェクト例では、いくつかのオプションフィールドが設定された EC2-Classic にEC2インスタンスを起動します。

{ "id" : "MyEC2Resource", "type" : "Ec2Resource", "actionOnTaskFailure" : "terminate", "actionOnResourceFailure" : "retryAll", "maximumRetries" : "1", "instanceType" : "m5.large", "securityGroups" : [ "test-group", "default" ], "keyPair" : "my-key-pair" }

EC2-VPC

次のオブジェクト例では、デフォルト以外の にEC2インスタンスを起動しVPC、いくつかのオプションフィールドを設定します。

{ "id" : "MyEC2Resource", "type" : "Ec2Resource", "actionOnTaskFailure" : "terminate", "actionOnResourceFailure" : "retryAll", "maximumRetries" : "1", "instanceType" : "m5.large", "securityGroupIds" : [ "sg-12345678", "sg-12345678" ], "subnetId": "subnet-12345678", "associatePublicIpAddress": "true", "keyPair" : "my-key-pair" }

構文

必須フィールド 説明 スロットタイプ
resourceRole Amazon EC2インスタンスがアクセスできるリソースを制御するIAMロール。 文字列
ロール がEC2インスタンスの作成 AWS Data Pipeline に使用するIAMロール。 文字列

オブジェクト呼び出しフィールド 説明 スロットタイプ
schedule

このオブジェクトは、スケジュール期間の実行中に呼び出されます。

このオブジェクトの依存関係の実行順序を設定するには、別のオブジェクトへのスケジュール参照を指定します。これには以下の 2 つの方法があります。

  • パイプライン内のすべてのオブジェクトで確実にスケジュールが継承されるようにするには、オブジェクトでスケジュールを明示的に設定します: "schedule": {"ref": "DefaultSchedule"}。ほとんどの場合、すべてのオブジェクトがそのスケジュールを継承するように、スケジュール参照をデフォルトのパイプラインオブジェクトに配置すると便利です。

  • マスタースケジュール内にネストされたスケジュールがパイプラインにある場合、スケジュール参照がある親オブジェクトを作成することができます。オプションのスケジュール設定の例については、「https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html」を参照してください。

参照オブジェクト ("schedule":{"ref":"myScheduleId"} など)

オプションのフィールド 説明 スロットタイプ
actionOnResource失敗 このリソースに対するリソースの失敗後に実行されるアクション。有効な値は、"retryall" および "retrynone" です。 文字列
actionOnTask失敗 このリソースに対するタスクの失敗後に実行されるアクション。有効な値は "continue" または "terminate" です。 文字列
associatePublicIpアドレス インスタンスにパブリック IP アドレスを割り当てるかどうかを示します インスタンスが Amazon EC2または Amazon にある場合VPC、デフォルト値は ですtrue。それ以外の場合、デフォルト値は false です。 ブール値
attemptStatus リモートアクティビティから最も最近報告されたステータス。 文字列
attemptTimeout リモートの作業完了のタイムアウト。設定された場合、指定された開始時間内に完了しなかったリモートアクティビティを再試行することができます。 [Period] (期間)
availabilityZone Amazon EC2インスタンスを起動するアベイラビリティーゾーン。 文字列
disableIMDSv1 デフォルト値は false で、 IMDSv1と の両方を有効にしますIMDSv2。true に設定するIMDSv1と、 は無効になり、 のみが提供されます。 IMDSv2s ブール値
failureAndRerunモード 依存関係が失敗または再実行されたときのコンシューマーノードの動作を示します。 一覧表
httpProxy クライアントが AWS サービスへの接続に使用するプロキシホスト。 参照オブジェクト ( "httpProxy":{"ref":"myHttpProxyId"} など)
imageId

インスタンスAMIに使用する の ID。デフォルトでは、 はHVMAMI仮想化タイプ AWS Data Pipeline を使用します。AMI IDs 使用される特定の は、リージョンに基づいています。選択した を指定AMIすることで、デフォルトを上書きHVMAMIできます。AMI タイプの詳細については、「Amazon EC2ユーザーガイド」の「Linux AMI仮想化タイプ」および「Linux AMI の検索」を参照してください。

文字列
initTimeout リソースが起動するまでの待機時間。 [Period] (期間)
instanceCount 廃止済み。 整数
instanceType 開始する Amazon EC2インスタンスのタイプ。 文字列
keyPair キーペアの名前。キーペアを指定せずに Amazon EC2インスタンスを起動した場合、そのインスタンスにログオンすることはできません。 文字列
lateAfterTimeout オブジェクトが完了しなければならない、パイプライン開始からの経過時間。スケジュールタイプが ondemand に設定されていない場合にのみトリガーされます。 [Period] (期間)
maxActiveInstances コンポーネントで同時にアクティブになるインスタンスの最大数。再実行はアクティブなインスタンスの数にはカウントされません。 整数
maximumRetries 失敗時の最大再試行回数。 整数
minInstanceCount 廃止済み。 整数
onFail 現在のオブジェクトが失敗したときに実行するアクション。 参照オブジェクト ( "onFail":{"ref":"myActionId"} など)
onLateAction オブジェクトが予定されていないか、まだ実行中の場合にトリガーされるアクション。 参照オブジェクト ("onLateAction":{"ref":"myActionId"} など)
onSuccess 現在のオブジェクトが成功したときに実行するアクション。 参照オブジェクト ( "onSuccess":{"ref":"myActionId"} など)
parent スロットの継承元となる現在のオブジェクトの親。 参照オブジェクト ( "parent":{"ref":"myBaseObjectId"} など)
pipelineLogUri パイプラインのログをアップロードするための Amazon S3 URI ( など's3://BucketName/Key/')。 文字列
region Amazon EC2インスタンスを実行するリージョンのコード。デフォルトでは、インスタンスはパイプラインと同じリージョンで実行されます。依存するデータセットと同じリージョンでインスタンスを実行することもできます。 一覧表
reportProgressTimeout reportProgress へのリモート作業の連続した呼び出しのタイムアウト。設定された場合、指定された期間の進捗状況を報告しないリモートアクティビティは停止されたと見なし、再試行できます。 [Period] (期間)
retryDelay 2 回の再試行の間のタイムアウト期間。 [Period] (期間)
runAsUser を実行するユーザー TaskRunner。 文字列
runsOn このフィールドはこのオブジェクトでは使用できません。 参照オブジェクト ("runsOn":{"ref":"myResourceId"} など)
scheduleType

スケジュールタイプでは、パイプライン定義のオブジェクトを間隔の最初にスケジュールするか、間隔の最後に、またはオンデマンドでスケジュールするかを指定できます。

値は次のとおりです。

  • timeseries。インスタンスは各間隔の最後にスケジュールされます。

  • cron。インスタンスは各間隔の最初にスケジュールされます。

  • ondemand。アクティベーションごとに 1 回パイプラインを実行することができます。パイプラインを再実行するために、クローンしたり再作成したりする必要はありません。オンデマンドスケジュールを使用する場合は、デフォルトオブジェクトで指定し、パイプラインのオブジェクトに対して指定される唯一の scheduleType である必要があります。オンデマンドパイプラインを使用するには、それ以降の実行ごとに、ActivatePipeline オペレーションを呼び出します。

一覧表
securityGroupIds リソースプールIDs内のインスタンスに使用する 1 つ以上の Amazon EC2 セキュリティグループの 。 文字列
securityGroups リソースプールのインスタンスに使用する 1 つ以上の Amazon EC2 セキュリティグループ。 文字列
spotBidPrice スポットインスタンスの 1 時間あたりの最大金額 (ドル) であり、0 より大きく 20.00 より小さい 10 進値です。 文字列
subnetId インスタンスを起動する Amazon EC2サブネットの ID。 文字列
terminateAfter リソースを終了するまでの時間数。 [Period] (期間)
useOnDemandOnLastAttempt スポットインスタンスをリクエストする最後の試行では、スポットインスタンスではなくオンデマンドインスタンスのリクエストを作成します。これにより、以前の試行がすべて失敗した場合に、最後の試行は中断されません。 ブール値
workerGroup このフィールドはこのオブジェクトでは使用できません。 文字列

実行時フィールド 説明 スロットタイプ
@activeInstances 現在スケジュールされているアクティブなインスタンスオブジェクトのリスト。 参照オブジェクト ("activeInstances":{"ref":"myRunnableObjectId"} など)
@actualEndTime このオブジェクトの実行が終了した時刻。 DateTime
@actualStartTime このオブジェクトの実行が開始された時刻。 DateTime
cancellationReason このオブジェクトがキャンセルされた場合の cancellationReason 文字列
@cascadeFailedOn オブジェクトが失敗した依存関係のチェーンの説明。 参照オブジェクト ("cascadeFailedOn":{"ref":"myRunnableObjectId"} など)
emrStepLog ステップログは、Amazon EMRアクティビティの試行でのみ使用できます。 文字列
errorId このオブジェクトが失敗した場合はエラー ID。 文字列
errorMessage このオブジェクトが失敗した場合はエラーメッセージ。 文字列
errorStackTrace このオブジェクトが失敗した場合は、エラースタックトレース。 文字列
@failureReason リソースの失敗の理由。 文字列
@finishedTime このオブジェクトが実行を終了した時刻。 DateTime
hadoopJobLog Amazon EMRアクティビティの試行で利用可能な Hadoop ジョブログ。 文字列
@healthStatus 終了状態に達した最後のオブジェクトインスタンスの成功または失敗を反映する、オブジェクトのヘルスステータス。 文字列
@healthStatusFromInstanceId 終了状態に達した最後のインスタンスオブジェクトの ID。 文字列
@healthStatusUpdatedTime ヘルス状態が最後に更新された時間。 DateTime
hostname タスクの試行を取得したクライアントのホスト名。 文字列
@lastDeactivatedTime このオブジェクトが最後に非アクティブ化された時刻。 DateTime
@latestCompletedRunTime 実行が完了した最後の実行の時刻。 DateTime
@latestRunTime 実行がスケジュールされた最後の実行の時刻。 DateTime
@nextRunTime 次回にスケジュールされた実行の時刻。 DateTime
reportProgressTime リモートアクティビティで進捗状況が報告された最新の時刻。 DateTime
@scheduledEndTime オブジェクトの予定された終了時刻。 DateTime
@scheduledStartTime オブジェクトの予定された開始時刻。 DateTime
@status このオブジェクトのステータス。 文字列
@version オブジェクトが作成されたパイプラインのバージョン。 文字列
@waitingOn このオブジェクトが待機している依存関係のリストの説明。 参照オブジェクト ( "waitingOn":{"ref":"myRunnableObjectId"} など)

システムフィールド 説明 スロットタイプ
@error 形式が正しくないオブジェクトを説明するエラー。 文字列
@pipelineId このオブジェクトが属するパイプラインの ID。 文字列
@sphere ライフサイクル内のオブジェクトの場所です。コンポーネントオブジェクトにより、試行オブジェクトを実行するインスタンスオブジェクトが発生します。 文字列