Je sais que la commande ec2-create-image instance-id
va créer une image de l'instance ec2, créer un fichier d'instantanés et s'enregistrer en tant qu'AMI. Mais quelle est la commande équivalente pour supprimer l’image qui supprime les fichiers de capture instantanée associés et supprime l’AMI?
amazon-ec2
amazon-web-services
James W.
la source
la source
Réponses:
Réponse mise à jour à partir des documents aws:
J'espère que cela aidera quelqu'un comme moi! :RÉ
la source
Il y a généralement 4 étapes à ce que vous recherchez:
Mettez fin aux instances à l'aide de l'AMI (recommandation recommandée, en particulier pour les AMI sauvegardées S3)[Non requis avant de supprimer un AMI de tout type]ec2-deregister
ec2-delete-bundle
(pour S3) ouec2-delete-snapshot
(pour EBS).Supprimez les volumes EBS (sauf s’ils sont configurés pour être supprimés à la fin, auquel cas ils seraient supprimés à l’étape 1). Ce n'est pas nécessaire pour les instances S3.[Encore une fois, il n'est pas nécessaire de mettre fin aux instances ou de supprimer des volumes si vous souhaitez simplement supprimer une image AMI.]Gardez à l'esprit que les instantanés et les images sont indépendants. Vous pouvez créer un volume EBS à partir d’un instantané et l’utiliser en tant que lecteur secondaire au lieu d’un lecteur de démarrage. En outre (dans le cas d'instances Linux), il est possible de créer une nouvelle image à partir d'un instantané existant - ce qui donne à penser que tous ceux qui souhaitent supprimer une image ne souhaitent pas également supprimer le ou les instantanés associés. (Bien que vous puissiez enregistrer un instantané pour créer une AMI Windows, l'AMI n'est pas lancable.)
Il convient de noter qu'AWS ne vous laissera pas supprimer un instantané associé à une AMI avant de vous désenregistrer de l'AMI.
En vous concentrant sur les étapes 2 et 3 ci-dessus, vous devez d'abord rechercher le ou les ID d'instantané associés à une AMI. Cela devrait être répertorié comme faisant partie des mappages de périphériques de bloc. Généralement, le volume EBS racine a le point de montage / dev / sda1. Vous pouvez annuler l'enregistrement de l'AMI à partir de la ligne de commande (ou utiliser la console AWS), puis supprimer l'instantané (à nouveau, à partir de la ligne de commande ou de la console AWS).
Si vous avez besoin d'effectuer cette tâche plus souvent, vous voudrez scripter le processus. Certaines bibliothèques telles que Python Boto incluent une fonction permettant de faire exactement cela:
Par exemple, un exemple de script (complètement non testé et simplement bricolé - à vos risques et périls!) Basé sur ce qui précède pourrait ressembler à ceci:
la source
L' awscli peut également le faire.
D'abord, obtenez l'id shapshot en utilisant
describe-images
:Puis annulez l'enregistrement de l'image et supprimez l'instantané:
la source