1. Prerequisite
-
인스턴스 중지 와 시작의 사이클을 가지게 된다면 인스턴스의 공인 IP 주소가 변경됩니다.
-
따라서, Private 으로 통신하지 않는 리소스라면, 탄력적 IP 주소 할당을 고려해야 합니다.
-
기존의 인스턴스에 탄력적 IP를 할당 하게 된다면 새로운 EIP 주소로 바뀌게 되므로, 인스턴스와 통신하는 여러 리소스들의 구성을 편집해야합니다.
-
-
EventBridge 를 위한 IAM Role 생성이 필요합니다.
-
Trusted Policy
-
-
- Permissions Polices - 최소 권한을 유지해야 하지만 테스트를 위해 FullAccess 기준으로 적용하겠습니다.
-
AmazonEventBridgeSchedulerFullAccess - AWS Managed
-
AmazonEC2FullAccess - AWS Managed
-
- Permissions Polices - 최소 권한을 유지해야 하지만 테스트를 위해 FullAccess 기준으로 적용하겠습니다.
2. 시나리오
- 매달, 매주, 매일 11:10 AM (KST) 에 대상 인스턴스를 중지(Stopped) 시킵니다.
- 중지된 대상 인스턴스들은 매달, 매주, 매일 오후 13:00 PM (KST)에 다시 시작(Start) 시킵니다.
3. Scheduler 생성 - Stop
-
Create schedule
-
Schedule name : Instance-stop-schedule
-
Description : This Schedule will stop Instances 11:10 AM
-
-
Scheduled group : default
Schedule Pattern
-
일회성 스케줄이 아니기 때문에 Recurring schedule 선택
-
Scheduled Type
-
Cron-based schedule
-
-
Flexible time window : Off
-
Time Frame 은 선택하지 않겠습니다.
-
TimeFrame 은 스케줄러의 수명이라고 생각하시면 됩니다.
-
Target Detail
-
Target API : All APIs
-
StopInstances
-
-
StopInstances Input
Settings
-
Schedule state : Enable (활성화 옵션)
-
Action after schedule completion : NONE
-
스케줄러 동작 이후 스케줄러를 삭제할 것인지 계속 사용할 것인지 선택하는 옵션입니다.
-
-
Retry policy and dead-letter queue (DLQ) : Retry 옵션 삭제
-
만약, 스케줄러가 정상 동작하지 않았을 때 DLQ 에 큐를 보내 다시 스케줄러 동작을 유도하는 옵션입니다. 현재는 필요하지 않으므로 선택하지 않겠습니다.
-
-
Encryption : 암호화는 세팅하지 않겠습니다.
-
Permissions : Use existing role
-
이전에 생성했던 스케줄러 Role 을 선택해줍니다.
-
-
선택한 옵션들을 한번 더 검토 이후 스케줄을 생성해줍니다
3. Scheduler 정상 동작 확인 - Stop
-
EC2 인스턴스 탭으로 돌아가 Event Bridge Scheduler 가 정상 동작 하는지 확인합니다.
-
대상 인스턴스의 공인 IP 주소 :
52.79.237.1
, Start 이후 공인 IP 비교해 봅니다.
-
11:10 AM 에 정상적으로 인스턴스의 상태가 Stopped 되었습니다.
-
이제 Start 하는 스케줄러도 생성해줍니다.
4. Scheduler 생성 - Start
-
Stop Scheduler 와 설정은 비슷합니다.
-
다른점은 API 를 StartInstances 로 설정합니다.
-
Stop 과 동일하게 설정
5. Scheduler 정상 동작 확인 - Start
-
EC2 탭에서 확인해줍시다.
-
인스턴스가 시작(Initializing) 되고 있습니다.
-
- IP 주소가 변경되는 것을 참고하셔야 합니다.
※스마일샤크가 제공하는 모든 콘텐츠는 관련 법의 보호를 받습니다. 스마일샤크 콘텐츠를 사전허가 없이 무단으로 복사·배포·판매·전시·개작할 경우 민·형사상 책임이 따를 수 있습니다. 콘텐츠 사용과 관련해 궁금한 점이 있으면 전화(☎: 070-4369-2028) 또는 이메일(contact@smileshark.kr)로 문의하기 바랍니다
댓글
댓글 0개
댓글을 남기려면 로그인하세요.