AWS IoT Greengrass Version 1 は、2023 年 6 月 30 日に延長ライフフェーズに入りました。詳細については、「AWS IoT Greengrass V1 メンテナンスポリシー」を参照してください。この日以降、 AWS IoT Greengrass V1 は機能、機能強化、バグ修正、またはセキュリティパッチを提供する更新をリリースしません。で実行されるデバイスは中断 AWS IoT Greengrass V1 されず、引き続き運用され、クラウドに接続されます。への移行 AWS IoT Greengrass Version 2を強くお勧めします。これにより、重要な新機能が追加され、追加のプラットフォーム がサポートされます。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
の開始方法 AWS IoT Greengrass
この入門チュートリアルには、 AWS IoT Greengrass の基本と の使用開始に役立つように設計されたいくつかのモジュールが含まれています AWS IoT Greengrass。このチュートリアルでは、次のような基本的な概念について説明します。
-
AWS IoT Greengrass コアとグループの設定。
-
エッジで AWS Lambda 関数を実行するためのデプロイプロセス。
-
クライアント AWS IoT デバイスと呼ばれるデバイスを AWS IoT Greengrass コアに接続します。
-
ローカル Lambda 関数、クライアントデバイス、 間のMQTT通信を許可するサブスクリプションの作成 AWS IoT。
の開始方法を選択する AWS IoT Greengrass
このチュートリアルを使用してコアデバイスをセットアップする方法を選択できます。
-
コアデバイスで Greengrass デバイスセットアップを実行すると、 AWS IoT Greengrass 依存関係のインストールから Hello World Lambda 関数のテストまでを数分で実行できます。このスクリプトは、モジュール 1 から モジュール 3-1 のステップを再現します。
- または -
-
モジュール 1 からモジュール 3-1 のステップを、順を追って、Greengrass の要件とプロセスをより詳しく調べます。以下のステップでは、コアデバイスをセットアップします。Hello World Lambda 関数を含む Greengrass グループを作成して設定し、Greengrass グループをデプロイします。通常、この処理には 1 ~ 2 時間かかります。
- クイックスタート
-
Greengrass デバイスのセットアップは、コアデバイスと Greengrass リソースを設定します。スクリプト:
-
AWS IoT Greengrass 依存関係をインストールします。
-
ルート CA 証明書とコアデバイスの証明書とキーをダウンロードします。
-
デバイスに AWS IoT Greengrass Core ソフトウェアをダウンロード、インストール、設定します。
-
コアデバイスで Greengrass デーモンプロセスを開始します。
-
必要に応じて、Greengrass サービスロールを作成または更新します。
-
Greengrass グループと Greengrass コアを作成します。
-
(オプション) Hello World Lambda 関数、サブスクリプション、およびローカルのログ記録設定を作成します。
-
(オプション) Greengrass グループをデプロイします。
-
- モジュール 1 および 2
-
モジュール 1 と モジュール 2 では、環境の設定方法について説明します。(または、Greengrass デバイスのセットアップを使用してこれらのモジュールを実行します)。
-
コアデバイスを Greengrass 用に設定します。
-
依存関係チェッカーを実行します。
-
Greengrass グループと Greengrass コアを作成します。
-
tar.gz ファイルから最新の AWS IoT Greengrass Core ソフトウェアをダウンロードしてインストールします。
-
コア上で Greengrass デーモンプロセスを開始します。
注記
AWS IoT Greengrass また、 には、サポートされている Debian プラットフォームへのインストールなど、 AWS IoT Greengrass Core ソフトウェア
apt
をインストールするための他のオプションもあります。詳細については、「AWS IoT Greengrass Core ソフトウェアをインストールします。」を参照してください。 -
- モジュール 3-1 および 3-2
-
モジュール 3-1 と モジュール 3-2 では、ローカルの Lambda 関数の使用方法について説明します。(または、Greengrass デバイスのセットアップ を使用してモジュール 3-1 を実行します)。
-
で Hello World Lambda 関数を作成します AWS Lambda。
-
Greengrass グループに Lambda 関数を追加します。
-
Lambda 関数と 間のMQTT通信を許可するサブスクリプションを作成します AWS IoT。
-
Greengrass システムコンポーネントと Lambda 関数のローカルのログを設定します。
-
Lambda 関数とサブスクリプションを含む Greengrass グループをデプロイします。
-
ローカル Lambda 関数から にメッセージを送信します AWS IoT。
-
からローカル Lambda 関数を呼び出します AWS IoT。
-
オンデマンドおよび長期間有効な関数をテストします。
-
- モジュール 4 およびモジュール 5
-
モジュール 4 は、クライアントデバイスがコアに接続し、相互に通信する方法を示しています。
モジュール 5 は、クライアントデバイスがシャドウを使用して状態を制御する方法を示しています。
-
AWS IoT デバイスを登録してプロビジョニングします (コマンドラインターミナルで表されます)。
-
AWS IoT Device SDK for Python をインストールします。これは、Greengrass のコアを検出するためにクライアントデバイスによって使用されます。
-
クライアントデバイスを Greengrass グループに追加します。
-
MQTT 通信を許可するサブスクリプションを作成します。
-
クライアントデバイスを含む Greengrass グループをデプロイします。
-
通信をテスト device-to-deviceします。
-
シャドウ状態の更新をテストします。
-
- モジュール 6
-
モジュール 6 では、Lambda 関数が AWS クラウドにアクセスする方法を説明します。
-
Amazon DynamoDB リソースへのアクセスを許可する Greengrass グループロールを作成します。
-
Greengrass グループに Lambda 関数を追加します。この関数は、 AWS SDK for Python を使用して DynamoDB とやり取りします。
-
MQTT 通信を許可するサブスクリプションを作成します。
-
DynamoDB とのやりとりをテストします。
-
- モジュール 7
-
モジュール 7 では、Greengrass コアで使用するようにシミュレートされたハードウェアセキュリティモジュール (HSM) を設定する方法を示します。
重要
この高度なモジュールは、実験と初期テストのためにのみ提供されています。どのような種類の本番稼働用でもありません。
-
ソフトウェアベースのプライベートキーをインストールHSMして設定します。
-
ハードウェアセキュリティを使用するように Greengrass コアを設定します。
-
ハードウェアセキュリティ設定をテストします。
-
要件
このチュートリアルを完了するには、以下が必要です。
-
Mac、Windows PC、または UNIXのようなシステム。
-
AWS アカウント。アカウントをお持ちでない場合は、「を作成する AWS アカウント」を参照してください。
-
をサポートする AWS リージョン
の使用 AWS IoT Greengrass。でサポートされているリージョンのリストについては AWS IoT Greengrass、「」のAWS 「エンドポイントとクォータ」を参照してくださいAWS 全般のリファレンス。 注記
を書き AWS リージョン 留め、このチュートリアル全体で一貫して使用されていることを確認してください。チュートリアル AWS リージョン 中に を切り替えると、ステップの完了に問題がある可能性があります。
-
Raspberry Pi 4 Model B、または Raspberry Pi 3 Model B/B+、8 GB microSD カード、または Amazon EC2インスタンス。 AWS IoT Greengrass は物理的なハードウェアで使用するのが最適であるため、Raspberry Pi を使用することをお勧めします。
注記
Raspberry Pi のモデルを取得するには、次のコマンドを実行します。
cat /proc/cpuinfo
リストの下部にある
Revision
属性の値をメモし、「Which Pi have I got?」の表を参照してください。例えば、 Revision
の値がa02082
である場合、Pi は「3 Model B」であることが表でわかります。Raspberry Pi のアーキテクチャを確認するには、次のコマンドを実行します。
uname -m
このチュートリアルでは、結果は
armv71
以上である必要があります。 -
Python の基本的な知識
このチュートリアルは Raspberry Pi AWS IoT Greengrass で実行することを目的としていますが、 は他のプラットフォーム AWS IoT Greengrass もサポートしています。詳細については、「サポートされているプラットフォームと要件」を参照してください。
を作成する AWS アカウント
がない場合は AWS アカウント、以下の手順に従って を作成してアクティブ化します AWS アカウント。
にサインアップする AWS アカウント
がない場合は AWS アカウント、次の手順を実行して作成します。
にサインアップするには AWS アカウント
https://portal.aws.amazon.com/billing/サインアップ
を開きます。 オンラインの手順に従います。
サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。
にサインアップすると AWS アカウント、 AWS アカウントのルートユーザーが作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。
AWS は、サインアッププロセスが完了した後に確認 E メールを送信します。/ に移動し、マイアカウント を選択すると、いつでも現在のアカウントアクティビティを表示https://aws.amazon.com
管理アクセスを持つユーザーを作成する
にサインアップしたら AWS アカウント、 のセキュリティを確保し AWS アカウントのルートユーザー、 を有効にして管理ユーザーを作成し AWS IAM Identity Center、日常的なタスクにルートユーザーを使用しないようにします。
のセキュリティ保護 AWS アカウントのルートユーザー
-
ルートユーザーを選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者AWS Management Console
として にサインインします。次のページでパスワードを入力します。 ルートユーザーを使用してサインインする方法については、AWS サインイン ユーザーガイドのルートユーザーとしてサインインするを参照してください。
-
ルートユーザーの多要素認証 (MFA) を有効にします。
手順については、「 ユーザーガイド」の AWS アカウント 「ルートユーザー (コンソール) の仮想MFAデバイスの有効化」を参照してください。 IAM
管理アクセスを持つユーザーを作成する
-
IAM Identity Center を有効にします。
手順については、「AWS IAM Identity Center ユーザーガイド」の「AWS IAM Identity Centerの有効化」を参照してください。
-
IAM Identity Center で、ユーザーに管理アクセスを許可します。
を ID ソース IAM アイデンティティセンターディレクトリ として使用する方法のチュートリアルについては、 AWS IAM Identity Center ユーザーガイドの「デフォルトを使用してユーザーアクセスを設定する IAM アイデンティティセンターディレクトリ」を参照してください。
管理アクセス権を持つユーザーとしてサインインする
-
IAM Identity Center ユーザーでサインインするには、IAMIdentity Center ユーザーの作成時に E メールアドレスにURL送信されたサインインを使用します。
IAM Identity Center ユーザーを使用してサインインする方法については、AWS サインイン 「 ユーザーガイド」のAWS 「 アクセスポータルにサインインする」を参照してください。
追加のユーザーにアクセス権を割り当てる
重要
このチュートリアルでは、IAMユーザーアカウントに管理者アクセス許可があることを前提としています。