-
[ AWS ] Lambda와 CloudWatch를 이용한 EC2 Start, StopAWS Infra 2021. 10. 31. 09:49
1. IAM 정책생성을 생성 (Sample : EC2_Control)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:*" }, { "Effect": "Allow", "Action": [ "ec2:Start*", "ec2:Stop*" ], "Resource": "*" } ] }
2. IAM 역할생성 (Sample : EC2_Start_Lambda)
1. Lambda 함수생성
2. 소스코드 생성
* region : 현재 사용하는 리전명
* instances = 시작할 인스턴스(리스트)# Start Code import boto3 region = ' ' instances = [' '] ec2 = boto3.client('ec2', region_name=region) def lambda_handler(event, context): ec2.start_instances(InstanceIds=instances) print('started your instances: ' + str(instances)) # Stop Code import boto3 region = ' ' instances = [''] ec2 = boto3.client('ec2', region_name=region) def lambda_handler(event, context): ec2.stop_instances(InstanceIds=instances) print('stopped your instances: ' + str(instances))
코드가 정상실행되고, 중지되어 있는 인스턴스가 시작되었으면, 정상
1. 규칙생성
* GMT 기준이면 한국시간을 고려하여 +9시간을 반영해서 계산
* AWS Crontab Guide
https://docs.aws.amazon.com/ko_kr/lambda/latest/dg/services-cloudwatchevents-expressions.html
'AWS Infra' 카테고리의 다른 글
[ AWS ] S3 Bucket policy (0) 2021.12.03 [ AWS ] IAM Policy 특정IP에서 접근시에만 권한 허용 (0) 2021.11.30 [ Python ] paramiko를 이용한 pem-key SSH 접속 (자동화 작업) (0) 2021.11.30 [ AWS ] S3 용량과 객체수 모니터링 (s3api와 python) (0) 2021.11.21 AWS Linux UTC 시간 한국시간으로 변경 (0) 2021.11.13 [ AWS CLI ] S3 명령어 (0) 2021.11.04 [ AWS ] IAM Policy 특정 S3만 읽기 / 쓰기 권한 부여 (0) 2021.11.04 [ AWS ] Linux AWS S3 설치 (0) 2021.11.01