

지원 종료 공지: 2026년 10월 7일에는에 대한 지원을 중단할 AWS 예정입니다 AWS IoT Greengrass Version 1. 2026년 10월 7일 이후에는 더 이상 AWS IoT Greengrass V1 리소스에 액세스할 수 없습니다. 자세한 내용은 [에서 마이그레이션 AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html)을 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Lambda 함수 생성 및 구성
<a name="create-config-lambda"></a>

이 단계에서는 신호등을 통과하는 차량들의 수를 추적하는 Lambda 함수를 만듭니다. 이 Lambda 함수는 `GG_TrafficLight` 섀도우 상태가 `G`로 변경될 때마다 임의의 수의 자동차(1\$120대)가 통과하는 것을 시뮬레이션합니다. 세 번째 `G` 불빛이 바뀔 때마다 Lambda 함수는 최소값 및 최대값과 같은 기본 통계를 DynamoDB 테이블로 전송합니다.

1. 컴퓨터에 `car_aggregator`라는 이름의 폴더를 하나 만듭니다.

1. GitHub의 [TrafficLight](https://github.com/aws/aws-greengrass-core-sdk-python/tree/master/examples/TrafficLight) 예제 폴더에서 `carAggregator.py` 파일을 `car_aggregator` 폴더로 다운로드합니다. 이 항목은 Lambda 함수 코드입니다.
**참고**  
이 예제 Python 파일은 편의를 위해 AWS IoT Greengrass 코어 SDK 리포지토리에 저장되지만 AWS IoT Greengrass 코어 SDK는 사용하지 않습니다.

1. 미국 동부(버지나 북부) 리전에서 작업하지 않는 경우를 `carAggregator.py` 열고 다음 줄`region_name`을 AWS IoT 콘솔에서 현재 선택한 로 AWS 리전 변경합니다. 지원되는 목록은의 AWS 리전섹션을 참조[AWS IoT Greengrass](https://docs.aws.amazon.com/general/latest/gr/greengrass.html)하세요*Amazon Web Services 일반 참조*.

   ```
   dynamodb = boto3.resource('dynamodb', region_name='us-east-1')
   ```

1. [명령줄](https://en.wikipedia.org/wiki/Command-line_interface) 창에서 다음 명령을 실행하여 [AWS SDK for Python (Boto3)](https://github.com/boto/boto3/blob/develop/README.rst) 패키지와 종속 항목을 `car_aggregator` 폴더에 설치합니다. Greengrass Lambda 함수는 AWS SDK를 사용하여 다른 AWS 서비스에 액세스합니다. (Windows의 경우, [관리자 권한 명령 프롬프트](https://technet.microsoft.com/en-us/library/cc947813(v=ws.10).aspx)를 사용합니다.)

   ```
   pip install boto3 -t path-to-car_aggregator-folder
   ```

   그러면 다음과 유사한 디렉터리 목록이 생성됩니다.  
![\[carAggregator.py를 보여주는 디렉터리 목록 스크린샷\]](http://docs.aws.amazon.com/ko_kr/greengrass/v1/developerguide/images/gg-get-started-095.png)

1. `car_aggregator` 폴더의 내용을 `car_aggregator.zip`이라는 이름의 `.zip` 파일로 압축합니다. (폴더의 내용(폴더가 아닌)을 압축합니다.) 이것이 Lambda 함수 배포 패키지입니다.

1. Lambda 콘솔에서 **GG\$1Car\$1Aggregator**(이)라는 함수를 생성하고 나머지 필드들을 다음과 같이 설정합니다.
   + **실행 시간**에서 **Python 3.7**을 선택합니다.
   + **권한**의 경우, 기본 설정을 유지합니다. 이를 통해 기본 Lambda 권한을 부여하는 실행 역할을 생성합니다. 이 역할은에서 사용되지 않습니다 AWS IoT Greengrass.

   **함수 생성**을 선택합니다.  
![\[함수 이름이 GG_Car_Aggregator로 설정되고 런타임이 Python 3.7로 설정된 기본 정보 섹션.\]](http://docs.aws.amazon.com/ko_kr/greengrass/v1/developerguide/images/gg-get-started-095.5.png)

1. Lambda 함수 배포 패키지를 업로드합니다.

   1. <a name="lambda-console-upload"></a>**코드** 탭의 **코드 소스**에서 **다음에서 업로드**를 선택합니다. 드롭다운에서 **.zip 파일**을 선택합니다.  
![\[.zip 파일이 강조 표시된 드롭다운의 업로드.\]](http://docs.aws.amazon.com/ko_kr/greengrass/v1/developerguide/images/lra-console/upload-deployment-package.png)

   1. 업로드를 선택한 다음 `car_aggregator.zip` 배포 패키지를 선택합니다. 그런 다음 **저장**을 선택합니다.

   1. <a name="lambda-console-runtime-settings-para"></a>함수의 **코드** 탭에 있는 **런타임 설정**에서 **편집**을 선택하고 다음 값을 입력합니다.
      + **실행 시간**에서 **Python 3.7**을 선택합니다.
      + **핸들러**에 **carAggregator.function\$1handler**를 입력합니다.

   1. **저장**을 선택합니다.

1. Lambda 함수를 게시하고 **GG\$1CarAggregator**(이)라는 별칭을 생성합니다. 단계별 지침은 모듈 3 (1부)의 [Lambda 함수](create-lambda.md#publish-function-version) 게시와 [별칭 생성](create-lambda.md#create-version-alias) 단계를 참조하십시오.

1.  AWS IoT 콘솔에서 방금 생성한 Lambda 함수를 AWS IoT Greengrass 그룹에 추가합니다.

   1. 그룹 구성 페이지에서 **Lambda 함수**를 선택한 다음 **내 Lambda 함수**에서 **추가**를 선택합니다.

   1. **Lambda 함수**의 경우 **GG\$1CAR\$1Aggregator**를 선택하십시오.

   1. **Lambda 함수 버전**에서 게시한 버전에 대한 별칭을 선택합니다.

   1. **메모리 제한**에 **64 MB**를 입력합니다.

   1. **고정된** 경우 **True**를 선택합니다.

   1. **Lambda 함수 추가**를 선택합니다.
**참고**  
이전 모듈의 다른 Lambda 함수를 제거해도 됩니다.