자습서: Lambda 함수를 사용하여 Amazon RDS 데이터베이스에 액세스

자습서: Lambda 함수를 사용하여 Amazon RDS 데이터베이스에 액세스

이 자습서에서는 Lambda 함수를 사용하여 RDS Proxy를 통해 Amazon Relational Database Service(Amazon RDS) 데이터베이스에 데이터를 씁니다. Lambda 함수는 Amazon Simple Queue Service(Amazon SQS) 큐에서 레코드를 읽고 메시지가 추가될 때마다 데이터베이스의 테이블에 새 항목을 씁니다. 이 예제에서는 AWS Management Console을 사용하여 큐에 메시지를 수동으로 추가합니다. 다음 다이어그램은 자습서를 완료하는 데 사용하는 AWS 리소스를 보여줍니다.

Amazon RDS를 사용하면 Microsoft SQL Server, MariaDB, MySQL, Oracle Database 및 PostgreSQL과 같은 일반적인 데이터베이스 제품을 사용하여 클라우드에서 관리형 관계형 데이터베이스를 실행할 수 있습니다. Lambda를 사용하여 데이터베이스에 액세스하면 웹 사이트에 새 고객이 등록하는 것과 같은 이벤트에 대응하여 데이터를 읽고 쓸 수 있습니다. 함수, 데이터베이스 인스턴스 및 프록시는 높은 수요 기간을 충족하도록 자동으로 확장됩니다.

이 자습서를 완료하려면 다음 작업을 수행합니다:

  1. AWS 계정의 기본 VPC에 RDS for MySQL 데이터베이스 인스턴스와 프록시를 시작합니다.
  2. 데이터베이스에 새 테이블을 만들고 데이터를 쓰는 Lambda 함수를 생성하고 테스트합니다.
  3. Amazon SQS 큐를 생성하고 새 메시지가 추가될 때마다 Lambda 함수를 호출하도록 구성합니다.
  4. AWS Management Console을 사용하여 큐에 메시지를 추가하고 CloudWatch Logs로 결과를 모니터링하여 전체 설정을 테스트합니다.

이러한 단계를 완료하면 다음을 배우게 됩니다:

  • Amazon RDS를 사용하여 데이터베이스 인스턴스와 프록시를 만들고 Lambda 함수를 프록시에 연결하는 방법
  • Lambda를 사용하여 Amazon RDS 데이터베이스에 생성 및 읽기 작업을 수행하는 방법
  • Amazon SQS를 사용하여 Lambda 함수를 호출하는 방법

이 자습서는 AWS Management Console 또는 AWS Command Line Interface(AWS CLI)를 사용하여 완료할 수 있습니다.

출처: 문서

본문

사전 요구 사항

시작하기 전에 다음 섹션의 단계를 완료하세요:

  • AWS 계정 가입

Amazon RDS DB 인스턴스 생성

Amazon RDS DB 인스턴스는 AWS Cloud에서 실행되는 격리된 데이터베이스 환경입니다. 인스턴스에는 사용자가 만든 하나 이상의 데이터베이스가 포함될 수 있습니다. 달리 지정하지 않는 한 Amazon RDS는 AWS 계정에 포함된 기본 VPC에 새 데이터베이스 인스턴스를 생성합니다. Amazon VPC에 대한 자세한 내용은 Amazon Virtual Private Cloud User Guide를 참조하세요.

이 자습서에서는 AWS 계정의 기본 VPC에 새 인스턴스를 만들고 해당 인스턴스에 ExampleDB라는 데이터베이스를 만듭니다. AWS Management Console 또는 AWS CLI를 사용하여 DB 인스턴스와 데이터베이스를 만들 수 있습니다.

데이터베이스 인스턴스를 생성하려면

  1. Amazon RDS 콘솔을 열고 Create database를 선택합니다.
  2. Standard create 옵션을 선택한 상태로 두고 Engine options에서 MySQL을 선택합니다.
  3. Templates에서 Free tier 또는 Sandbox를 선택합니다. Free tier는 프리 티어 계정에 표시됩니다. Sandbox는 유료 요금제 계정에 표시됩니다.
  4. Settings에서 DB instance identifier에 MySQLForLambda를 입력합니다.
  5. 사용자 이름과 암호를 다음 방법으로 설정합니다:
    • Credentials settings에서 Master username을 admin으로 유지합니다.
    • Master password에 데이터베이스에 액세스할 암호를 입력하고 확인합니다.
  6. 데이터베이스 이름을 다음 방법으로 지정합니다:
    • 나머지 기본 옵션을 모두 선택한 상태로 두고 Additional configuration 섹션까지 아래로 스크롤합니다.
    • 이 섹션을 펼치고 Initial database name에 ExampleDB를 입력합니다.
  7. 나머지 기본 옵션을 모두 선택한 상태로 두고 Create database를 선택합니다.

Lambda 함수 및 프록시 생성

RDS 콘솔을 사용하여 데이터베이스와 동일한 VPC에 Lambda 함수와 프록시를 만들 수 있습니다.

참고

데이터베이스가 생성을 완료하고 Available 상태가 된 경우에만 이러한 연결된 리소스를 만들 수 있습니다.

더 알아보기 (Learn more)