본문 바로가기

AWS

AWS RebootInstances API 사용 가이드

aws에서 amazon eventBridge 사용하여 instance reboot 권고

 

[ Architecture ]

[ 구성 방법 ]

 

  1. IAM 정책 추가
  2. lambda IAM 연결
  3. 함수 정의 및 테스트
  4. CloudWatch 로그확인
  5. AWS Eventbridge 설정
  6. Cloud trail 로그확인
  7. 실제 서버 확인 

1. IAM 정책 추가

 

iam 정책 생성

{
    "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*",
                "ec2:Reboot*"
            ],
            "Resource": "*"
        }
    ]
}

 

 

2. lambda IAM 연결

함수 생성

 

 

함수 생성하면 새로운 역할 생성됨

새 역할에 1번에서 만든 정책 부여

 

 

 

3. 함수 정의 및 테스트

 

import boto3
region = 'ap-northeast-2'   #리전
instances = ['i-0001a3d42905018cd'] #인스턴스id 
ec2 = boto3.client('ec2', region_name=region)

def lambda_handler(event, context):
    ec2.reboot_instances(InstanceIds=instances)
    print('reboot your instances: ' + str(instances))
    
    
    
    
위에 2개만 수정하고 Deploy

 

 

테스트 탭에서 새 이벤트 생성 → 이벤트 이름 reboot_test 설정후 → 테스트

 

4. CloudWatch 로그확인

에러 발생하면 로그 확인

 

 

5. AWS Eventbridge 설정

 

6. Cloud trail 로그확인

Lambda 함수가 인스턴스를 중지하거나 시작했는지 확인하기 위해. AWS CloudTrail을 사용하여 이벤트를 확인 및 클라우드 브릿지 스케줄 확인

 

 

 

7. 실제 서버 확인

 

'AWS' 카테고리의 다른 글

aws 네트워크 설계  (0) 2024.10.28