Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Amazon Web Services

Serverless Architectures using Amazon CloudWatch Events and Scheduled Events with AWS Lambda (Korean)

Amazon Web Services and Amazon via AWS Skill Builder

Overview

소개

이 실습에서는 클라우드 인프라를 모니터링하고 이벤트에 대응할 수 있는 서버리스 인프라를 생성하는 방법을 보여줍니다.

이 실습의 첫 번째 부분에서는 Amazon CloudWatch Events에서 AWS Lambda 함수를 사용하여 Amazon EC2 인스턴스의 생성에 대응하는 방법을 알아봅니다.

이 실습의 두 번째 부분에서는 웹 사이트를 모니터링하고 올바르게 응답하지 않을 때 알림을 보낼 수 있는 AWS Lambda 함수를 생성합니다.

이 실습에서 다루는 주제

이 실습을 마치면 다음을 수행할 수 있습니다.

  • AWS Lambda 함수 생성
  • Amazon CloudWatch Events 구성
  • Amazon CloudWatch 경보 구성
  • 알림을 전송하도록 Amazon Simple Notification Service(SNS) 구성

필수 기술 지식

이 실습을 성공적으로 완료하려면 Amazon EC2에 익숙해야 합니다. 전체 솔루션 코드가 제공되지만 Node.js 프로그래밍이 필요합니다.

아이콘 설명

이 실습에서는 다양한 유형의 지침 및 참고 사항에 대한 주의를 환기하기 위해 다양한 아이콘이 사용됩니다. 다음 목록에서는 각 아이콘의 목적을 설명합니다.

  • 예상 출력: 명령 또는 편집된 파일의 출력을 확인하는 데 사용할 수 있는 샘플 출력입니다.
  • 참고: 힌트, 팁 또는 중요한 가이드입니다.
  • 새로 고침: 웹 브라우저 페이지 또는 목록을 새로 고쳐 새 정보를 표시해야 하는 경우입니다.

기타 AWS 서비스

IAM 정책에 따라 이 실습에 액세스하는 동안에는 실습에 필요한 서비스 외에 다른 AWS 서비스는 비활성화됩니다. 또한 이 랩에서 사용하는 서비스의 기능은 랩에서 필요한 수준으로 제한되며, 일부의 경우에는 랩 설계의 의도에 따라 추가로 제한될 수 있습니다. 다른 서비스에 액세스하거나 이 실습 가이드에서 제공하는 것 이외의 작업을 수행하는 경우 오류가 발생할 수 있습니다.

기술 소개

AWS Lambda

AWS Lambda는 클라우드에서 크기 조정 가능한 컴퓨팅 용량을 제공하여 개발자의 웹 규모 컴퓨팅을 더 쉽게 만들어 주는 컴퓨팅 서비스입니다. AWS Lambda에 코드를 업로드하면 AWS Lambda가 AWS 인프라를 사용하여 사용자 대신 코드를 실행할 수 있습니다. AWS Lambda는 Node.js, Java 또는 Python과 같은 여러 코딩 언어를 지원합니다.

코드를 업로드하고 Lambda 함수를 생성하면 AWS Lambda가 코드 실행에 사용되는 서버를 프로비저닝하고 관리합니다. 이 실습에서는 AWS Lambda를 이벤트 중심 컴퓨팅 서비스로 사용합니다. AWS Lambda는 SNS 주제 및 Amazon S3 버킷의 데이터 변경에 대한 응답으로 코드를 실행합니다.

AWS Lambda를 사용하는 방법은 다음 두 가지입니다.

  • 이벤트 중심 컴퓨팅 서비스입니다. 이 실습에서 볼 수 있듯이 AWS Lambda는 이미지 파일 업로드와 같은 이벤트에 응답하여 코드를 실행합니다.


  • Amazon API Gateway 또는 API 호출을 사용하여 HTTP 요청에 대한 응답으로 코드를 실행하는 컴퓨팅 서비스로 사용합니다.


Lambda는 고객에게 Amazon의 규모의 경제에 따른 비용 혜택을 제공합니다. AWS Lambda는 필요할 때만 코드를 실행하고 하루 몇 건의 요청에서 초당 수천 건까지 자동으로 크기 조정됩니다. 이러한 기능과 함께 Lambda를 사용하면 쉽게 Amazon S3 및 Amazon DynamoDB와 같은 AWS 서비스에 대한 호출을 구축하거나, Amazon Kinesis에 저장된 스트리밍 데이터를 처리하거나, AWS의 규모, 성능, 보안에 따라 작동하는 자체 백엔드를 생성할 수 있습니다.

AWS Lambda 블루프린트

블루프린트는 이벤트 소스와 최소한의 처리를 수행하는 Lambda 함수의 샘플 구성입니다. 대부분의 블루프린트는 Amazon S3 또는 DynamoDB와 같은 특정 이벤트 소스의 이벤트를 처리합니다. 예를 들어 s3-get-object 블루프린트를 선택하면 Amazon S3가 게시하고 Lambda가 파라미터로 수신하는 object-created 이벤트를 처리하는 샘플 코드가 제공됩니다.

새 AWS Lambda 함수를 생성할 때 시나리오에 가장 적합한 블루프린트를 사용할 수 있습니다. 그런 다음 필요에 따라 블루프린트를 사용자 지정할 수 있습니다. 블루프린트를 사용하지 않아도 됩니다(Lambda 함수를 작성하고 이벤트 소스를 별도로 구성할 수 있습니다).

Amazon CloudWatch

CloudWatch Events는 AWS 리소스의 변경 사항을 설명하는 시스템 이벤트의 스트림을 거의 실시간으로 제공합니다. 몇 분 만에 설정할 수 있는 간단한 규칙을 사용하여 각 유형의 이벤트를 AWS Lambda 함수를 포함한 하나 이상의 대상으로 라우팅하여 오버헤드를 줄이고 효율성을 높일 수 있습니다. CloudWatch Events를 AWS 환경의 중추신경계로 생각할 수 있습니다. 지원되는 각 서비스와 연결되어 있고, 운영 변경 사항을 인식하게 됩니다. 이후 규칙에 따라 함수를 활성화하고 메시지를 보내 환경에 대응합니다.

Amazon Simple Notification Service(SNS)

Amazon SNS는 맞춤형 메시징 솔루션을 복잡하게 개발할 필요가 없으며, 사내에서 관리 및 유지해야 하는 값비싼 시스템용 라이선스 소프트웨어가 필요하지 않는 등 상당한 이점을 지닌 알림 서비스입니다. 성능이 입증된 Amazon의 네트워크 인프라와 데이터 센터에서 실행되므로 애플리케이션에서 필요하면 언제든지 주제를 사용할 수 있습니다. 메시지가 유실되지 않도록 Amazon SNS에 게시된 모든 메시지는 여러 서버와 데이터 센터에 걸쳐 중복 저장됩니다. Amazon SNS를 이용하면 서로 다른 디바이스의 애플리케이션 및 최종 사용자가 모바일 푸시 알림, HTTP/HTTPS, 이메일/이메일-JSON, SMS 또는 Amazon SQS 대기열, AWS Lambda 함수 등을 통해 알림을 수신할 수 있습니다.

Reviews

Start your review of Serverless Architectures using Amazon CloudWatch Events and Scheduled Events with AWS Lambda (Korean)

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.