AWS DVA-C02 Question #2 (Multi-account Event Bridge)
AWS DVA-C02 Question #2 (Multi-account Event Bridge) — #개발자의도구들 #AWS시험 #AWSDVA-C02 #DVA-c02문제 #DVA-c02덤프 참고: ExamPotic Di...
#DVA-C02#Naver Blog
#개발자의도구들 #AWS시험 #AWSDVA-C02 #DVA-c02문제 #DVA-c02덤프
참고: ExamPotic Disscussion
문제 찾는법 : 여기 최하단
요구사항 분석
- 회사가 여러 계정 여러 EC 인스턴스들을 운영중
- 모든 EC2 인스턴스들의 lifecycle Event를 모아야한다.
- 돌아가는 App은 SQS로 데이터를 저장할 필요가 잇다.
- 해당 SQS는 회사의 main AWS account이다
📌 핵심 키워드
- 다중 instance
- SQS
- main Account
보기 분석
A
- 모든 계정의 EC2 인스턴스 라이프사이클 이벤트가 메인 계정의 EventBridge 이벤트 버스로 전달
- 메인 계정에서 EventBridge 규칙이 해당 이벤트(예: EC2 시작, 중지, 종료 등)를 필터링
- 규칙이 일치하는 이벤트를 대상(Target) 으로 지정된 SQS 큐에 전송
- SQS 큐에는 EventBridge 규칙을 통과한 이벤트만 도착
👉 EC2 서비스에서 직접 cross-account EventBrdige로 보내는 기능이 없다.
B
- 메인 계정의 SQS의 리소스 기반 정책 사용
- 각 계정에서 SQS로 write할 수 있는 권한 추가
- 각 계정에서 Event Bridge 연결 하여 Ec2 라이프 사이클 이벤트 매치 역할 추가
- 메인 계정 SQS에서 target rule추가
📌 해설: 각 계정의 EC2에서 Event Bridge로 라이프 사이클을 모은다
-> 메인 계정의 SQQS에 직접 데이터를 작성한다.
👉 SQS 정책에서 계정별 권한 관리가 필요하다. 계정이 많으면 복잡하여 오버헤드가 크다.
C
- AWS Labmda 함수 생성
- 모든 EC2 인스턴스를 스캔하여 이벤트 변화를 탐지
- 람다 함수 설정
- 메인 계정SQS에 노티 메세지를 보내도록 (EC2인스턴스의 변화가 감지되는 경우)
- Event Brdige 스케쥴 규칙 추가
- 매분 람다를 호출하도록
🤔 람다 사용으로 오버헤드가 너무 크다.
D.
- 정책 추가
- 메인 계정 이벤트 버스가 모든 계정에서 이벤트를 받도록
- Event Bridge 규칙 생성(각 계정)
- 각 계정에서 메인 이벤트 버스로 보내도록
- Event Bridge 규칙 추가(메인)
- 메인 계정 이벤트 버스가 모든 EC2 인스턴스 라이프 사이클 이벤트를 받도록
- SQS
- 규칙을 위한 target으로 설정
🤔
Ec2 -> Event Bridge(each) -> Event Bridge(main) -> SQS
각 계정 + 메인 계정 모두에 Event Bridge를 사용하는 방법
👉 SQS 정책 관리 필요없이 Event Bridge가 서로 연결되어 잇어서 매우 효율적이다.
요구 지식
- Amazon EventBrdige cross-account event routing
- Event Brdige 규칙과 타겟
- SQS 리소스 정책 vs Event Bus 리소스 정책 차이
- SQS 정책: 각 계정이 직접 메세지 큐로 전송
- EventBus 정책: 각 계정이 이벤트를 메인 EventBus로 보내고 메인에서 타겟으로 전달
개념 정리
출처 Udemy 강의
Multi Account의 경우 각 계정의 Event를 모아서 중앙 이벤트 버스에 전달 후, 이벤트 트리거를 통해 SNS에 전달
