我希望能够在实例启动时查询GCE实例的外部IP地址。我打算用它来修复一些复制到多个类似实例的配置。有没有办法从实例本身自动发现实例的外部IP或其他属性?我看到你可以用gcloud工具查询一些东西,但为此你必须知道实例名称,并且不清楚从哪里获得它。
答案 0 :(得分:2)
请参阅GCE公共文档中的Querying metadata。例如,对于实例的外部IP:
curl http://metadata/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip/ -H "Metadata-Flavor: Google"
此命令将查询实例的私有元数据服务器。另一个选项是使用公共文档中Preparing an instance to use service accounts中所述的正确范围配置实例的服务帐户。这样,gcloud命令可以直接在实例中使用,无需身份验证即可从项目中获取信息。