지원 종료 공지: 2026년 10월 7일에는에 대한 지원을 중단할 AWS 예정입니다 AWS IoT Greengrass Version 1. 2026년 10월 7일 이후에는 더 이상 AWS IoT Greengrass V1 리소스에 액세스할 수 없습니다. 자세한 내용은 에서 마이그레이션 AWS IoT Greengrass Version 1을 참조하세요.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Lambda 함수 생성 및 패키징
이 모듈의 예제 Python Lambda 함수수는 Python용 AWS IoT Greengrass 코어 SDK를 사용하여 MQTT 메시지를 게시합니다.
이 단계에서는 다음을 수행합니다.
-
Python용 AWS IoT Greengrass 코어 SDK를 컴퓨터에 다운로드합니다( AWS IoT Greengrass 코어 디바이스 아님).
-
함수 코드와 종속성이 포함된 Lambda 함수 배포 패키지를 생성합니다.
-
Lambda 콘솔을 사용하여 Lambda 함수를 만들고 배포 패키지를 업로드합니다.
-
Lambda 함수의 버전을 게시하고 버전을 가리키는 별칭을 만듭니다.
이 모듈을 완료하려면 코어 장치에 Python 3.7을 설치해야 합니다.
-
AWS IoT Greengrass 코어 SDK 다운로드 페이지에서 Python용 AWS IoT Greengrass 코어 SDK를 컴퓨터에 다운로드합니다.
-
다운로드한 패키지의 압축을 풀어 Lambda 함수 코드 및 SDK를 가져옵니다.
이 모듈의 Lambda 함수는 다음을 사용합니다.
-
examples\HelloWorld의greengrassHelloWorld.py파일. 이 항목은 Lambda 함수 코드입니다. 이 함수는 5초마다 가능한 메시지 두 개 중 하나를hello/world주제에 게시합니다. -
greengrasssdk폴더입니다. 이는 SDK입니다.
-
-
greengrasssdk폴더를greengrassHelloWorld.py가 포함된HelloWorld폴더에 복사합니다. -
Lambda 함수 배포 패키지를 생성하려면
greengrassHelloWorld.py와greengrasssdk폴더를hello_world_python_lambda.zip이라는 압축된zip파일로 저장합니다.py파일과greengrasssdk폴더는 디렉터리의 루트에 있어야 합니다.
UNIX 유사 시스템(Mac 터미널 포함)의 경우 다음 명령을 사용하여 파일과 폴더를 패키징할 수 있습니다.
zip -r hello_world_python_lambda.zip greengrasssdk greengrassHelloWorld.py참고
배포에 따라 먼저
zip을 설치해야 할 수도 있습니다(예를 들어sudo apt-get install zip을 실행하여). 설치 명령은 배포에 따라 다를 수 있습니다.이제 Lambda 함수를 만들고 배포 패키지를 업로드할 준비가 되었습니다.
-
Lambda 콘솔을 열고 함수 생성을 선택합니다.
-
새로 작성을 선택합니다.
-
함수 이름을
Greengrass_HelloWorld로 지정하고 나머지 필드를 다음과 같이 설정합니다.-
실행 시간에서 Python 3.7을 선택합니다.
-
권한의 경우, 기본 설정을 유지합니다. 이를 통해 기본 Lambda 권한을 부여하는 실행 역할을 생성합니다. 이 역할은에서 사용되지 않습니다 AWS IoT Greengrass.
함수 생성(Create function)을 선택합니다.
-
-
Lambda 함수 배포 패키지를 업로드합니다.
-
코드 탭의 코드 소스에서 다음에서 업로드를 선택합니다. 드롭다운에서 .zip 파일을 선택합니다.
-
업로드를 선택한 다음
hello_world_python_lambda.zip배포 패키지를 선택합니다. 그런 다음 저장을 선택합니다. -
함수의 코드 탭에 있는 런타임 설정에서 편집을 선택하고 다음 값을 입력합니다.
-
실행 시간에서 Python 3.7을 선택합니다.
-
핸들러에
greengrassHelloWorld.function_handler를 입력합니다.
-
-
저장(Save)을 선택합니다.
참고
AWS Lambda 콘솔의 테스트 버튼은이 함수에서 작동하지 않습니다. AWS IoT Greengrass Core SDK에는 AWS Lambda 콘솔에서 Greengrass Lambda 함수를 독립적으로 실행하는 데 필요한 모듈이 포함되어 있지 않습니다. 이러한 모듈(예:
greengrass_common)은 Greengrass 코어에 배포된 후 함수에 제공됩니다.
-
-
Lambda 함수를 게시하십시오.
-
작업 메뉴에서 새 버전 게시를 선택합니다.
-
버전 설명에
First version을 입력한 후 게시를 선택합니다.
-
-
참고
Greengrass 그룹은 별칭(권장) 또는 버전을 기준으로 Lambda 함수를 참조할 수 있습니다. 별칭을 사용하면 함수 코드를 업데이트할 때 구독 테이블이나 그룹 정의를 변경할 필요가 없으므로 코드 업데이트를 더 쉽게 관리할 수 있습니다. 그 대신 새 함수 버전에 대한 별칭을 가리킵니다.
-
페이지 상단의 작업 메뉴에서 별칭 생성을 선택합니다.
-
별칭을
GG_HelloWorld(으)로 지정하고 버전을1(사용자가 방금 게시한 버전에 해당)로 설정한 다음 저장을 선택합니다.참고
AWS IoT Greengrass 는 $LATEST 버전에 대해 Lambda 별칭을 지원하지 않습니다.
-