AWS获取给定vpc中的所有私有IP地址

时间:2016-05-26 12:59:59

标签: amazon-web-services amazon-ec2 aws-cli

我想为正在运行的vpc中的所有ip地址运行一个ansible角色。 如何在给定的vpc中获取运行实例的所有ip地址

事情:我累了:

  

aws ec2 describe-instances --filters" Name = vpc-id,   值=" VPC - ******"" --query   "预订[]实例[] PrivateIpAddresses [*]&#34。; - 输出文字

这将返回null

2 个答案:

答案 0 :(得分:2)

参数的名称是 PrivateIpAddress 而不是PrivateIpAddresses,您可以从Json对象中看到

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

所以如果你将命令作为

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

您将获得预期的结果

答案 1 :(得分:0)

它是PrivateIPAddress,而不是地址

  IDs Name   col1   col2   col3
1 123  ABC    1.3      0      5
2 234  CDE      2    0.3      1
3 568  GHJ 123456 123456 123456
4 345  FGH      9     54      0

希望这有帮助