翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
サブデプロイを作成する
注記
サブデプロイ機能は、Greengrass nucleus バージョン 2.9.0 以降で使用できます。Greengrass nucleus の旧コンポーネントバージョンでは、設定をサブデプロイにデプロイすることはできません。
サブデプロイは、親デプロイ内のデバイスのより小さなサブセットをターゲットとするデプロイです。サブデプロイを使用して、デバイスのより小さなサブセットに設定をデプロイできます。サブデプロイを作成して、親デプロイ内の 1 つ以上のデバイスで失敗した場合に、失敗した親デプロイを再試行することもできます。この機能を使用すると、その親デプロイで失敗したデバイスを選択し、サブデプロイを作成して、そのサブデプロイが成功するまで設定をテストできます。サブデプロイが成功したら、その設定を親デプロイに再デプロイできます。
サブデプロイを作成し、そのステータスを確認するには、このセクションのステップに従います。デプロイを作成する方法の詳細については、「デプロイの作成」を参照してください。
サブデプロイを作成するには (AWS CLI)
-
次のコマンドを実行して、モノのグループの最新のデプロイを取得します。コマンド内の ARN を、クエリするモノグループの ARN に置き換えます。
を--history-filter
LATEST_ONLY
に設定すると、そのモノのグループの最新のデプロイが表示されます。aws greengrassv2 list-deployments
--target-arn
arn:aws:iot:region
:account-id
:thinggroup/thingGroupName
--history-filter
LATEST_ONLY
-
次のステップで使用する list-deployments コマンドに対するレスポンスから
deploymentId
をコピーします。 -
次のコマンドを実行し、デプロイのステータスを取得します。
をクエリするデプロイの ID に置き換えます。deploymentId
aws greengrassv2 get-deployment
--deployment-id
deploymentId
-
次のステップで使用する get-deployment コマンドに対するレスポンスから
iotJobId
をコピーします。 -
次のコマンドを実行して、指定されたジョブの実行リストを取得します。
jobID
を前のステップのiotJobId
に置き換えます。status
を、フィルタリングするステータスに置き換えます。次のステータスで結果をフィルタリングできます。-
QUEUED
-
IN_PROGRESS
-
SUCCEEDED
-
FAILED
-
TIMED_OUT
-
REJECTED
-
REMOVED
-
CANCELED
aws iot list-job-executions-for-job
--job-id
jobID
--status
status
-
-
サブデプロイのために、新しい AWS IoT モノのグループを作成するか、または既存のモノのグループを使用します。その後、このモノのグループに AWS IoT モノを追加します。モノグループを使用して Greengrass コアデバイスのフリートを管理します。ソフトウェアコンポーネントをデバイスにデプロイするとき、個々のデバイスまたはデバイスのグループのいずれかを対象にできます。アクティブな Greengrass デプロイを備えたモノのグループにデバイスを追加できます。追加すると、そのモノのグループのソフトウェアコンポーネントをそのデバイスにデプロイできるようになります。
新しいモノのグループを作成して、それにデバイスを追加するには、次を実行します。
-
AWS IoT モノのグループを作成します。 を新しいモノのグループの名前
MyGreengrassCoreGroup
に置き換えます。モノのグループ名にコロン (:) は使用できません。注記
サブデプロイのモノのグループが 1 つの
parentTargetArn
で使用されている場合、それを別の親フリートで再利用することはできません。あるモノのグループが別のフリートのサブデプロイを作成するために既に使用されている場合、API はエラーを返します。aws iot create-thing-group
--thing-group-name
MyGreengrassCoreGroup
リクエストが正常に処理された場合、レスポンスは次の例のようになります。
{ "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/
MyGreengrassCoreGroup
", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" } -
プロビジョンド Greengrass コアをモノのグループに追加します。次のパラメータを使用して次のコマンドを実行します。
-
をプロビジョニングされた Greengrass コアの名前
MyGreengrassCore
に置き換えます。 -
をモノのグループの名前
MyGreengrassCoreGroup
に置き換えます。
aws iot add-thing-to-thing-group
--thing-name
MyGreengrassCore
--thing-group-name
MyGreengrassCoreGroup
要求が正常に処理された場合、コマンドは出力されません。
-
-
-
deployment.json
という名前のファイルを作成して、次の JSON オブジェクトをファイルにコピーします。targetArn
をサブデプロイがターゲットとする AWS IoT モノのグループの ARN に置き換えます。サブデプロイのターゲットにできるのは、モノのグループのみです。モノのグループの ARN の形式は、次のとおりです。-
モノのグループ –
arn:aws:iot:
region
:account-id
:thinggroup/thingGroupName
{ "targetArn": "
targetArn
" } -
-
次のコマンドを再度実行して、元のデプロイの詳細を取得します。これらの詳細には、メタデータ、コンポーネント、ジョブ構成が含まれます。
deploymentId
を ステップ 1 の ID に置き換えます。このデプロイ設定を使用してサブデプロイを設定し、必要に応じて変更できます。aws greengrassv2 get-deployment
--deployment-id
deploymentId
レスポンスには、デプロイの詳細が含まれています。get-deployment コマンドのレスポンスにある次のキーと値のペアを
deployment.json
にコピーします。これらの値を、サブデプロイ向けに変更することができます。このコマンドの詳細については、「」を参照してくださいGetDeployment。-
components
- デプロイのコンポーネント。コンポーネントをアンインストールする場合は、このオブジェクトから削除してください。 -
deploymentName
- デプロイの名前。 -
deploymentPolicies
- デプロイのポリシー。 -
iotJobConfiguration
- デプロイのジョブ設定。 -
parentTargetArn
– 親デプロイのターゲット。 -
tags
- デプロイのタグ。
-
-
次のコマンドを実行して、
deployment.json
からサブデプロイを作成します。subdeploymentName
をサブデプロイの名前に置き換えます。aws greengrassv2 create-deployment
--deployment-name
subdeploymentName
--cli-input-json
file://deployment.jsonレスポンスには、このサブデプロイを識別する
deploymentId
が含まれます。デプロイ ID を使用して、デプロイのステータスを確認できます。詳細については、「デプロイのステータスを確認する」を参照してください。 -
サブデプロイが成功した場合は、その設定を使用して親デプロイを修正できます。前のステップで使用した
deployment.json
をコピーします。JSON ファイルのtargetArn
を親デプロイの ARN に置き換え、次のコマンドを実行してこの新しい設定で親デプロイを作成します。注記
親フリートの新しいデプロイリビジョンを作成すると、その親デプロイのすべてのデプロイリビジョンとサブデプロイが置き換えられます。詳細については、「デプロイの変更」を参照してください。
aws greengrassv2 create-deployment
--cli-input-json
file://deployment.jsonレスポンスには、このデプロイを識別する
deploymentId
が含まれます。デプロイ ID を使用して、デプロイのステータスを確認できます。詳細については、「デプロイのステータスを確認する」を参照してください。