Comment obtenir la liste des seules instances en cours d'exécution lors de l'utilisation de ec2-describe-tags
. J'utilise ma commande comme ceci:
ec2-describe-tags --filter "resource-type=instance" --filter "value=somevalue" --filter "key=key"
Il est facile d'utiliser aws-cli :
aws ec2 describe-instances --query 'Reservations[*].Instances[*].[InstanceId]' --filters Name=instance-state-name,Values=running --output text
En développant la réponse de John Rotenstein, vous pouvez certainement le faire avec des instances de description.
Cela répertoriera la balise de nom et l'adresse IP de toutes les instances en cours d'exécution dont la balise de nom contient un mot spécifique:
name_tag=mongodb
aws ec2 describe-instances --filter "Name=tag-key,Values=Name" "Name=tag-value,Values=*$name_tag*" "Name=instance-state-name,Values=running" --query "Reservations[*].Instances[*][Tags[?Key=='Name'].Value[],NetworkInterfaces[0].PrivateIpAddresses[0].PrivateIpAddress]" --output text
Production:
10.100.2.10
mongodb0
10.100.2.11
mongodb1
10.100.2.12
mongodb2
Un bonus ici est que laisser les listes nom_tag vides tous les instances en cours d'exécution.