支援終止通知: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 函數中下載並擷取的適用於 Python AWS IoT Greengrass 的核心 SDK。
此模組中的 Lambda 函數使用:
-
examples\HelloWorldCounter中的greengrassHelloWorldCounter.py檔案。這是您的 Lambda 函數程式碼。 -
greengrasssdk資料夾。此為軟體開發套件。
-
-
建立 Lambda 函數部署套件:
-
將
greengrasssdk資料夾複製到包含greengrassHelloWorldCounter.py的HelloWorldCounter資料夾中。 -
將
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 主控台,然後選擇建立函數。
-
選擇從頭開始撰寫。
-
將您的函數命名為
Greengrass_HelloWorld_Counter,並將其餘的欄位設定如下:-
針對執行期,選擇 Python 3.7。
-
對於許可,請保留預設設定。這會建立授予基本 Lambda 許可的執行角色。不會使用此角色 AWS IoT Greengrass。或者,您可以重複使用您在單元 3-1 中建立的角色。
選擇 Create function (建立函數)。
-
-
上傳您的 Lambda 函數部署套件。
-
在程式碼索引標籤的程式碼來源下,選擇從中上傳。從下拉式清單中選擇 .zip 檔案。
-
選擇上傳,然後選擇您的
hello_world_counter_python_lambda.zip部署套件。然後選擇 Save (儲存)。 -
在函數的程式碼索引標籤的執行時間設定下,選擇編輯,然後輸入下列值。
-
針對執行期,選擇 Python 3.7。
-
對於 Handler (處理常式),輸入
greengrassHelloWorldCounter.function_handler。
-
-
選擇 Save (儲存)。
注意
AWS Lambda 主控台上的測試按鈕不適用於此函數。 AWS IoT Greengrass 核心 SDK 不包含在 AWS Lambda 主控台中獨立執行 Greengrass Lambda 函數所需的模組。這些模組 (例如
greengrass_common) 會在部署到您的 Greengrass 核心之後提供給函數。
-
-
發佈函數的第一個版本。
-
從頁面頂端的動作選單中,選擇發佈新版本。針對 Version description (版本描述),輸入
First version。 -
選擇 Publish (發布)。
-
-
建立函數版本的別名。
-
從頁面頂端的動作選單中,選擇建立別名。
-
對於名稱,輸入
GG_HW_Counter。 -
對於版本,選擇 1。
-
選擇 Save (儲存)。
別名會為您的 Lambda 函數建立單一實體,供 Greengrass 裝置訂閱。如此一來,您就不必在每次修改函數時,使用新的 Lambda 函數版本編號更新訂閱。
-