Je souhaite utiliser l’interface de la ligne de commande AWS (CLI) pour répertorier tous mes instantanés Amazon Elastic Block Store (Amazon EBS). Quelles sont les meilleures pratiques à utiliser lorsque je souhaite répertorier tous les instantanés, avec ou sans clé de balise spécifiée ?
Solution
Remarque : avant d’utiliser cette solution, installez et configurez l'interface de ligne de commande AWS (CLI).
Si vous recevez des erreurs lors de l'exécution des commandes AWS CLI, assurez-vous que vous utilisez la version la plus récente d'AWS CLI.
Répertorier tous les instantanés EBS dans une région donnée
L'exemple de commande suivant répertorie tous les instantanés EBS à l’aide de l'opération describe-snapshots (décrire-instantanés) dans la région USA-Est-1 :
aws ec2 describe-snapshots --owner-ids self --query 'Snapshots[]' --region=us-east-1
Voici un exemple de sortie pour la commande describe-snapshots :
Created for policy: policy-08843cf0d7f6189ae schedule: Default Schedule False 111122223333 100% snap-091e33a177cb2e49b 2020-09-10T19:27:07.882Z completed vol-03b223394ea08e690 8
TAGS instance-id i-0919c4d810b9c3695
TAGS dlm:managed true
TAGS timestamp 2020-09-10T19:27:07.548Z
TAGS aws:dlm:lifecycle-policy-id policy-08843cf0d7f6189ae
TAGS aws:dlm:lifecycle-schedule-name Default Schedule
test one hellop False 111122223333 100% snap-02faf8ffc48e512f4 2020-09-10T19:17:34.974Z completed vol-03b223394ea08e690 8
TAGS ec2-console false
Created for policy: policy-08843cf0d7f6189ae schedule: Default Schedule False 111122223333 100% snap-007e74c24d8f3aaf1 2020-09-10T17:28:31.993Z completed vol-03b223394ea08e690 8
TAGS instance-id i-0919c4d810b9c3695
TAGS dlm:managed true
TAGS aws:dlm:lifecycle-schedule-name Default Schedule
TAGS timestamp 2020-09-10T17:28:31.650Z
TAGS aws:dlm:lifecycle-policy-id policy-08843cf0d7f6189ae
test one False 111122223333 100% snap-00f20d2d2c17bbea0 2020-09-08T07:47:47.660Z completed vol-062b2c633c981f99e 8
TAGS ec2-console true
Filtrage de la liste des instantanés EBS pour une clé de balise spécifiée
La commande suivante répertorie les instantanés EBS à l'aide de l'opération describe-snapshots avec une clé de balise spécifiée :
aws ec2 describe-snapshots --owner-ids self --query 'Snapshots[?(Tags[?Key == `name`].Value)]'
La commande suivante répertorie tous les instantanés avec la clé de balise ec2-console :
$ aws ec2 describe-snapshots --owner-ids self --query 'Snapshots[?(Tags[?Key == `ec2-console`].Value)]'
Voici un exemple de sortie pour la commande précédente :
test one hellop False 111122223333 100% snap-02faf8ffc48e512f4 2020-09-10T19:17:34.974Z completed vol-03b223394ea08e690 8
TAGS ec2-console false
test one False 111122223333 100% snap-00f20d2d2c17bbea0 2020-09-08T07:47:47.660Z completed vol-062b2c633c981f99e 8
TAGS ec2-console true
Filtrer la liste des instantanés EBS pour ceux qui n'ont pas de clé de balise spécifiée
La commande suivante répertorie les instantanés EBS qui n'ont pas de clé de balise spécifiée :
aws ec2 describe-snapshots --owner-ids self --query 'Snapshots[?!not_null(Tags[?Key == `name`].Value)]'
L'exemple de commande suivant filtre la liste des instantanés EBS pour tous ceux qui n'ont pas la clé de balise ec2-console :
$ aws ec2 describe-snapshots --owner-ids self --query 'Snapshots[?!not_null(Tags[?Key == `ec2-console`].Value)]'
Voici un exemple de sortie pour la commande précédente :
Created for policy: policy-08843cf0d7f6189ae schedule: Default Schedule False 111122223333 100% snap-091e33a177cb2e49b 2020-09-10T19:27:07.882Z completed vol-03b223394ea08e690 8
TAGS instance-id i-0919c4d810b9c3695
TAGS dlm:managed true
TAGS timestamp 2020-09-10T19:27:07.548Z
TAGS aws:dlm:lifecycle-policy-id policy-08843cf0d7f6189ae
TAGS aws:dlm:lifecycle-schedule-name Default Schedule
Created for policy: policy-08843cf0d7f6189ae schedule: Default Schedule False 111122223333 100% snap-007e74c24d8f3aaf1 2020-09-10T17:28:31.993Z completed vol-03b223394ea08e690 8
TAGS instance-id i-0919c4d810b9c3695
TAGS dlm:managed true
TAGS aws:dlm:lifecycle-schedule-name Default Schedule
TAGS timestamp 2020-09-10T17:28:31.650Z
TAGS aws:dlm:lifecycle-policy-id policy-08843cf0d7f6189ae
Informations connexes
Balisage des ressources AWS