翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS CLIを使用してカスタムジョブテンプレートを作成する
このトピックでは、 AWS CLIを使用してジョブテンプレートの作成、削除、詳細情報の取得を行う方法について説明します。
一からジョブテンプレートを作成する
次の AWS CLI コマンドは、ジョブドキュメント (job-document.json
) S3 バケットと、Amazon S3 (S3DownloadRole
).
aws iot create-job-template \ --job-template-id 010 \ --document-source https://s3.amazonaws.com/amzn-s3-demo-bucket/job-document.json \ --timeout-config inProgressTimeoutInMinutes=100 \ --job-executions-rollout-config "{ \"exponentialRate\": { \"baseRatePerMinute\": 50, \"incrementFactor\": 2, \"rateIncreaseCriteria\": { \"numberOfNotifiedThings\": 1000, \"numberOfSucceededThings\": 1000}}, \"maximumPerMinute\": 1000}" \ --abort-config "{ \"criteriaList\": [ { \"action\": \"CANCEL\", \"failureType\": \"FAILED\", \"minNumberOfExecutedThings\": 100, \"thresholdPercentage\": 20}, { \"action\": \"CANCEL\", \"failureType\": \"TIMED_OUT\", \"minNumberOfExecutedThings\": 200, \"thresholdPercentage\": 50}]}" \ --presigned-url-config "{\"roleArn\":\"arn:aws:iam::123456789012:role/S3DownloadRole\", \"expiresInSec\":3600}"
オプションの timeout-config
パラメータは、各デバイスがジョブの実行を終了すべき時間を指定します。ジョブの実行ステータスが IN_PROGRESS
に設定されると、タイマーが開始されます。タイマーが時間切れになるまでにジョブの実行ステータスが別の終了状態に設定されない場合は、TIMED_OUT
に設定されます。
進捗タイマーは更新できず、ジョブのすべての起動に適用されます。ジョブの起動がこの間隔よりも長く IN_PROGRESS
状態のままになると、ジョブの起動は失敗し、ターミナルTIMED_OUT
ステータスに切り替わります。 AWS IoT もMQTT通知を発行します。
ジョブロールアウトと中止に関する設定の作成の詳細については、「ジョブのロールアウトと中止設定」を参照してください。
注記
ジョブを作成するときに、Amazon S3 ファイルとして指定されたジョブドキュメントが取得されます。ジョブを作成した後でジョブドキュメントのソースとして使用した Amazon S3 ファイルの内容を変更しても、ジョブのターゲットに送信されるものは変更されません。
既存のジョブからジョブテンプレートを作成する
次の AWS CLI コマンドは、既存のジョブの Amazon リソースネーム (ARN) を指定してジョブテンプレートを作成します。新しいジョブテンプレートでは、ジョブで指定されたすべての設定が使用されます。必要に応じて、任意のオプションのパラメータを使用して既存のジョブの構成を変更できます。
aws iot create-job-template \ --job-arn arn:aws:iot:
region
:123456789012:job/job-name
\ --timeout-config inProgressTimeoutInMinutes=100
ジョブテンプレートの詳細を取得する
次の AWS CLI コマンドは、指定されたジョブテンプレートの詳細を取得します。
aws iot describe-job-template \ --job-template-id
template-id
コマンドによって以下の出力が表示されます。
{ "abortConfig": { "criteriaList": [ { "action": "string", "failureType": "string", "minNumberOfExecutedThings": number, "thresholdPercentage": number } ] }, "createdAt": number, "description": "string", "document": "string", "documentSource": "string", "jobExecutionsRolloutConfig": { "exponentialRate": { "baseRatePerMinute": number, "incrementFactor": number, "rateIncreaseCriteria": { "numberOfNotifiedThings": number, "numberOfSucceededThings": number } }, "maximumPerMinute": number }, "jobTemplateArn": "string", "jobTemplateId": "string", "presignedUrlConfig": { "expiresInSec": number, "roleArn": "string" }, "timeoutConfig": { "inProgressTimeoutInMinutes": number } }
ジョブテンプレートを一覧表示する
次の AWS CLI コマンドは、 内のすべてのジョブテンプレートを一覧表示します AWS アカウント。
aws iot list-job-templates
コマンドによって以下の出力が表示されます。
{ "jobTemplates": [ { "createdAt": number, "description": "string", "jobTemplateArn": "string", "jobTemplateId": "string" } ], "nextToken": "string" }
結果の追加ページを取得するには、nextToken
フィールドの値を使用します。
ジョブテンプレートを削除する
次の AWS CLI コマンドは、指定されたジョブテンプレートを削除します。
aws iot delete-job-template \ --job-template-id
template-id
コマンドは出力を表示しません。
カスタムジョブテンプレートからジョブを作成する
次の AWS CLI コマンドは、カスタムジョブテンプレートからジョブを作成します。という名前のデバイスをターゲットにthingOne
し、ジョブの基礎として使用するジョブテンプレートの Amazon リソースネーム (ARN) を指定します。create-job
コマンドの関連パラメータを渡すことで、タイムアウトやキャンセルの設定といった詳細設定を上書きできます。
警告
document-parameters
オブジェクトは、 AWS
管理テンプレートからジョブを作成する場合のみ create-job
コマンドで使用する必要があります。このオブジェクトをカスタムジョブテンプレートに使用しないでください。このパラメータを使用してジョブを作成する方法を示す例については、「管理テンプレートを使用してジョブを作成する」を参照してください。
aws iot create-job \ --targets arn:aws:iot:
region
:123456789012:thing/thingOne
\ --job-template-arn arn:aws:iot:region
:123456789012:jobtemplate/template-id