본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
Amazon EventBridge; EventBridge
AWS 서비스, 자체 애플리케이션, SaaS에서 발생한 이벤트를 받아 규칙에 따라 필터링·변환해 대상으로 전달하는 서버리스 이벤트 라우팅 서비스

EventBridge는 이벤트 기반 아키텍처에서 이벤트 라우터 역할을 맡는다. 생산자는 이벤트를 이벤트 버스에 넣기만 하고, 어떤 소비자가 받을지는 버스의 규칙이 정한다. EC2 상태 변경, S3 객체 생성, CodePipeline 실패 같은 AWS 서비스 이벤트가 기본 이벤트 버스로 자동 들어오므로, 이 이벤트에 반응하는 자동화를 코드 없이 꾸밀 수 있다. 이벤트 버스 외에 일대일 연결을 위한 Pipes, 일정 실행을 위한 EventBridge Scheduler를 함께 제공한다.

이벤트 버스가 이벤트를 규칙과 비교해 일치하는 이벤트를 대상으로 보낸다
항목 설명
이벤트 상태 변화를 나타내는 JSON 문서. source, detail-type, detail 등의 필드를 가진다.
이벤트 버스 이벤트를 받아 규칙과 비교하는 라우터
규칙 이벤트 패턴(또는 일정)과 대상 목록. 이벤트가 패턴과 맞으면 대상으로 보낸다.
이벤트 패턴 이벤트 필드 값을 비교하는 JSON 필터. 접두사, 숫자 범위, 존재 여부 같은 조건을 쓸 수 있다.
대상 이벤트를 받는 리소스. Lambda, SQS, SNS, Step Functions, Kinesis, ECS 태스크, 다른 이벤트 버스, API 대상(외부 HTTPS) 등. 규칙 하나에 대상은 최대 5개
입력 변환기 대상에 보내기 전에 이벤트에서 필요한 값만 뽑아 형식을 바꾼다.

이벤트 버스 종류

편집 원본 편집
종류 설명
기본 이벤트 버스 계정마다 하나 있으며 AWS 서비스 이벤트를 자동으로 받는다.
사용자 지정 이벤트 버스 자체 애플리케이션 이벤트용으로 만든다. 다른 계정에서 이벤트를 보내도록 리소스 정책을 줄 수 있다.
파트너 이벤트 버스 SaaS 파트너가 만든 파트너 이벤트 소스를 받아들여 연결한다. 외부 SaaS 이벤트를 웹훅 서버 없이 수신한다.

2026년 현재 EventBridge 설명서는 규칙과 대상을 쓰는 버스를 Custom Event Bus - Classic이라 부르고, 새로 Custom Event Bus를 내놓았다. 새 버스는 소비자가 직접 구독자(subscriber)를 만들어 필터와 대상 하나를 지정하고, 버스가 이벤트를 1~365일 보관하므로 이벤트 그룹 안 순서 전달, 과거 시점부터 다시 읽기, 일시 중지 후 재개가 가능하다. 시험 문제는 대부분 규칙·대상 방식을 전제로 한다.

아카이브와 재생

편집 원본 편집

이벤트 버스에 아카이브를 만들면 패턴에 맞는 이벤트를 지정한 기간(기본은 무기한) 동안 저장한다. 나중에 재생(replay)으로 원래 버스에 다시 보낼 수 있다. 소비자 버그를 고친 뒤 놓친 이벤트를 다시 처리하거나, 새 기능을 실제 이벤트로 검증할 때 쓴다.

전달 실패 처리

편집 원본 편집

대상 전달이 일시적 오류로 실패하면 재시도 정책에 따라 다시 보낸다. 기본값은 24시간 동안 재시도이며, 시간과 횟수를 줄일 수 있다. 권한 오류처럼 재시도해도 안 되는 오류나 재시도를 다 쓴 이벤트는 대상별로 지정한 SQS 배달 못한 편지 대기열(DLQ)에 남길 수 있다.

EventBridge Pipes

편집 원본 편집

