AWS는 X일이 지난 EC2 인스턴스를 자동으로 삭제합니다.

AWS는 X일이 지난 EC2 인스턴스를 자동으로 삭제합니다.

ReviewApps로 EC2 인스턴스를 자동으로 생성합니다. 검토자는 ec2 인스턴스를 파기해야 하지만 항상 그런 것은 아닙니다.

따라서 이 특정 AWS 사용자의 EC2 인스턴스가 X일 후에 자동으로 삭제되도록 스크립트(Lambda, Terraform 등)를 작성하고 싶습니다. 알려진 실행이 있습니까?

답변1

이제 다음 코드로 작동합니다.

#!/usr/bin/env python3
import boto3
import datetime

from botocore.config import Config

print ("############### EC2 Cleanup Start ###############")

my_config = Config(
    region_name = 'eu-central-1',
)

ec2 = boto3.resource('ec2', config=my_config)

# Delete AWS instances older than 14 days
date_filter = (datetime.datetime.now() - datetime.timedelta(days=14)).strftime("%Y-%m-%d")

instances = ec2.instances.filter(Filters=[
  {'Name':'launch-time', 'Values':[date_filter+'*']},
  {'Name':'tag-value', 'Values':['review-app-*']}
  ])
for instance in instances:
  print(instance.id, instance.terminate())

print ("############### EC2 Cleanup Done ###############")

관련 정보