0
CloudWatch를 사용하여 자동 생성 EBS 스냅 샷이 예약되었습니다.
이전 스냅 샷 자동 삭제를 예약하는 방법은 무엇입니까?AWS : 일주일 후에 EBS 스냅 샷을 삭제하는 일정을 잡는 방법은 무엇입니까?
CloudWatch를 사용하여 자동 생성 EBS 스냅 샷이 예약되었습니다.
이전 스냅 샷 자동 삭제를 예약하는 방법은 무엇입니까?AWS : 일주일 후에 EBS 스냅 샷을 삭제하는 일정을 잡는 방법은 무엇입니까?
도움이 될 수 있습니다. 그것은 모든 볼륨의 스냅 샷을 가져 와서 마지막 두 개의 스냅 샷을 유지하는 필자가 작성한 Python 프로그램입니다.
EC2 인스턴스에서 이와 같은 프로그램을 실행하거나 예약 된 AWS 람다 함수로 실행하도록 변환 할 수 있습니다.
#!/usr/bin/env python
import boto.ec2, os
MAX_SNAPSHOTS = 2 # Number of snapshots to keep
# Connect to EC2 in this region
connection = boto.ec2.connect_to_region('<insert region here>')
# Get a list of all volumes
volumes = connection.get_all_volumes()
# Create a snapshot of each volume
for v in volumes:
connection.create_snapshot(v.id)
# Too many snapshots?
snapshots = v.snapshots()
if len(snapshots) > MAX_SNAPSHOTS:
# Delete oldest snapshots, but keep MAX_SNAPSHOTS available
snap_sorted = sorted([(s.id, s.start_time) for s in snapshots], key=lambda k: k[1])
for s in snap_sorted[:-MAX_SNAPSHOTS]:
print "Deleting snapshot", s[0]
connection.delete_snapshot(s[0])