0. 먼얘기랴~!
이 글에는 Amazon EventBridge가 무엇인지 간단히 살펴보고, 기존에 만들어 놓은 Lambda를 특정시간 실행시켜 보겠습니다.
1. Amazon EventBridge가 머래유?
https://docs.aws.amazon.com/ko_kr/eventbridge/index.html
Amazon EventBridge는 다양한 소스의 데이터와 애플리케이션을 쉽게 연결할 수 있는 서버리스 이벤트 버스 서비스입니다. EventBridge 는 자체 애플리케이션, SaaS(Software-as-a-Service) 애플리케이션 및 AWS 서비스의 실시간 데이터 스트림을 제공한 다음, 해당 데이터를 AWS Lambda 등의 대상으로 라우팅합니다. 데이터를 전송할 대상을 결정하는 라우팅 규칙을 설정하여 모든 데이터 원본에 실시간으로 대응하는 애플리케이션 아키텍처를 구축할 수 있습니다. EventBridge를 사용하면 느슨하게 결합되고 분산된 이벤트 중심 아키텍처를 구축할 수 있습니다.
뭔 얘긴지 원... ㅎ.

제가 이벤트브릿지를 사용하는 경우는 특정시간에 반복적인 일을 수행해야하는 경우, 특히나 내가 잠잘 때 수행해야하는 백업이라던지, 메일링이라던지, 마감이라던지.. 이런 일들이 있을때 이것을 사용합니다.
윈도우에 스케쥴러나, linux의 cron같은 경우라고 생각하시면 되는데요.
문제는 이런 스케쥴러나 cron도 등록시켜서 사용하는 서버가 있어야한다는 거죠.
하지만, 우리는 aws eventbridge가 있으니, 이제 별도 스케쥴용 호출서버는 필요없습니다. 완전 좋죠. ㅎ
끝.
이제 거두 절미하고, 이제 만들어 보죠.

* 선행작업으로 지난시간에 배운 IAM에 해당 접속자의 Eventbridge 권한이 부여되어있어야 합니다. 하실수 있겠죠? *
2. Eventbridge 이동
aws evnetbridge 첫 화면입니다.
[EventBridge Rule]을 선택하고, [규칙생성]을 클릭합니다.
1. lambda_supertoday_event_daily라고 입력하고
2. 설명을 달아줍니다.
3. 우리는 매일 7시에 실행할 예정으로 일정을 선택해줍니다.
4. [다음] 이동
3. 일정등록
1. 특정 시간마다 실행하도록 선택합니다.
2. cron이라고 해서 스케쥴 입력 부분에 우측 cron.표현식을 참고하여 넣습니다.
5라고 넣은 부분은 UTC+9가 대한민국시간이므로 14시인 오후 2시에 실행시키겠다는 것입니다.
3. 현지시간대로 선택해서 실제 실행시간을 확인해봅니다.
4. 설정된 시간을 예시로 보여줍니다.
5. 다음 으로 이동합니다.
6. cron표현식을 추가로 살펴보도록 합니다.
주의 : Eventbridge의 최소 시간단위는 1분입니다. 초단위 실행은 지원하지 않는 것 꼭 참고하시기 바랍니다. 초단위로 실행하고 싶은경우, 꼼수들이 있기는 한데요. 보장하기는 좀 어렵습니다.
4. 실행 대상 선택
이제 어떤 것을 실행할지를 선택하는 부분입니다.
1. AWS 서비스를 선택합니다.
2. 우리는 기존에 만들어놓았던 크롤링 이메일 발송 Lambda를 실행할 것이므로 Lambda함수를 선택합니다.
2022.12.08 - [실전AWS-응용편/Lambda] - 개발한 application을 aws lambda에 aws cli로 배포해 보기
개발한 application을 aws lambda에 aws cli로 배포해 보기
0. 먼얘기랴~! 이 글에는 지난 시간에 만들어 본 크롤링정보를 이메일로 발송하는 소스를 aws cli를 통해서 lambda에 배포해보도록 하겠습니다. 1. Lambda 기본 정보 수정하기 지난 시간에 app.py를 통해
easyaws.tistory.com
3. myLambdaTest를 선택합니다.
4. [다음]으로 이동합니다. (다음 테그입력부분이 있습니다. 입력하시고 다음으로 넘어갑니다)
5. 규칙생성 완료
1. 마지막으로 설정한 정보를 확인하고 [규칙생성]을 클릭합니다.
1. 방금 등록한 EventBridge가 떠있고, Enabled된 것을 확인할 수 있습니다.

2시가 될때 까지 기다립니다. 물론 테스트니까 분단위로 cron을 설정해서 테스트해 볼 수도 있습니다.
이제 2시네요. 들어가 보겠습니다.
빨간색 점이 보이실까요?
뭔가 Invocations에 그리고 TriggeredRules에 점이 있네요. 실행이 되긴 됐나본데요.
그럼 메일이 왔는지 바로 확인해볼게요.
6. 결과 확인
1. 메일이 잘 왔고, 2시에 실행이 잘 됐습니다.
2. 메일 내용도 잘 들어왔네요.
축하합니다. 여기까지 오시느라 정말 수고 많으셨습니다..

아참. 위에 EventBridge에 들어가서 시간을 오전 7시로 바꾸어놓아야합니다. 그래야 아침 7시에 메일이 들어올거에요.
^^
7. Eventbridge는 비싼가?
https://aws.amazon.com/ko/eventbridge/pricing/?nc1=h_ls
Amazon EventBridge Pricing | Event Bus | Amazon Web Services
aws.amazon.com
음... 한국말 지원안한다... 쒸.
스케쥴러 형태의 이벤트브릿지는 거의 무료라고 생각하시면 될 것 같고요. 다른 이벤트 브릿지는 1백만 호출당 1$정도네요. 싸죠? ㅋ
여기까지 오시느라 정말 고생하셨습니다. 그럼 다음 프로젝트에서 만나요

아휴 이거 머 별거아녀~ 머 이까이꺼 머 대충 머.

주의!
내용상에 잘못된 정보도 있을 수 있습니다. 내가 아는대로 적는거라.
그리고, 심한 사투리와 반말이 무자비하게 섞여있으니, 임산부 및 노약자는 유의하시기 바랍니다. 알겄쥬?