【发布时间】:2026-02-04 16:20:02
【问题描述】:
我正在尝试使用 boto3 创建 aws 快照。这个想法是创建快照,以便我们可以恢复损坏的实例卷。目前,它会比重新启动、重新操纵和重新配置更快。
我正在尝试使用 boto3 自动执行此操作,但脚本始终会关闭实例。这在我们的生产环境中是不行的。
当我在 AWS Web 控制台中手动创建快照时,它并没有关闭实例。
这是我为所有实例创建快照的非常基本的代码(过滤):
timestr = time.strftime("%Y%m%d-%H%M%S")
for instance in instances:
blockCount = 0
for blockDevice in instance.block_device_mappings:
newSnapName = thisName + "_" + snapshotTag + "_" + timestr + "_" + str(blockCount)
thisNewSnapshot = ec2.create_snapshot(VolumeId=blockDevice.get('Ebs').get('VolumeId'),Description="Created by create_track_snaps.py from Instance: " + instance.id)
blockCount += 1
它会关闭所有涉及的实例。
问题:
是否可以在实例运行时创建快照。我看到了对 AWS CLI 选项 --no-reboot 的引用,但我在 boto3 API 中看不到任何可以访问它的内容。
如果在创建快照期间实例正在运行,那么期待有意义的快照是否合理?我看到很多警告,应该总是关闭实例以创建干净的快照。同样,这在生产环境中似乎不合理。
感谢您的任何提示, 克里斯。
【问题讨论】:
标签: amazon-web-services amazon-ec2 boto3 snapshot