[파이썬] AWS Lambda 함수의 작성과 배포

서버리스 아키텍처의 핵심 요소인 AWS Lambda는 개발자들이 손쉽게 코드를 실행하고 스케일링할 수 있는 기능을 제공합니다. 이 글에서는 AWS Lambda 함수를 작성하고 배포하는 방법에 대해 알아보겠습니다.

1. AWS Lambda 함수 작성하기

AWS Lambda 함수를 작성할 때는 주로 Python, Node.js, Java 등을 사용합니다. 이 예제에서는 Python을 사용하여 간단한 함수를 작성해보겠습니다.

import json

def hello(event, context):
    name = event["name"]
    message = f"Hello, {name}!"
    
    return {
        'statusCode': 200,
        'body': json.dumps(message)
    }

위의 예제 코드는 “name”이라는 키를 가진 이벤트를 받아 해당 이름을 포함한 인사 메시지를 반환하는 함수입니다.

2. AWS Lambda 함수 배포하기

AWS Lambda 함수를 배포하기 위해서는 AWS Management Console, AWS CLI, 또는 AWS SDK를 사용할 수 있습니다. 여기서는 가장 간편한 방법인 AWS Management Console을 사용하여 함수를 배포해보겠습니다.

2.1. 함수 설정

  1. AWS Management Console에 로그인하고 Lambda 서비스로 이동합니다.
  2. “함수 생성” 버튼을 클릭하고, “예측” 또는 “블루프린트” 중 하나를 선택합니다.
  3. “함수 이름”을 입력하고, “런타임”으로 “Python 3.8”을 선택합니다.
  4. “기본 실행 역할”을 선택하거나 “새 역할 생성”을 클릭하여 새 역할을 만들고 설정합니다.
  5. “생성” 버튼을 클릭하여 함수를 생성합니다.

2.2. 함수 코드 업로드

  1. 함수가 생성되면 “함수 코드” 섹션에서 “코드 업로드”를 선택합니다.
  2. “Upload a .zip file” 옵션을 선택하고, 압축 파일을 선택하여 업로드합니다. (앞서 작성한 Python 함수 코드를 포함한 .zip 파일)
  3. “핸들러 정보”를 선택하고, 엔트리 포인트로 “파일명.함수명”을 입력합니다. (예: main.hello)
  4. “저장” 버튼을 클릭하여 코드를 업로드합니다.

2.3. 함수 트리거 구성

  1. 함수의 트리거를 구성하기 위해 트리거 섹션으로 이동합니다.
  2. ”+ 트리거 추가”를 클릭하고 원하는 이벤트 소스를 선택합니다. (예: API Gateway, S3, CloudWatch 등)
  3. 트리거 설정을 구성하고, 필요한 정보를 입력합니다.
  4. “추가” 또는 “저장” 버튼을 클릭하여 트리거를 구성합니다.

2.4. 함수 테스트 및 배포

  1. 함수를 테스트하기 위해 테스트 이벤트를 생성합니다. (예: {"name": "John"})
  2. “테스트” 버튼을 클릭하여 함수를 테스트합니다.
  3. 함수가 예상대로 작동하는지 확인한 후, “배포” 버튼을 클릭하여 함수를 배포합니다.

3. 함수 수정 및 업데이트

AWS Lambda 함수를 수정하고 업데이트하기 위해선 다음과 같은 단계를 수행합니다.

  1. AWS Management Console에 로그인하고 Lambda 서비스로 이동합니다.
  2. 수정할 함수를 선택하고, 원하는 부분을 수정합니다. (예: 코드, 구성, 트리거 등)
  3. 변경 사항을 저장하고, 함수를 테스트한 후, “배포” 버튼을 클릭하여 함수를 업데이트합니다.

마무리

AWS Lambda는 개발자들에게 간단하고 빠르게 코드를 실행하고 관리할 수 있는 환경을 제공합니다. 이 글에서는 AWS Lambda 함수를 작성하고 배포하는 방법에 대해 알아보았습니다. AWS Lambda를 활용하여 더욱 효율적이고 유연한 서버리스 아키텍처를 구축할 수 있습니다.