Pipes는 소스 하나와 대상 하나를 잇는 점대점 통합이다. SQS, Kinesis, DynamoDB Streams, 아마존 MSK·Apache Kafka, 아마존 MQ 같은 소스에서 읽어 필터링하고, Lambda·Step Functions·API Gateway·API 대상으로 데이터를 보강(enrichment)한 뒤 대상에 보낸다. 폴링, 배치, 재시도를 위해 Lambda 접착 코드를 쓰던 자리를 대신한다. Pipes의 대상으로 이벤트 버스를 지정하면 일대일 수집과 다대다 라우팅을 조합할 수 있다.

EventBridge Scheduler

편집 원본 편집

EventBridge Scheduler는 일정에 따라 작업을 실행하는 서버리스 스케줄러이다.

  • cron·rate 식으로 반복 일정을 만들거나, 특정 시각에 한 번만 실행하는 일정을 만든다. 시간대를 지정할 수 있다.
  • 범용 대상 파라미터로 270개가 넘는 AWS 서비스의 6,000개 이상 API 작업을 직접 호출할 수 있다.
  • 유연한 시간 창으로 실행 시각을 분산할 수 있고, 재시도 횟수와 실패 이벤트 보관 시간, DLQ를 설정한다.
  • 수백만 개 단위 일정을 관리할 수 있어, 사용자별 알림처럼 일정이 많은 경우에도 맞다.
  • 이벤트 버스의 예약 규칙(scheduled rule)도 여전히 쓸 수 있지만, AWS는 일정 실행에 Scheduler 사용을 권장한다.

아마존 CloudWatch Events

편집 원본 편집

아마존 CloudWatch Events는 EventBridge의 이전 서비스이다. EventBridge는 CloudWatch Events의 규칙·대상 기능을 그대로 이어받고 같은 API를 쓰며, 사용자 지정·파트너 이벤트 버스, 스키마 레지스트리, 아카이브·재생, Pipes, Scheduler 등을 더했다. 옛 CloudWatch Events 설명서 주소는 지금 EventBridge 설명서로 연결된다. 오래된 시험 자료에서 "CloudWatch Events 규칙"이라고 하면 EventBridge 규칙으로 읽으면 된다.

구분 아마존 EventBridge 아마존 SNS
라우팅 기준 이벤트 내용 전체에 대한 이벤트 패턴(규칙) 토픽 단위 전달, 구독별 필터 정책(속성 또는 본문)
대상 수 규칙당 최대 5개(규칙을 여러 개 만들어 확장) 토픽당 매우 많은 구독자
이벤트 소스 AWS 서비스 이벤트 자동 수신, SaaS 파트너 통합 발행자가 직접 발행
대상 종류 AWS 서비스 API 다수, 다른 계정·리전 버스, 외부 HTTPS(API 대상) SQS, Lambda, HTTP/S, Firehose, 이메일, SMS, 모바일 푸시
보관·재생 아카이브와 재생 FIFO 토픽만 아카이브와 재생
스키마 스키마 레지스트리와 코드 바인딩 없음
적합한 경우 AWS·SaaS 이벤트에 반응, 여러 서비스 간 이벤트 라우팅 대량 팬아웃, 사람 대상 알림
  • "EC2 상태가 바뀌면", "GuardDuty 결과가 나오면", "특정 API 호출이 있으면" 자동 대응하라는 문제는 EventBridge 규칙 + 대상(Lambda, SNS, Step Functions)이다.
  • "Salesforce·Zendesk 같은 SaaS 이벤트를 받아 처리"는 파트너 이벤트 버스이다.
  • "매일 밤 정해진 시각에 함수 실행", "특정 시각에 한 번 실행"은 EventBridge Scheduler이다.
  • 놓친 이벤트를 다시 처리해야 하면 아카이브와 재생을 고른다.
  • 이벤트 내용으로 복잡하게 필터링해 여러 서비스로 라우팅하면 EventBridge, 같은 메시지를 아주 많은 구독자나 사람에게 뿌리면 SNS이다.
  • 다른 계정의 이벤트를 모으려면 중앙 계정 이벤트 버스에 리소스 정책을 주고 각 계정 규칙의 대상으로 그 버스를 지정한다.