2016-05-26 3 views
0

Je veux exécuter un rôle ansible, pour toute l'adresse IP dans le vpc qui sont en cours d'exécution. Comment obtenir toute l'adresse IP de l'instance en cours d'exécution dans vpc donnéAWS obtenir toutes les adresses IP privées dans vpc donné

choses: J'ai fatigué:

aws EC2 describe-instances de "Name = vpc-id, valeurs =" vpc - ****** "" --query "Réservations [] .Instances [] .PrivateIpAddresses [*]" texte --output

Ce retour est nul

Répondre

2

Le nom du paramètre est PrivateIpAddress pas PrivateIpAddresses comme vous pouvez le voir objet JSON

[ 
    [ 
     { 
      "Monitoring": { 
       "State": "disabled" 
      }, 
      "PublicDnsName": "xxxx", 
      "RootDeviceType": "ebs", 
      "State": { 
       "Code": 16, 
       "Name": "running" 
      }, 
      "EbsOptimized": false, 
      "LaunchTime": "xxx", 
      "PublicIpAddress": "xxx", 
      "PrivateIpAddress": "xxxxx", 
      "ProductCodes": [ 
      .... 

donc si vous exécutez votre commande en tant que

aws ec2 describe-instances --filters "Name=vpc-id, Values="vpc-cda7c6a8"" --query "Reservations[*].Instances[*].PrivateIpAddress" --output text 

vous aurez votre résultat attendu

0

C'est PrivateIPAddress, pas Adresses

aws ec2 describe-instances --instance-ids --query Reservations[].Instances[].PrivateIpAddress 

Espérons que cela aide