[Очень плохо знакомы с AWS]
Привет,
Я пытаюсь переместить копии снимков томов EBS по регионам.Я пытался использовать Boto3 для перемещения снимков.Моя цель - ежедневно перемещать последний снимок из региона us-east-2
в регион us-east-1
.
Я использовал команду aws configure
в терминале, чтобы установить свои учетные данные безопасности и установить для региона значение us-east-2
.
Я использую pandas для получения самого последнего идентификатора снимка, используя этот код:
import boto3
import pandas as pd
from pandas.io.json.normalize import nested_to_record
import boto.ec2
client = boto3.client('ec2')
aws_api_response = client.describe_snapshots(OwnerIds=['self'])
flat = nested_to_record(aws_api_response)
df = pd.DataFrame.from_dict(flat)
df= df['Snapshots'].apply(pd.Series)
insert_snap = df.loc[df['StartTime'] == max(df['StartTime']),'SnapshotId']
insert_snap = insert_snap.reset_index(drop=True)
insert_snap
возвращает идентификатор снимка, например, snap-1234ABCD
Iя пытаюсь использовать этот код для перемещения снимка с us-east-2
на u s-east-1
:
client.copy_snapshot(SourceSnapshotId='%s' %insert_snap[0],
SourceRegion='us-east-2',
DestinationRegion='us-east-1',
Description='This is my copied snapshot.')
Снимок копируется в том же регионе с использованием вышеуказанной строки.
Я также пытался переключать регионы с помощью команды aws configure
в терминале, с той же проблемой, возникающей при копировании снимка в том же регионе.
В Boto3 есть ошибка, которая пропускает целевой параметр в коде copy_snapshot()
.Информация найдена здесь: https://github.com/boto/boto3/issues/886
Я пытался вставить этот код с помощью лямбда-менеджера, но постоянно получаю сообщение об ошибке "errorMessage": "Unable to import module 'lambda_function'"
:
region = 'us-east-2'
ec = boto3.client('ec2',region_name=region)
def lambda_handler(event, context):
response=ec.copy_snapshot(SourceSnapshotId='snap-xxx',
SourceRegion=region,
DestinationRegion='us-east-1',
Description='copied from Ohio')
print (response)
У меня нет вариантов, что я могусделать для автоматизации передачи снимков в aws?