AWS
AWS Lambda
새싹싹이
2024. 4. 4. 09:31
진행할 람다 함수는 인스턴스 ID를 출력
람다 함수 작성을 위하여 하기와 같이 IAM 역할 생성
정책은 아래와 같이 연결
람다 코드를 실행하기 위하여 하기와 같이 인스턴스 태그 추가
람다 함수 생성
<참고>
생성 후, 역할 및 시간 변경은 함수 하단부에 구성>권한에서 변경 가능
트리거 생성
트리거 구성
cron 설정
하단 테스트 부분 입력
region 부분 실행할 region 코드로 설정
import boto3
region = "ap-northeast-2"
ec2 = boto3.client("ec2", region_name=region)
response = ec2.describe_tags(
Filters = [
{
"Name" : "tag:auto-start",
"Values" : ["true"]
}
]
)
instance_ids = [x["ResourceId"] for x in response["Tags"] if x["ResourceType"] == "instance"]
def lambda_handler(event, context):
print(instance_ids)
result = ec2.start_instances(InstanceIds=instance_ids)
print(result)
print('stared your instances: ' + ", ".join(instance_ids))
print("stared your instances success")
코드 입력 후, Deploy 클릭하면 Deploy가 되면서 Deploy 버튼이 비활성화
그 후, Test 를 입력한다.
하기와 같이 인스턴스 아이디가 출력되는 것을 볼 수 있다.