Как получить все снимки, связанные с экземпляром AWS EC2, используя BOTO3 Python? - PullRequest
0 голосов
/ 23 мая 2018

Я запутался в ситуации: я могу получить все моментальные снимки тома, связанного с экземпляром EC2 , но как только экземпляр EC2 будет удален, будет связан и связанный с ним том.Я терся головой о документации Boto3 и боролся.Ниже приведен мой рабочий пример для перечисления снимков, связанных с томом.

import boto3
ec2 = boto3.resource('ec2')
volume_id = "something"
list_of_snapshots = []
vol = ec2.Volume(id=volume_id)
snapshots = vol.snapshots.all()
    try:
        for snapshot in snapshots:
            if snapshot:
                list_of_snapshots.append(snapshot.id)
        return list_of_snapshots[0]
    except:
        return None

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Как предложил @John Rotenstein,

Возможное решение сейчас - добавить VolumeID внутри тегов при создании моментальных снимков, чтобы код выглядел примерно так:

import boto3
ec2 = boto3.client('ec2')
volume_id= "something"
list_of_snapshots = []
    snapshots = ec2.describe_snapshots(Filters=[{'Name':'tag:volume_id', 'Values': [volume_id]}])['Snapshots']
    try:
        for snapshot in snapshots:
            if snapshot:
                list_of_snapshots.append(snapshot['SnapshotId'])
        return list_of_snapshots
    except:
        return None
0 голосов
/ 24 мая 2018

Один из вариантов - пометить тома при их первоначальном создании.Теги останутся с томами даже при удалении экземпляра.

Amazon EC2 теперь может распространять теги на тома при запуске.

См .: Теги экземпляры EC2 и тома EBS при создании|Блог новостей AWS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...