Vous avez raison - il n'y a pas d'événement de notification qui signifie la fin d'un instantané EBS. Au lieu de cela, vous devrez vérifier l'état jusqu'à ce que le statut passe à completed
.
Vous avez également raison de dire que les fonctions AWS Lambda peuvent s'exécuter pour maximum 5 minutes et qu'une fonction Lambda en attente d'un processus externe n'est pas une bonne architecture.
Au lieu de cela, vous pourriez rupture de l'architecture:
- Demandez à votre processus existant déclenche l'EBS Photo (s) et puis poussez un message dans une file d'attente SQS
- Calendrier d'un Lambda fonctionne (par exemple toutes les 5 minutes) pour vérifier la file d'attente SQS. Si un message existe:
- Extrayez des détails sur l'instance et instantané (s) du message
- Vérifiez l'état de l'instantané (s)
- Si l'état est
completed
, effectuez l'étape suivante dans le processus
le bas-côté est que la fonction Lambda programmée déclenchera même quand il n'y a pas de messages dans la file d'attente. La fonction Lambda va quitter très rapidement (coût: 100ms).
L'alternative est de exécuter un cron
script sur une instance Amazon EC2 (ou sur n'importe quel ordinateur connecté à Internet). Une instance t2.nano
est d'environ 15.6c par jour, ce qui peut être plus cher qu'une fonction Lambda planifiée. Si vous avez déjà utilisé une instance, il n'y aurait pas de coût supplémentaire.
merci, je vais essayer l'approche SQS! – user1801879