AWS 람다 구현 개요

람다 함수를 사용하여 AWS 에이전트의 구현 로직을 이해합니다.

샘플 구현에서는 다음 AWS 서비스를 활용하여 다음과 같은 작업을 수행할 수 있습니다:

  • AWS CloudWatch - API 메트릭을 검색합니다.
  • AWS CloudTrail - API 활동을 검색합니다.
  • AWS EventBridge 스케줄러 - 예약된 작업을 대규모로 생성, 실행 및 관리합니다. EventBridge 스케줄러를 사용하면 기본 인프라를 프로비저닝하거나 관리하지 않고도 일회성 또는 반복적으로 수천만 개의 작업을 예약할 수 있습니다.

구성할 아티팩트 AWS 람다 함수와 그 기능

상담원의 각 사용 사례에 대해 구성해야 하는 기능을 이해해 보겠습니다. AWS 에이전트의 사용 사례 및 핵심 구현 로직에 대한 자세한 내용은 핵심 구현 로직을 참조하세요.

  • Amazon API Gateway 의 상태(하트비트)를 검색하여 페더레이션 API 관리 로 전송합니다.

    이 기능을 수행하려면 send-heartbeat.jar 을 사용하여 람다 함수를 만듭니다.

  • Amazon API Gateway와 페더레이션 API 관리 API Gateway 자산 동기화.

    이 기능을 수행하려면 send-asset.jar 을 사용하여 람다 함수를 만듭니다.

    이 람다 함수는 연합 API 관리를 통해 에셋의 게시 및 동기화를 처리합니다.

    1. 람다 함수는 APICP_PUBLISH_ASSETS 환경 변수가 true로 설정된 경우 초기 호출 중에 모든 Amazon API Gateway 의 자산(API)을 페더레이션된 API 관리에 게시합니다.
    2. 이후 호출에서는 이 람다 함수를 생성할 때 설정한 동기화 값에 따라 자산이 주기적으로 동기화됩니다. 각 동기화 간격 내에서 새로 생성, 업데이트 또는 삭제된 자산만 페더레이션 API 관리와 동기화됩니다.
  • Amazon API Gateway 에서 메트릭을 검색하여 페더레이션 API 관리로 전송합니다.

    이 기능을 수행하려면 send-metrics.jar 을 사용하여 람다 함수를 만듭니다.

참고: 세 개의 해당 람다 함수 모두 연합 API 관리에서 Amazon API Gateway 등록을 처리합니다.

등록 기능은 런타임(Amazon API Gateway )이 페더레이션 API 관리에 처음 연결될 때 한 번만 발생합니다. Lambda 함수는 런타임이 페더레이션 API 관리 에 존재하지 않는 경우에만 페더레이션 API 관리 에 런타임을 등록합니다. 이후 등록 시 연합 API 관리는 연합 API 관리에 이미 런타임이 존재하고 기존 런타임이 사용되는 에이전트(람다 함수)를 표시합니다. 예를 들어, 세 개의 람다 함수(하트비트, 자산, 메트릭)가 각각 처음 호출할 때 모두 동일한 런타임 ID와 런타임 이름을 사용하는 경우, 처음 실행된 람다 함수만 페더레이션 API 관리에서 런타임을 생성합니다. 나머지 두 개의 람다 함수는 첫 번째 람다 함수에서 생성한 것과 동일한 런타임을 사용합니다.