サポート終了通知: 2026 年 10 月 7 日、 AWS はサポートを終了します AWS IoT Greengrass Version 1。2026 年 10 月 7 日以降、 AWS IoT Greengrass V1 リソースにアクセスできなくなります。詳細については、「 からの移行 AWS IoT Greengrass Version 1」を参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Lambda 関数の作成とパッケージ化
このステップでは、次の操作を行います。
-
Lambda 関数コードと依存関係を含む関数デプロイパッケージを作成します。
-
Lambda コンソールを使用して Lambda 関数を作成し、デプロイパッケージをアップロードします。
-
Lambda 関数のバージョンを発行し、そのバージョンを指すエイリアスを作成します。
-
コンピュータで、モジュール 3-1 の Lambda 関数の作成とパッケージ化でダウンロードして抽出した AWS IoT Greengrass Core SDK for Python に移動します。
このモジュールの Lambda 関数では、以下を使用します。
-
examples\HelloWorldCounterのgreengrassHelloWorldCounter.pyファイル。このファイルに、Lambda 関数コードが記述されています。 -
greengrasssdkフォルダ。これは SDK です。
-
-
Lambda 関数デプロイパッケージを作成します。
-
greengrassHelloWorldCounter.pyを含むHelloWorldCounterフォルダにgreengrasssdkフォルダをコピーします。 -
greengrassHelloWorldCounter.pyとgreengrasssdkフォルダをhello_world_counter_python_lambda.zipという名前のzipファイルに保存します。pyファイルとgreengrasssdkフォルダはディレクトリのルートにある必要があります。
zipをインストールしたUNIX 互換システム (Mac のターミナルを含む) の場合は、次のコマンドを使用してファイルとフォルダをパッケージ化できます。zip -r hello_world_counter_python_lambda.zip greengrasssdk greengrassHelloWorldCounter.py
これで、Lambda 関数を作成して、デプロイパッケージをアップロードする準備ができました。
-
-
Lambda コンソールを開き、[関数の作成] を選択します。
-
Author from scratch (製作者を最初から) を選択します。
-
関数に
Greengrass_HelloWorld_Counterという名前を付け、残りのフィールドを以下のように設定します。-
[ランタイム] で [Python 3.7] を選択します。
-
[アクセス許可] はデフォルト設定のままにしておきます。これで Lambda への基本的なアクセス許可を付与する実行ロールが作成されます。このロールは では使用されません AWS IoT Greengrass。または、モジュール 3-1 で作成したロールを再利用することもできます。
[Create function (関数の作成)] を選択します。
-
-
Lambda 関数のデプロイパッケージをアップロードします。
-
[Code] (コード) タブの [Code source] (コードソース) で、[Upload from] (アップロード元) を選択します。ドロップダウンから [.zip ファイル] を選択します。
-
[アップロード] を選択し、
hello_world_counter_python_lambda.zipデプロイパッケージを選択します。次に、[保存] を選択します。 -
関数の [Code] (コード) タブにある [Runtime settings] (ランタイム設定) で [Edit] (編集) を選択し、次の値を入力します。
-
[ランタイム] で [Python 3.7] を選択します。
-
[ハンドラ] に
greengrassHelloWorldCounter.function_handlerと入力します。
-
-
[Save] を選択します。
注記
AWS Lambda コンソールのテストボタンは、この関数では機能しません。 AWS IoT Greengrass Core SDK には、Greengrass Lambda 関数を AWS Lambda コンソールで個別に実行するために必要なモジュールは含まれていません。これらのモジュール (例えば
greengrass_common) が関数に提供されるのは、Greengrass Core にデプロイされた後になります。
-
-
関数の最初のバージョンを発行します。
-
ページの上部の [Actions] (アクション) メニューから、[Publish new version] (新しいバージョンを発行) を選択します。[バージョンの説明] に「
First version」と入力します。 -
[発行] を選択します。
-
-
関数バージョンのエイリアスを作成します。
-
ページ上部の [Actions] (アクション) メニューから、[Create alias] (エイリアスの作成) を選択します。
-
[名前] に
GG_HW_Counterと入力します。 -
[バージョン] で、[1] を選択します。
-
[Save] を選択します。
エイリアスは、Greengrass デバイスがサブスクライブできる Lambda 関数の単一のエンティティを作成します。この方法では、関数が変更されるたびにサブスクリプションを新しい Lambda 関数バージョン番号で更新する必要がありません。
-