首页 > 解决方案 > Jclouds 不返回 aws ec2 实例的所有私有 IP 地址

问题描述

我已经使用 apache jclouds 库来获取 ec2 实例详细信息。我在单个 ec2 实例上附加了 2 个网络接口,为它提供 2 个 IP。

在此处输入图像描述

但是从 jclouds 的以下代码中,我看到只有一个 IP(主接口 [eth0])被检索到。

ComputeService cs = computeContext.getComputeService();
for (ComputeMetadata cm : cs.listNodes()){
        NodeMetadata nm = (NodeMetadata) cm;
        System.out.println(nm);
    }

在输出中我只能看到一个 IP 地址:

私人地址=[172.26.119.234]

其他人是否面临同样的问题?如果有人对此有解决方案,我将非常感激知道。

标签: amazon-ec2jcloudsnetwork-interface

解决方案


jclouds 从Instance#privateIpAddress字段中读取私有 IP 地址,看起来 AWS 只填充了第一个 IP 地址。相反,jclouds 应该检索与实例关联的所有 NIC 并从那里获取私有地址。介意在jclouds JIRA中打开一个问题吗?


推荐阅读