시작하기
Lambda 사용을 시작하려면 Lambda 콘솔에서 함수를 생성해야 한다. 몇 분 안에 함수를 생성하고, 호출하고, 로그와 지표를 확인하고, 데이터를 추적할 수 있다.
Lambda 콘솔에서, 아니면 IDE 도구 키트, 명령줄 도구 또는 AWS SDK를 사용해 함수를 작성할 수 있다. Lambda 콘솔에서는 컴파일되지 않은 언어를 위한 코드 편집기를 제공하므로 코드를 빠르게 수정하고 테스트할 수 있다. AWS Command Line Interface(AWS CLI)를 통해 고급 구성 및 자동화 사용 사례를 위한 Lambda API에 직접 액세스할 수 있다.
배포 패키지를 사용하여 함수 코드를 Lambda에 배포한다. Lambda는 다음과 같은 두 가지 유형의 배포 패키지를 지원한다.
-
함수 코드 및 종속 항목이 포함된 .zip 파일 아카이브.
-
Open Container Initiative(OCI) 사양과 호환되는 컨테이너 이미지.
1. 콘솔로 Lambda 함수 생성
이 시작하기 연습에서는 콘솔을 사용하여 Lambda 함수를 생성한다. 이 함수는 Lambda가 생성하는 기본 코드를 사용한다. Lambda 콘솔에서는 컴파일되지 않은 언어를 위한 코드 편집기를 제공하므로 코드를 빠르게 수정하고 테스트할 수 있다. 컴파일된 언어의 경우 .zip 아카이브 배포 패키지를 생성하여 Lambda 함수 코드를 업로드해야 한다.
2. 함수 생성
Lambda 콘솔을 사용하여 Node.js Lambda 함수를 생성한다. 함수의 기본 코드는 Lambda가 자동으로 생성한다.
콘솔로 Lambda 함수를 생성하려면
-
Lambda 콘솔의 함수 페이지를 연다.
-
함수 생성(Create function)을 선택한다.
-
기본 정보에서 다음과 같이 한다.
a. [함수 이름(Function name)]에
my-function
을 입력한다.b. [런타임(Runtime)]에 Node.js 14.x가 선택되어 있는지 확인한다. Lambda는 .NET(PowerShell, C#) Go, Java, Node.js, Python 및 Ruby용 런타임을 제공한다.
-
함수 생성(Create function)을 선택한다.
Lambda는 Node.js 함수와 로그 업로드 권한을 함수에 부여하는 실행 역할을 생성한다. Lambda 함수는 함수가 호출될 때 실행 역할을 맡아 해당 실행 역할을 사용하여 AWS SDK에 대한 크레덴셜을 생성하고 이벤트 소스에서 데이터를 읽는다.
2. Lambda 함수 호출
콘솔에 제공된 샘플 이벤트 데이터를 사용하여 Lambda 함수를 호출한다.
함수를 호출하려면
-
함수를 선택한 후 테스트(Test) 탭을 선택한다.
-
테스트 이벤트(Test event) 섹션에서 새 이벤트(New event)를 선택한다. 템플릿(Template)에서 기본
hello-world
옵션을 그대로 둔다. 해당 테스트의 이름을 입력한다. 다음의 샘플 이벤트 템플릿에 유의한다. -
변경 사항 저장과 테스트를 차례로 선택한다. 각 사용자는 함수당 최대 10개의 테스트 이벤트를 생성할 수 있다. 이러한 테스트 이벤트는 다른 사용자가 사용할 수 없다.
Lambda가 사용자를 대신하여 함수를 실행한다. 함수 핸들러가 샘플 이벤트를 수신하여 처리한다.
-
성공적으로 완료되면 콘솔에서 결과를 확인한다.
-
실행 결과(Execution result)에 실행 상태가 성공(succeeded)으로 표시된다. 함수 실행 결과를 확인하기 위해 세부 정보(Details)를 확장한다. 로그 링크를 클릭하면 CloudWatch 콘솔에서 로그 그룹 페이지가 열린다.
-
[Summary] 섹션에 [Log output] 섹션(실행 로그의 REPORT 줄)에 보고된 주요 정보가 표시된다.
-
로그 출력 섹션에 Lambda가 각 호출마다 생성하는 로그가 표시된다. 함수는 이러한 로그를 CloudWatch에 기록한다. Lambda 콘솔은 사용자의 편의를 위해 이러한 로그를 표시한다. 여기를 클릭을 선택하여 CloudWatch 로그 그룹에 로그를 추가하고 CloudWatch 콘솔에서 로그 그룹 페이지를 연다.
-
-
몇 차례 더 함수를 실행(테스트 선택)하여 다음 단계에서 볼 수 있는 몇 가지 지표를 수집한다.
-
모니터링 탭을 선택한다. 이 페이지에는 Lambda가 CloudWatch로 보내는 지표의 그래프가 표시된다.
3. 정리
예제 함수를 사용한 작업이 완료되면 해당 함수를 삭제한다. 함수의 로그를 저장하는 로그 그룹과 콘솔에서 생성된 실행 역할을 삭제할 수도 있다.
Lambda 함수 삭제하기
-
Lambda 콘솔의 함수 페이지를 연다.
-
함수를 선택한다.
-
작업(Actions), 삭제(Delete)를 선택한다.
-
함수 삭제(Delete function) 대화 상자에서 삭제(Delete)를 선택한다.
로그 그룹 삭제
-
CloudWatch 콘솔에서 로그 그룹 페이지를 연다.
-
함수의 로그 그룹(
/aws/lambda/my-function
)을 선택한다. -
작업(Actions), 로그 그룹 삭제(Delete log group(s))를 선택한다.
-
로그 그룹 삭제(Delete log group(s)) 대화 상자에서 삭제(Delete)를 선택한다.
실행 역할을 삭제하려면
-
AWS Identity and Access Management(IAM) 콘솔의 역할 페이지를 연다.
-
함수의 역할(
my-function-role-31exxmpl
)을 선택한다. -
역할 삭제를 선택한다.
-
역할 삭제(Delete role) 대화 상자에서 예, 삭제(Yes, Delete)를 선택한다.
AWS CloudFormation 및 AWS Command Line Interface(AWS CLI)를 사용하여 함수, 로그 그룹 및 역할의 생성 및 정리를 자동화할 수 있다.