[AWS IoT Greengrass V2] クラウド側からコンポーネントを削除してみました

2021.08.12

1 はじめに

IoT事業部の平内(SIN)です。

前回、AWS IoT Greengrass V2(以下、Greengrass V2)のコンポーネントを複数のコアデバイスにデプロイしてみました。

今回は、上記で使用したデプロイ設定で、一部のコンポーネントを削除してみました。 デプロイの対象となっているグループには、2台のコアデバイスが存在していますので、両方一気に削除できればと考えています。

2 デプロイ情報

下記が、前回、コンポーネントを追加してデプロイした設定です。

ターゲットコアデバイスは、gg-device-001gg-device-002の2つです。また、コンポーネントは、前回追加した、com.example.HelloWorldと、インストール時に有効にしたパブリックコンポーネントであるGreeglass CLIとなっています。

3 デプロイ (ステップ1〜5)

デプロイ情報を開いて、右上の変更をクリックします。

(1) ステップ1

ステップ1のターゲットを指定は、変更なしでそのまま進めます。

(2) ステップ2

ステップ2のコンポーネントの選択では、今回削除したい、com.exsample.HelloWorldのチェックを外しました。

(3) ステップ3

ステップ3のコンポーネントを設定では、デプロイ対象となっているコンポーネントの設定を変更可能ですが、ここでは、そのまま進めます。

(4) ステップ4

ステップ4の詳細設定を構成は、そのまま次へ進めます。

(5) ステップ5

ステップ5のレビューでコンポーネントが削除となっている事を確認し、「デプロイ」をクリックします。

あとは、デプロイが反映されるまで待機です。

4 確認

デプロイが完了すると、各コアデバイスのコンポーネントの表示から消えていることが確認できます。

デバイスにログインしてGreengrass CLIでコンポーネントを一覧しても、com.example.HelloWorldが存在しない事を確認できます。

pi@device-001:~ $ sudo /greengrass/v2/bin/greengrass-cli component list

・・・略・・・

Component Name: aws.greengrass.Nucleus
    Version: 2.4.0
    State: FINISHED

・・・略・・・

Component Name: DeploymentService
    Version: 0.0.0
    State: RUNNING
    Configuration: null
Component Name: aws.greengrass.Cli
    Version: 2.4.0
    State: RUNNING
    Configuration: {"AuthorizedPosixGroups":null}
Component Name: UpdateSystemPolicyService
    Version: 0.0.0
    State: RUNNING
    Configuration: null
Component Name: TelemetryAgent
    Version: 0.0.0
    State: RUNNING
    Configuration: null
Component Name: FleetStatusService
    Version: 0.0.0
    State: RUNNING
    Configuration: null

5 最後に

今回は、クラウド側からコンポーネントを削除してみました。少しですが、コンポーネント(アーティファクト・レシピ)・デプロイの関係が、なんとなく掴めてきたかもしれません。

6 参考リンク


[AWS IoT Greengrass V2] RaspberryPIにインストールしてみました
[AWS IoT Greengrass V2] RaspberryPIでコンポーネントを作成してみました
[AWS IoT Greengrass V2] クラウド側から複数のコアデバイスにコンポーネントをデプロイしてみました
[AWS IoT Greengrass V2] クラウド側からコンポーネントを削除してみました
[AWS IoT Greengrass V2] ローカルデバッグコンソール(aws.greengrass.LocalDebugConsole)を使用してみました
[AWS IoT Greengrass V2] Lambda関数(コンポーネント)をデプロイしてみました
[AWS IoT Greengrass V2] コンポーネントからIoT CoreのメッセージブローカーにPublish/Subscribeしてみました
[AWS IoT Greengrass V2] コンポーネントからシークレットマネージャにアクセスしてみました