Как получать уведомления о томах AWS с State = Available?

Как я могу получить уведомление по электронной почте, если в AWS есть 1 или несколько томов EBS с состоянием "Доступен"?

В AWS есть команда людей, которые управляют инстансами EC2. Иногда экземпляры удаляются, а избыточные тома остаются, что отображается как Состояние = Доступно (см. Здесь https://eu-west-1.console.aws.amazon.com/ec2/v2/home?region=eu-west-1).

Я хотел бы получить уведомление по электронной почте, когда это произойдет, чтобы я мог вручную просмотреть и удалить их при необходимости. Запланированная проверка и оповещение (электронная почта) один раз в день подойдут.

Я думаю, что это должно быть возможно через AWS Cloudwatch, но я не понимаю, как это сделать...

1 ответ

Вот что я использую в процессе AWS Lambda:

import boto3

ec2 = boto3.resource('ec2')
sns = boto3.client('sns')

def chk_vols(event, context):
    vol_array = ec2.volumes.all()
    vol_avail = []
    
    for v in vol_array:
        if v.state == 'available':
            vol_avail.append(v.id)
    
    if vol_avail:
        sns.publish(
            TopicArn='arn:aws:sns:<your region>:<your account>:<your topic>',
            Message=str(vol_avail),
            Subject='AWS Volumes Available'
        )
Другие вопросы по тегам