Python 使用boto3复制AWS快照
我有一段源区域和目标区域的代码。我成功地对所有快照数据进行了响应,但我无法将响应过滤为“SnapshotId”并复制它Python 使用boto3复制AWS快照,python,amazon-web-services,boto3,snapshot,Python,Amazon Web Services,Boto3,Snapshot,我有一段源区域和目标区域的代码。我成功地对所有快照数据进行了响应,但我无法将响应过滤为“SnapshotId”并复制它 import boto3 REGIONS = ['eu-central-1', 'eu-west-3'] SOURCEREG = boto3.client('ec2', region_name='eu-central-1') DISTREG = boto3.client('ec2', region_name='eu-west-3') response = SOURCERE
import boto3
REGIONS = ['eu-central-1', 'eu-west-3']
SOURCEREG = boto3.client('ec2', region_name='eu-central-1')
DISTREG = boto3.client('ec2', region_name='eu-west-3')
response = SOURCEREG.describe_snapshots()
print(response)
在本例中,我收到一个json响应,看起来像{'OwnerId':'xxxxxxx','StartTime':datetime.xxxxxxx,'SnapshotId':'snap-xxxxxxxxx',等等…}
如何筛选此输出并复制快照?参考:和
参考:及
为了清楚地理解,您需要将快照从
eu-central-1
复制到eu-west-3
?是的,但我有点搞砸了..我给出了这段代码。我希望未来的快照与每个新快照类似,然后复制。请查看下面的解决方案。对于您的问题,我看足够了。为了清楚,您需要要将快照从eu-central-1
复制到eu-west-3
?是的,但我有点搞砸了..我给出了这段代码。我希望将来每个新快照都是这样的,然后再复制。查看下面的解决方案。我觉得这足以解决您的问题。
import boto3
conn = boto3.client('ec2', region_name='eu-central-1')
response = conn.describe_snapshots()
for snapshots in response['Snapshots']:
print('Copying Snapshot -> ' + snapshots['SnapshotId'])
copy_response = conn.copy_snapshot(
Description='Snapshot copied from' + snapshots['SnapshotId'],
DestinationRegion='eu-central-1',
SourceRegion='eu-west-3',
SourceSnapshotId=snapshots['SnapshotId'],
)